Invoice
An invoicing and accounting tool for small businesses that would rather own their numbers. One binary, one database, no payment gateway required — send an invoice, record what came in, and keep a ledger you can hand to an accountant.
What it does
- Invoices — line items, per-line tax, discounts, terms, notes, and a number series you control.
- Recurring schedules — snapshot any invoice as a template and let it reissue itself weekly, monthly, quarterly or yearly. Pause, resume, or run one early.
- Cloning — copy an invoice into a fresh draft in one click, dates and terms recalculated.
- Payments — recorded manually, so any method works: bank transfer, cash, cheque. Part payments are tracked against the balance.
- Ledger and reports — statement of account, comparative periods, revenue by customer, and CSV export.
- Share as PDF — a signed public link per invoice, with the native share sheet on mobile.
- Multiple workspaces — separate books under one install, each with its own logo, issuer details and data schema.
How it's built
Go's standard library handles HTTP and templates; PostgreSQL holds the data with one schema per workspace, so a workspace is isolated at the database level rather than by a filter someone can forget. There is no JavaScript framework and no build step for the UI — the pages are server-rendered HTML, which means they work on a phone with a weak connection and they will still render in five years.
The recurring scheduler runs inside the process on a ten-minute tick, capped at 24 catch-up periods, so an outage doesn't dump a backlog of invoices into your books.
Sign-in required. Running on our own infrastructure.