Invoicing

Build, brand, send and track invoices against a project, with line items pulled from the estimate or from approved change orders.

What it is

A full invoice engine tied to the project record. Each invoice carries a header (title, issued/due dates, terms, tax %, notes, payment instructions), a structured Bill To block, free-form line items, and live totals. It has a real lifecycle — draft, sent, viewed, partial, paid, overdue, void — and the customer sees it through a branded token link, not a PDF attachment.

Also called: invoices · billing the customer · send an invoice · construction invoicing

See it, piece by piece
01

The line items come off the estimate you already priced

Every row can be inserted from the attached estimate or from an approved change order in one click, and each row remembers which one it came from. Type a row by hand when you need to, or tag one as an adjustment with a negative price to credit something back. The alternative is reading numbers off one screen and typing them into an accounting package, which is how the wrong figure reaches the customer.

New Invoice — Line Items
Line Items?+ Add Line
Project Estimate
Materials — Post-Frame Package
40×64×14 shop: posts, trusses, purlins, 29ga steel, trim package.
Quantity
1
ea
Unit
EachHoursqft…
Unit Price
$
41850.00
/ea
Total
$41,850.00
Change Order
CO-3 — Add two 12×12 overhead doors
Openings framed, headers upsized, jambs and track included.
Quantity
2
ea
Unit
EachHoursqft…
Unit Price
$
3240.00
/ea
Total
$6,480.00
Subtotal$48,330.00
Tax (6%)$2,899.80
Total$51,229.80
The Kind selector on each card — Project Estimate on one row, Change Order on the next. The real screen, drawn from the product’s own design system. Sample data — no customer information appears here.
02

It carries your logo and shows only the sections you want the customer to see

Logo, company name, address, phone, email, website and brand colour are set once in My Business and print on every invoice. Twenty sections switch on or off per invoice — the Bill To block, the job site address, the building specs, the full payment-schedule breakdown, payment instructions, notes — and the combination you use most saves as the default for new ones. A lender draw can carry the site address and the loan details while your everyday invoice shows neither.

04

You can see whether they opened it, and overdue is never stale

The invoice moves through draft, sent, viewed, partial and paid, and viewed is stamped the first time the customer opens their link. Overdue is not a stored flag waiting on a nightly job to flip it — it is worked out from the due date and the balance at the moment the screen draws. Chasing “sent but never opened” is a different phone call from chasing “opened and ignored”.

Invoicing
AllDraftSentViewedPartialOverduePaidVoidAll customersSearch number, title, customer, or project…
Yoder — 40×64×14 Shop4 invoices
Marlin Yoder·$80,242.35total·$58,380.00 paid·$21,862.35 due
1Paid2Partially Paid3Overdue4Draft
1INV-2026-0036Down Payment — 40×64 ShopPaid
Issued May 4, 2026 · Due May 18, 2026
$26,535.00
PDF
2INV-2026-0038Delivery DrawPartially Paid
Issued Jun 22, 2026 · Due Jul 6, 2026
$35,380.00
$12,380.00 due
PDF
3INV-2026-0041CO-3 — Overhead DoorsOverdue
Issued Jul 9, 2026 · Due Jul 23, 2026
$9,482.35
PDF
4INV-2026-0044Final PaymentDraft
Issued Aug 20, 2026
$8,845.00
The status chips — All, Draft, Sent, Viewed, Partial, Overdue, Paid, Void. The real screen, drawn from the product’s own design system. Sample data — no customer information appears here.
05

A change order on the invoice is not taxed a second time

A change order runs its own subtotal through markup and then tax, so its total arrives at the invoice with tax already in it. The invoice adds that figure after its own tax rather than taxing it again. The amount on the bill is the amount on the change order the customer signed, with nothing to back out by hand.

