v2.3 · Released · August 23, 2026
Invoices That Bill a Company, and Records You Can Take With You
Invoices are now addressed to a company, with the person you deal with named underneath, so the document matches how you actually get paid. Your client records grew to match, and the client page finally sorts and pages instead of dumping every row at once. You can export invoices over any date range as a spreadsheet or as a folder of PDFs, ready to hand to an accountant. And underneath all of it, the arithmetic behind every invoice and every tithe or emergency-fund deduction was rebuilt so the numbers on your documents add up to the numbers in your accounts.
Invoices Addressed to a Company
- Bill the company, name the person. Invoices now carry the company's name, address, tax ID, email and phone, with the contact you actually deal with listed underneath as the point person.
- The document reads the way an invoice should. Bill To leads with the company, and the contact appears as an Attn line beneath it — the convention any accounts-payable desk expects.
- Clients grew to match. A client record holds its company details alongside a named contact, so everything is entered once and carried onto every invoice.
- Invoices you already sent are untouched. Editing a client never rewrites an invoice that has already gone out; each invoice keeps the details it was sent with.
- One-off invoices still work. Pick an existing client to fill everything in, or type the details directly for a job that will not repeat.
Manual Invoices Remember Their Client
- Choose a client instead of retyping them. Creating an invoice by hand now lets you pick a client, filling in both the company and the contact.
- Billing currency follows the client. An invoice for a client you bill in one currency no longer quietly defaults to another, and switching a draft to a different client updates it.
Export Your Invoices
- Any date range, or one click. Export invoices between two dates, with presets for this month, last month, the last two or three months, this quarter, and this year.
- Whole months, not rolling windows. Last three months means three complete calendar months, so an export lines up with a statement or a filing period instead of an arbitrary ninety days.
- Paid, unpaid, or everything. Filter to what you have been paid, what is still outstanding, or the full picture, with drafts left out and cancelled invoices kept in.
- A spreadsheet or the documents themselves. Export a CSV for your accountant, or a ZIP holding every invoice as a PDF plus the same spreadsheet as a manifest.
- Watch it happen. Larger exports render in the background with a live progress count, then download when they are ready.
Client Pages That Handle Real Volume
- Sort and page through the work. Billable entries and invoices on a client page now sort by any column and page through in tens, instead of listing everything at once.
- Find unbilled work quickly. Filter a client's entries to unbilled, billed, or all.
Arithmetic You Can Trust
- Invoice totals add up. Subtotal, tax and total are now calculated so the figures printed on an invoice always reconcile — previously a tax rate could round in a way that left the total a cent adrift from its own line items.
- Line items match their maths. Quantity times unit price is rounded once, and the subtotal is the exact sum of those rounded amounts.
- Tithe and emergency fund no longer drift. Editing or deleting an income with a deduction used to leave a cent behind in the account balance each time. Deductions are now calculated once and applied consistently, so recording and reversing cancel out exactly.
- Tax rates behave. A rate is stored at the precision the invoice uses, so the rate shown always reproduces the tax charged.
Smaller Things
- Contact details always appear. An invoice with a contact email but no contact name no longer drops that email from the document.
- Exports open cleanly. Company names beginning with a symbol are no longer misread as formulas by spreadsheet software.
- Every setting is documented. The example environment file now lists every variable the app reads, what it does, and what breaks without it.