Invoicing bugs are rarely dramatic. They are a rounding difference nobody notices for a quarter, or a number that skipped and cannot be explained. Each feature below is written against that.
Per-line rates, discounts, inclusive or exclusive tax, and an explicit round-off so the printed total always equals the sum of its parts.
Most invoicing bugs are not dramatic. They are two paise per line, compounding quietly until a customer adds up the lines by hand and gets a different number from the total. Our tax engine rounds at defined points rather than accumulating raw floating point, and every document carries an explicit round-off line so subtotal plus tax plus round-off always equals the amount due.
CGST and SGST for a sale inside your state, IGST across a border — split automatically from the place of supply.
Enter one rate; the system decides the split. A sale inside your state becomes CGST plus SGST at half the rate each, a sale across a state border becomes IGST at the full rate, and cess is always its own component. The two halves are computed from the amount rather than by halving the rate and rounding twice, so they always add back to the whole — the version that does not is off by a paisa on odd amounts, on some invoices, unpredictably.
Sequences reset on your financial year and never leave a gap — the thing an auditor checks first.
Each organisation gets its own single-threaded database, which means taking a number and incrementing it cannot interleave with another request doing the same. There is no lock to contend and no gap to explain. Prefixes accept tokens — INV-{FY}- becomes INV-2026-27-0001 — and reset monthly, yearly, on your financial year, or never.
Order to proforma to invoice to receipt, plus delivery challans and credit notes — each converting from the last.
Quote it as a proforma, convert it to an invoice when they agree, raise a delivery challan for the goods, record the payment as a receipt. Every conversion keeps a link to what it came from, so the chain is traceable from any point in it — including backwards from a receipt to the order that started it.
One catalog with prices, units, tax rates and HSN codes — so a line item is one click.
Products and services live in one catalog with a kind flag, because they differ in about three fields and share thirty. Set a price, a unit, a default tax rate and an HSN or SAC code once, and every invoice line that uses the item inherits all of it — still editable per line, because the price you agreed today is not always the price on the list.
Subscriptions that raise their own invoices, and payment plans whose instalments sum exactly to the total.
Set a subscription weekly, monthly, quarterly or yearly and it raises invoices on schedule — as drafts for review, or issued automatically. Instalment plans split a total across a number of payments, and the remainder lands on the last instalment rather than being rounded away, so the plan reconciles to the invoice instead of leaving a customer owing one paisa forever.
Several templates, your logo and signature, your bank details — generated in the browser.
Documents render to PDF client-side, so nothing waits on a server and nothing about your customers leaves your session to produce one. Pick a template, upload a logo and a signature, and set your bank and UPI details once; everything you issue carries them.
Revenue, outstanding, ageing, tax summary and top items — each exportable as CSV.
Who owes you money, how long it has been outstanding, what you owe in tax this quarter, and which items actually earn. Every report exports to CSV, because the answer to a question you have not thought of yet is usually a spreadsheet away.