New Change Order — Line Items
Line Items+ Add Line
KindDescriptionSupplierQtyUnitUnit PriceTotal
Material12×12 insulated overhead doors (2)Kaufman Door Supply2ea2480.00$4,960.00×
LaborFrame openings, headers, jamb & track installUnassigned18hr68.00$1,224.00×
Credit (subtracts)Delete one 3068 walk door from base scopeUnassigned1ea640.00-$640.00×
Markup %
12
Tax %
6
Subtotal$5,544.00
Markup (12%) + Tax (6%)$1,037.84
Total$6,581.84
Schedule+3 days
The roll-up under the lines — Markup % then Tax %, applied in that order. The real screen, drawn from the product’s own design system. Sample data — no customer information appears here.
06

What you approve in preview is literally what the customer opens

Preview builds the customer-facing document out of the editor as it stands, unsaved, and renders it through the same viewer the customer gets — so a wrong section toggle is caught before the invoice is locked and sent. Print or save it as a PDF from the list row, from inside the invoice, or from the customer's own page, and it comes out the same each time.

07

One unbroken number sequence, so the books reconcile

Numbers run INV-2026-0001, INV-2026-0002 and keep counting; the year is a label, not a reset. Voiding one does not release its number for reuse. A gap in a sequence is something an accountant expects and can chase; the same number appearing twice is what makes a year unauditable.

How it works
  1. 1Open a project's Billing tile (or the global Invoicing nav) and hit New Invoice.
  2. 2The editor pre-fills tax %, terms and payment instructions from the tenant's invoice_settings, and titles the invoice from the project.
  3. 3Bill To auto-populates from the customer's signed intake form; line items come from the attached estimate, from approved change orders, or are typed by hand.
  4. 4Live totals compute with the same pure function the server uses (computeInvoiceTotals), so preview and saved row never disagree.
  5. 5Save Draft keeps it editable; Send to Customer locks it, stamps sent_at, and activates the portal link.
Why we built it

Billing meant retyping an estimate into an accounting package line by line, and the number that reached the customer was whatever survived the retype — not necessarily what they had agreed to. Nothing in the accounting package knew which project, which estimate or which approved change orders sat behind the figure, so a disputed invoice turned into a paper hunt. Invoices are now built on the job itself: line items fold in from the estimate or from approved change orders, branding comes from the same place the customer portal gets it, and the customer opens a branded document instead of a PDF attachment.

The problem
  • Estimate numbers had to be manually re-entered into an accounting package to bill.
  • No single place showed which invoices on a job were outstanding.
  • Invoices carried no branding and no link back to the project or estimate.
Sound familiar?
What you get
One invoice document that reads the same in the editor, the preview, the print/PDF and the customer's browser.
Line items traceable back to the estimate component or change order that produced them.
Outstanding balance visible per project and across the whole business.
What's inside
Continuous invoice numbers
Every invoice gets the next number in one unbroken per-business sequence, prefixed with the year but never reset.
Invoice status tracking
Each invoice moves through draft, sent, viewed, partial, paid and void — and overdue is derived on read so nothing needs a nightly job.
Line item editor
Free-form invoice rows with a bold title, a long description, quantity, unit and unit price — each tagged by where it came from.
Bill To pulled from the signed intake form
The legally-required billing block — legal name, mailing address, cosigner, lender, loan number, source of funds — fills itself in from the intake form the customer already signed.
Choose what prints on the invoice
Twenty invoice sections can each be switched on or off per invoice, and the combination saved as the business's default.
Your business on every invoice
Logo, company name, address, phone, email, website and brand colour are set once in My Business and print on every invoice, contract and portal screen.
Preview and print/save PDF
See the exact customer-facing document before sending, and print or save it as a PDF from any surface.
Deposit / progress / final presets
One click fills the invoice with a deposit, progress or final draw off a base amount — or with nothing but the selected change orders.
Change-order lines aren't taxed twice
A change-order line already carries its own markup and tax, so the invoice adds it after tax instead of taxing it again.
Unsaved-changes guard
Closing an invoice with unsaved edits prompts before discarding them.
Fold approved change orders into an invoice
Pick the approved change orders that haven't been billed yet and drop them onto an invoice — one line each, or fully itemised.

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 →