Run the business

Invoicing

Turn an approved estimate into an invoice, take part-payments, and let the customer open theirs from a link — no account, no chasing.

PreviewA drawn miniature of the invoice a customer opens — the real one is generated from an estimate.

The problem

The quote's approved, the job's done, and now the invoice lives in a spreadsheet, the payment in a text message, and the balance in your head. Getting paid shouldn't be the messy part.

How it works

One click turns an approved estimate into an invoice — line items and all, labor folded into the price, linked back to the quote. Every amount is server-owned in integer cents, so a total can't be fudged from the browser.

Payments are an append-only ledger with a running balance: record a deposit and the invoice flips to partial, record the rest and it's paid, automatically. An overpayment never goes negative. A capability token gives the customer a link to open their invoice and see the balance — no login, and nothing a stranger with a different link could reach.

It's the end of the field-service loop that starts at the estimate: quote → book the visit → invoice → paid.

  • Estimate → invoice in one click, linked back to the quote
  • Part-payments tracked in an append-only ledger; status follows the money (partial → paid), overpayment clamped
  • A token link so the customer opens and reads their invoice without an account
  • Server-owned totals in integer cents, with overdue detection
npm install @adminigloo/invoicingBook a callAll features