You sell retainers. You also do project work. Sometimes a client burns through their retainer and needs extra hours billed at a different rate. On a single invoice, you need to show a $5K retainer line, a $2,500 project overage, $600 in hourly add-ons, apply regional tax correctly, and reconcile all three against what the client actually owes. Most invoicing platforms split this across multiple tools or require manual math. We tested Orin, Zoho, and Wave to see which actually handles blended billing without turning your accountant into a spreadsheet custodian. The real problem: one platform, three billing models Service businesses rarely fit into a single billing box. A software retainer client might be billed $5,000 per month for support and feature requests, but in month two they need extra consulting on a fixed-price project ($2,500). By week 3, they've burned through their retainer and need emergency on-call hours at $150/hour. That's $600 for 4 hours. One invoice should show all three, calculate the right totals, apply GST or SST correctly, and feed into your accounting without manual intervention. In practice, most tools force you into a choice: design for retainers, and project billing becomes a workaround. Build around hourly timesheets, and retainer income disappears into a flat-fee hack. Use multiple invoicing platforms, and reconciliation becomes a monthly nightmare. The test case: One invoice for a Malaysia-based service firm, billing a Singapore client. $5,000 retainer (charged as-is), $2,500 fixed project (due to scope creep), 4 hours at $150/hour (emergency add-on), SST applied per Singapore rules, no proration (it's mid-cycle). Total: $8,200 + SST. The invoice must split costs clearly so the client understands what they're paying for and your accounting software can match it to the correct GL accounts. Orin: mixed billing within a unified workflow Orin's invoicing module lets you add line items with different rate types—fixed fee, hourly, retainer—on a single invoice. You set the rate type per line and the system applies the right logic. A retainer line doesn't need hours tracked; a project line can pull from fixed estimates; an hourly line pulls from timesheets if you've logged them, or you can manually enter hours. The strength here is integration. If you're using Orin's CRM , the deal record syncs to the invoice. If you've logged time in the system, hours feed automatically. If you've created a project with a budget, overages can be flagged before you invoice. Tax application is template-driven: you set your local tax rule once (GST for Australia, SST for Singapore, NPWP for Indonesia), and it applies consistently. Reconciliation is where this matters most. When the invoice lands in your accounting module, line items carry metadata about their type—retainer, project, hourly. Your GL coding is consistent, and your accountant doesn't need to reverse-engineer which $200 was a retainer and which was a project overage. Limitation: Orin works best if you're already in the system for CRM and time tracking. If you invoice once a month but track time in a separate tool, you're moving data manually. Proration logic (billing a retainer for only part of a month) is supported but requires manual entry—it doesn't auto-calculate if a contract starts mid-cycle. Zoho Invoice: strong at blended billing, weak at reconciliation Zoho Invoice handles retainers, projects, and hourly work natively. You can create an invoice with all three line types, and the UI makes it clear which is which. Retainers can be set to recur; projects can link to estimates; hourly work can pull from Zoho's time-tracking module. Tax handling is robust. Zoho supports SST, GST, and NPWP validation if you're using Zoho Books. The platform will flag if a tax rate is inconsistent with the client's jurisdiction and can apply item-level tax (some lines taxed, others not). The friction point is reconciliation. Zoho Invoice and Zoho Books are integrated, but the link is looser than it should be. When an invoice with mixed line types syncs to Zoho Books, the detail doesn't always carry cleanly. A $5K retainer might post to your revenue account, but the $600 hourly portion might land in a default account unless you've manually coded it. Your accountant ends up reviewing invoices in Zoho Invoice, then reclassifying in Zoho Books. At 20+ invoices a month, this adds up. Sweet spot: Zoho Invoice works well if you're invoicing 10–15 blended invoices per month and your GL is simple (3–5 revenue accounts). If you're over 30 invoices a month, the reconciliation tax will exceed the time you save. Wave: low cost, high manual overhead Wave is free, and it supports multiple line types on one invoice. You can add a retainer line, a project line, and an hourly line all at once. The invoice renders clearly and looks professional. The catch: Wave doesn't distinguish between line types at the accounting level. Everything is a line item. When the invoice syncs t