A top-level nav surface listing all invoices for the business, grouped into collapsible project cards. Filter by status chip, by customer, or free-text search across invoice number, title, customer and project. New Invoice from here asks which project first, then opens the same editor used inside the job.
Also called: all my invoices · invoice list · who owes me money · accounts receivable
One screen answers what is outstanding across the whole business
Outstanding, sent and awaiting, overdue, and paid to date, with voided invoices excluded from all four. This is the number a builder otherwise rebuilds in a spreadsheet, or asks the bookkeeper for at month end and gets a week late.
Every invoice in the business, grouped by job, filtered by status or customer
Filter by status chip, pick one customer, or search across invoice number, title, customer and project. Grouping is by project because one customer can have several jobs and each job several invoices, and a flat list of all of them is a wall. Each project card carries its count and its own three totals.
You can start an invoice from here, not only from inside a job
New Invoice asks which project first and then opens the same editor you get inside the job. It used to be reachable only from a project's own tile, which meant answering “how do I make a new invoice?” with directions instead of a button.
Void and delete are offered here too, because this is where you spot the wrong number
This is the reporting screen. A wrong invoice is usually noticed while looking at the month's totals, not while sitting inside the job, so the corrections sit on the row in front of you rather than three clicks away.
- 1listInvoices() with no project filter pulls every invoice for the org, drafts included (this is an admin surface).
- 2customerLabelFor() resolves each row to one customer name — Bill To legal name wins, then estimate snapshot, then the project's customer field — so the filter and the dropdown share one source of truth.
- 3Closing the viewer briefly flashes the row you entered on (blue) and the row you exited on (green), because you can swipe between payment stages inside the modal and land somewhere else.
- 4Corrections (void / delete) are offered here as well as in the project modal.
A builder asking how to make a new invoice had to know to open the right project first and find the tile — the question had no answer anywhere else. And with several projects per customer and several invoices per project, a flat list was a wall of numbers. Invoices now have their own screen, grouped by project and filterable by status, with the correction tools on it as well, because the reporting screen is where somebody notices a number is wrong.
- Invoices only reachable by first finding the right project.
- No business-wide view of outstanding receivables.
- Losing your position in a long list after opening one row.
See it on your own jobs
Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.
or keep browsing features →