Invoices & PDFs
Every service can carry an invoice. Build it as a draft, decide who you’re billing, add line items with optional discounts, then issue it — the issued PDF is what you give the customer.
Status flow: Draft → Issued → Cancelled
An invoice always has one of three statuses. The status determines what you can do with it:
| Status | What it means | What you can do |
|---|---|---|
| Draft | Working copy. No invoice number yet, not legally binding. | Edit any field, add or remove lines, change the bill-to, delete the whole invoice. |
| Issued | Given to the customer. Invoice number is assigned at this transition and never reused. | Read-only. Download/print the PDF. Cancel via credit-note flow. |
| Cancelled | Voided after being issued. The original is preserved for the audit trail; the number stays consumed. | Read-only. Download/print the PDF (it shows the cancelled status). |
Once you issue an invoice you can’t edit it. To correct a mistake, cancel the invoice and create a new one. The original stays in your invoice register and its number is never reissued.
Create an invoice
- On the service page, scroll to Invoice.
- Click + Create invoice. A draft is created.
- Pick the bill-to — the customer who receives the invoice.
- Add line items: description, unit price, quantity, optional discount, VAT %.
- Optionally apply an invoice-level discount on top.
- Totals (net, VAT, gross) recalculate automatically after each row.
- Click Save to keep editing, or Issue invoice to assign a number and lock it.
Bill-to: individual or company
Pick who the invoice is addressed to. The choice changes which fields appear on the PDF:
- Individual — bills the linked customer. Name on file is used.
- Company — bills a business. Requires a VAT number; the address is included on the PDF.
Pick a customer from your client list to auto-fill the fields, or switch to custom mode to type a one-off bill-to (useful for occasional buyers you don’t want to add as a client).
The customer’s name, VAT number, and address are copied onto the invoice when you issue it. Updating the client record later doesn’t change already-issued invoices — the historical record stays accurate.
Line-item fields
| Field | Notes |
|---|---|
| Description | What you charged for — e.g. Oil change (5W-30 synthetic). |
| Quantity | Decimal allowed. Default 1. |
| Unit price | Before VAT. |
| Line discount | Optional. Apply as a percentage (0–100) or a fixed amount in your currency. |
| VAT % | Default is pulled from your workshop profile. Override per-line if needed. |
Discounts
Two layers of discount are available, and they stack:
- Per-line discount — subtract a percentage or amount from a single line. Used for “part on sale” or “loyalty 10% on labour”.
- Invoice-level discount — subtract a percentage or amount from the whole invoice subtotal. Used for “5% off the total” or a fixed-amount goodwill credit.
Each discount is recorded with its type (None / Percentage / Amount) and value, and the breakdown is visible on the PDF so the customer can see what was knocked off.
Editing a draft
While an invoice is in Draft, click any line to edit it, or click + Add line for a new row. Changes to prices, discounts, or VAT update the totals instantly. Use the trash icon to remove a line, or the Delete invoice button to throw the whole draft away. Once you click Issue the invoice becomes read-only.
Export as PDF
On any saved invoice, the toolbar offers:
- Download — saves the PDF to your device.
- Print — opens the browser print dialog.
- Share (mobile) — opens the native share sheet.
The PDF includes your workshop header (logo, name, VAT, address from your profile), the bill-to snapshot, the vehicle, the service description, the line items with discount breakdown, and the totals with VAT breakdown by rate.
To export many invoices at once — for an accountant or a monthly archive — use the workshop-wide Invoices screen. It supports bulk CSV (per-VAT-rate columns) and multi-invoice PDF bundles.
VAT handling
VAT is calculated per-line, after any line discount, based on the VAT% you entered. The invoice footer shows the breakdown: subtotal by VAT rate, total VAT, grand total. The default VAT% comes from your workshop profile — change that and every new invoice picks up the new default. Already-issued invoices keep the rates they were issued with.
If your workshop has a VAT number set in the profile, it appears on the invoice header. If the bill-to is a VAT-exempt company (e.g. EU reverse charge), the line is exported VAT-exempt and a note appears on the PDF.
Invoice numbers are assigned sequentially per workshop at the moment you click Issue. Once assigned, a number cannot be reused — cancelling an invoice does not free up its number (this matches most legal requirements for invoice registers). The numbering is concurrency-safe: even if two employees issue at the same instant, you get two consecutive numbers, never a duplicate.