Invoicing & Payments
Everything you need to know about creating invoices, collecting payments, sending invoices to customers, managing invoice versions, and handling corrections in autoGMS.
Overview
autoGMS gives you a complete invoicing and payment workflow in one place. You can generate invoices from completed jobs, send them to customers via WhatsApp, record manual payments (full or partial), manage payment links through Stripe Connect, and keep a clean audit trail when invoices need correction.
Why it matters:
- Keeps your cash collection process consistent across advisors
- Prevents accounting drift when invoices need correction
- Preserves full financial history for every version and payment event
- Reduces disputes by showing clear paid/due state and document lineage
- Tracks overdue invoices automatically based on due dates
Here is what you can do:
- Create invoices from completed bookings using the invoice generator
- Send invoices via WhatsApp with inline contact management
- Accept online payments using Stripe Connect payment links or a manually pasted payment URL
- Record partial and full payments with payment method tracking
- Filter and export invoices by status, account type, and date
- Manage invoice lifecycle with edit, void, and void + replacement workflows
- Track invoice version history with timeline navigation between original and replacement
- Use credit notes for paid/partially paid corrections instead of direct edits
- Configure invoice defaults including bank details, invoice number prefix, due days, document layout toggles, advisor sign-off, and terms
How to Access
Invoices Page
- Log in to your autoGMS dashboard.
- Select your garage from the sidebar.
- Click Invoices in the garage navigation.
The Invoices page has five tabs:
| Tab | What it shows |
|---|---|
| Invoices | Work invoices only, with summary stats, filtering, and row actions |
| Needs Invoice | Completed bookings that do not yet have an invoice |
| Deposits | Create deposit invoices for bookings and manage existing deposit invoices |
| Credit Notes | Credits already issued, plus the workspace for creating a new credit note from a selected invoice |
| Settings | Default bank details, invoice number prefix, due days, document layout, prepared-by defaults, and terms for new invoices |
Key Features at a Glance
| Feature | What It Does |
|---|---|
| Invoices / Needs Invoice tabs | Split between work invoices already raised and completed bookings still waiting for invoice creation |
| Deposits tab | Create deposit invoices for bookings and view the deposit ledger with deposit amount, paid amount, available balance, and status |
| Credit Notes tab | Review issued credit notes and create a new credit note for a selected paid or partially paid invoice |
| Settings tab | Save default bank details, invoice prefix, due days, document visibility toggles, prepared-by defaults, and terms for new invoices |
| Invoice Generator | Build or update invoice items, tax, discount, discount reason, notes, due date |
| Summary stat cards | Show total invoices, collected, outstanding, and overdue amounts |
| Status chip filters | Filter by draft, sent, pending, partially paid, fully paid, or overdue |
| Account type filter | Filter by business or individual customers |
| Row Actions | Send, download, mark paid, and a visible Use Deposit action when an existing work invoice still needs a paid deposit applied manually |
| Lifecycle Controls | Edit eligible invoices, void, void + replacement, create credit note, and jump into deposit application from the invoice row |
| Version Timeline | Navigate across original/replacement invoice chain |
| Payment Modal | Record full or partial payments with method selection and quick-amount buttons |
| Send Invoice Dialog | Send via WhatsApp with inline phone management |
| Payment Links | Create, copy, open, and cancel Stripe payment links (requires Stripe Connect) |
| CSV Export | Export filtered invoice list or selected invoices to CSV |
| Bulk selection | Select multiple invoices and export them together |
Step-by-Step Guide
0. Configure Invoice Defaults (Recommended)
Before generating invoices, set your garage defaults once:
- Go to Invoices.
- Open the Settings tab.
- Fill in your default bank details:
- company / account holder name
- bank name and branch
- account number
- IBAN and SWIFT code
- Set your invoice number prefix (optional). Leave blank to inherit the organization default. The prefix is shown in uppercase and applied to all new invoices.
- Set the default payment due days (for example 30). Minimum 1, maximum 365.
- Choose your default document layout:
- show or hide currency, tax breakdown, payment details, vehicle details, notes, and terms
- optionally show a prepared-by block and company stamp
- Add your default prepared by details if you want them prefilled:
- name
- title
- If you need to upload or replace the shared company stamp, open Garage Settings > Billing & Currency. Organization admins can manage the shared stamp there for newly generated invoices across that organization.
- Add your default terms and conditions text. A standard template is prefilled covering payment terms, warranty, authorization, vehicle collection, and tax compliance.
- Click Save defaults.
What happens:
- New invoices auto-populate these bank details, prefix, layout preferences, advisor defaults, any shared organization stamp, and terms.
- Due date is calculated using your default due days from the issue date.
- Terms and conditions are prefilled in every new invoice.
- You can still override document visibility and advisor details in the invoice generator before saving. The company stamp image itself is managed from Garage Settings > Billing & Currency for organization admins.
1. Create an Invoice
- Go to Invoices.
- Open the Needs Invoice tab.
- Find the completed booking you want to invoice. The table shows booking code, customer name, service name, vehicle, completion date, and amount.
- Use the search bar to find specific bookings by customer name, service name, vehicle, or booking code.
- Click Generate Invoice on the target booking row.
- The invoice generator opens, pre-populated with:
- line items from the booking's services and inventory
- tax rate from your garage settings
- your default bank details and terms
- Review and edit line items, tax rate, discount, optional discount reason, due date, notes, and payment details.
- If needed, open the Settings section inside the invoice generator to override document visibility for that one invoice, or change the prepared-by name and title. The company stamp image is managed from Garage Settings > Billing & Currency for organization admins.
- If you already have your own hosted checkout URL, set Payment method to Payment link and paste it into the Payment link field inside Payment info.
- Save to create the invoice.
What you will see after saving:
- The work invoice appears in the Invoices tab.
- A confirmation banner at the top shows the invoice number and links you to the Invoices tab.
- The row is highlighted briefly so you can find it easily.
Tip: The Needs Invoice tab only shows completed bookings that do not already have an invoice. Once you generate an invoice for a booking, it disappears from this tab.
If a previous invoice for the booking was voided, the booking returns to Needs Invoice with a compact Replacement label and the previous invoice number for context.
2. View and Manage Invoices
On the Invoices tab you will see work invoices only. Deposit invoices stay on the Deposits tab so the main collections list stays focused on actual job invoices.
On a clean landing into the Invoices tab, autoGMS automatically opens the first non-empty workflow queue instead of showing an unfiltered mixed table. The default order is:
- Awaiting Payment
- Partially Paid
- Overdue
- Draft
- Paid
- Voided
This default queue uses the same status counts shown in the chips, so partially paid invoices still take priority before overdue when that chip has work in it.
Summary stat cards (desktop only, hidden on mobile):
| Card | What it shows |
|---|---|
| Total invoices | Count of all invoices and total billed amount |
| Collected | Total amount collected and count of fully paid invoices |
| Outstanding | Total amount still due and count of invoices awaiting payment |
| Overdue | Total overdue amount and count of overdue invoices |
Table columns (in display order):
| Column | What it shows |
|---|---|
| Invoice | Invoice number plus any non-standard invoice type badge |
| Customer | Customer name for the invoice. Click the name to open that customer's profile |
| Service | Service/job label, with the booking suffix shown underneath and linked to the booking when there is one clear match |
| Status | Status with color-coded indicator |
| Deposit | Shows one operational state only: Ready to apply, Awaiting payment, Applied, or blank when deposit is not relevant |
| Issued | When the invoice was created |
| Due now | The current amount the customer owes now, with the total shown underneath as secondary reference |
Filtering and searching:
- Search bar -- Free text search across invoice number, customer name, email, and booking reference.
- Date range picker -- Available in the page header on the Invoices tab. Filters the work-invoice list by invoice creation date and also applies to CSV export from that tab.
- Status chips -- Click a status to filter. Each chip shows a count. Click the same chip again to clear. Available statuses: Draft, Sent, Pending, Partially Paid, Fully Paid, Overdue.
- Account type -- Filter by Business or Individual customers using the dropdown.
- Reset -- Click the reset button to clear all filters.
Sorting:
Click any sortable column header to sort ascending or descending. The default sort is by creation date, newest first.
3. Understanding Invoice Statuses
Statuses are calculated automatically based on amounts and due dates:
| Status | Meaning |
|---|---|
| Draft | Invoice created but not yet sent |
| Sent (Open) | Invoice has been sent to the customer |
| Pending | Invoice is active but not yet paid or sent |
| Partially Paid | Some payment received, balance remaining |
| Fully Paid | Invoice fully settled (shown with a checkmark icon) |
| Overdue | Past the due date with outstanding balance |
| Overdue (Partially Paid) | Past due date, some payment received but balance remaining |
| Void | Cancelled and closed |
| Uncollectible | Marked as unrecoverable |
Good to know: Status is derived from amounts, not set manually. If the amount paid matches or exceeds the effective total (total minus credit notes), the invoice shows as Fully Paid regardless of the raw status field.
4. Record Payments
- Click Mark Paid on any unpaid invoice row.
- The payment modal opens showing:
- total amount and remaining balance
- a progress bar if partial payments have already been made
- the percentage paid so far
- Select a payment method: Payment link, Card, Cash, or Cheque.
- Enter the payment amount. Quick-amount buttons are available:
- Full -- fills in the entire remaining balance
- 50% -- fills in half the remaining balance (shown if balance > 2)
- 25% -- fills in a quarter of the remaining balance (shown if balance > 4)
- Click Confirm Payment.
What happens:
- Full settlement changes status to Fully Paid.
- Partial settlement changes status to Partially Paid.
- Payment entries are appended to the invoice payment ledger with amount, date, and method.
- When a work invoice becomes fully paid, autoGMS generates a separate Payment Receipt PDF linked back to that invoice.
- That receipt is stored automatically in the customer's Attachments/Documents area and appears there as a Receipt.
- On the Invoices page, that final-payment receipt also downloads automatically to the advisor's device.
- While that receipt is being created and fetched, the page shows a single progress toast that updates through messages such as Payment recorded. Preparing receipt... and Downloading receipt... so staff can see that the file is on the way.
- If the stored customer-document copy is still finishing in the background, autoGMS can still download the advisor's receipt locally first and let the customer attachment appear a moment later.
- The table updates immediately (optimistic update) and refreshes from the server.
Good to know: The modal re-fetches the latest invoice data when it opens and again before confirming, preventing double-payment issues if someone else has already paid.
5. Create, Collect, and Apply Deposits
There are two ways to create a deposit invoice:
Option A — Directly from the Deposits tab
- Go to Invoices → Deposits tab.
- Select a Booking from the dropdown in the deposit card at the top.
- Enter the deposit Amount.
- Click Create deposit.
Bookings that already have an active deposit are filtered out automatically.
Option B — From the approved estimate workspace
- Open the linked booking workspace for the approved estimate.
- Confirm the estimate is fully approved.
- In the deposit callout above the estimate list, click Create deposit.
- Review the amount:
- if the estimate has an upfront payment rule, that amount is suggested automatically
- you can still override it before creating the deposit
- Click Create deposit.
What happens next:
- A separate draft deposit invoice is created for that booking.
- The deposit appears in Invoices -> Deposits.
- The deposit always uses the garage's configured currency automatically.
To collect the deposit:
- Go to Invoices -> Deposits.
- Find the draft deposit invoice row.
- Send/share it as needed.
- When money is received, click Mark Paid.
When the job is complete:
- Create the final work invoice from the booking as normal.
- If the deposit invoice has been paid, autoGMS applies the paid deposit balance automatically when the final invoice is created.
- The final invoice shows:
- Gross / approved total
- Deposit applied
- Remaining due
Important:
- Deposit invoices remain separate invoice records for auditability.
- The public estimate page remains approval-only.
- Partially approved estimates do not use the estimate-backed deposit flow.
- Applied deposits reduce the remaining due, but they are not shown as normal service line items.
6. Send an Invoice
- Click Send on any invoice row.
- The Send Invoice dialog opens showing:
- invoice number and amount
- customer name
- VAT percentage (if applicable)
- Review the generated public invoice link, payment link (if present), and WhatsApp message preview.
- If the customer has no phone on file, add it inline and click Save.
- Click Open WhatsApp.
What happens:
- WhatsApp sends download the PDF locally and open
wa.mewith a formatted message. - The public invoice link is generated when the send dialog opens, can be copied or opened by staff, and is reused when the invoice is sent.
- The invoice PDF attachment includes the public invoice link so the hosted PDF and shared link stay in sync.
- Draft invoices are automatically transitioned to Sent (open) status after sending.
Important:
- If a standard or final invoice no longer matches the booking's latest approved scope, autoGMS blocks sending it.
- In that case, use Void + Reissue so the replacement invoice is generated from the latest approved booking scope.
- Phone numbers saved inline are persisted to the customer record.
Deposit-Related Invoice Rows
The tabs are now split on purpose:
- Invoices shows work invoices only
- Deposits shows the deposit creation card and deposit invoice ledger
- Credit Notes shows credit note activity separately from the main invoice collections list
This keeps the main collections table focused on real job invoices, while the deposit ledger stays on its own tab.
7. Download an Invoice
Click Download on any invoice row. The system generates a PDF using your invoice data and downloads it immediately with the invoice number as the filename.
When the invoice is linked to a completed booking, the PDF also shows the job completion date. The vehicle block includes every customer-vehicle detail autoGMS can resolve for that invoice, including saved identifiers such as registration, mileage, VIN, chassis number, fuel, engine, and other available vehicle attributes.
8. Applying Deposits to Work Invoices
In the standard estimate-backed flow, paid deposits are applied automatically when the final work invoice is created.
You may still see Use Deposit on some work invoice rows for older/manual deposit flows. That remains useful as a fallback, but it is no longer the primary path for approved-estimate deposit billing.
9. Export Invoices
Single export: Click the export button in the toolbar (desktop only). This exports all invoices matching your current filters as a CSV file.
Bulk export: Select multiple invoices using the checkboxes, then click Export selected in the bulk action bar that appears.
The CSV file includes date, customer, vehicle, status, amounts, and payment details. The filename includes the current date.
Invoice Lifecycle Rules
Direct Edit
- Available from the more menu (three-dot dropdown) on each invoice row.
- Allowed only for
draftandopen(sent) invoices that do not already have an applied deposit. - Blocked for
paid,partially_paid,void, anduncollectibleinvoices. - Opens the invoice generator with all current values prefilled.
When editing, you can change:
- Line items — add, remove, or modify services, labour, and parts (description, quantity, unit price)
- Tax rate — adjust the VAT/tax percentage
- Discount — add or change a discount, plus an optional internal reason note
- Due date — update when payment is expected
- Notes — update invoice notes
- Payment details — update bank details or payment instructions
To edit an invoice:
- Go to Invoices.
- Find the invoice in the list.
- Click the more menu (three-dot icon) on the invoice row.
- Click Edit Invoice.
- Make your changes in the invoice editor (for example, update a labour line item's price or quantity).
- Save.
Void
- Available from the more menu for
draftandopeninvoices. - You will be prompted to confirm and optionally provide a reason.
- Marks the invoice as cancelled/closed for audit clarity.
- If the invoice is linked to a booking and no money has been recorded, that booking returns to Needs Invoice so you can raise a replacement invoice. The row is marked as Replacement.
Void + Reissue (Replacement)
- Available from the more menu for
draftandopeninvoices. - Use this when an unpaid invoice needs correction.
- If the invoice shows a Latest approved warning, use Void + Reissue instead of sending the older version.
- You will be prompted to confirm and optionally provide a reason.
Result:
- Original invoice is voided.
- New replacement invoice is created as a draft.
- The replacement draft opens in the editor immediately.
- Both invoices keep version links (the Invoice column shows "Original: [number]" or "Voided: [number]").
Create Credit Note
- Available from the more menu for
paidandpartially_paidinvoices. - Clicking this opens the
Credit Notestab on the Invoices page with the invoice pre-selected for you.
Version Timeline
Click View Version Timeline in the more menu to see all invoices in the reissue chain. The timeline shows each version with its creation date, status, and invoice number, ordered chronologically. Click any entry to open that version.
Payment Links (Stripe Connect)
If your garage has Stripe Connect enabled, additional payment link actions appear in the more menu for unpaid invoices:
| Action | What it does |
|---|---|
| Create Payment Link | Generates a Stripe payment link and copies it to your clipboard |
| Copy Payment Link | Copies an existing active link |
| Open Payment Link | Opens the payment link in a new tab |
| Cancel Payment Link | Expires the current payment link |
Payment link status is fetched automatically when you open the more menu.
Manual Payment Links
If you do not want to rely only on Stripe-generated links, you can save your own payment URL directly on the invoice or deposit:
- Open the invoice or deposit in Edit mode.
- In Payment info, choose Payment link as the payment method.
- Paste your URL into the Payment link field.
- Save the invoice.
- Open Send on the row when you are ready to share it.
What happens:
- The manual URL is stored on the invoice itself under its payment details.
- The Send dialog shows it as a separate Payment link from the public invoice link.
- If Stripe later creates a hosted payment link, autoGMS can still use that for sending without deleting your saved manual URL.
Corrections: Credit Note vs Direct Edit
For paid or partially paid invoices:
- Do not directly edit (editing is blocked for these statuses).
- Use Credit Notes from the Invoices page.
10. Issue and Track Credit Notes
The Credit Notes tab is the dedicated place for invoice corrections after payment has already been recorded.
Use it when:
- an invoice has already been paid or partially paid
- you need to reduce the billed amount without silently changing invoice history
- you want the adjustment to remain visible in the customer and accounting trail
How to start a credit note:
- Go to Invoices.
- Find the paid or partially paid work invoice you want to correct.
- Open the more menu on that invoice row.
- Click Credit Note.
- autoGMS opens the Credit Notes tab with that invoice already selected.
- Enter the credit reason, review the amount, and save.
What happens next:
- A credit note record is created and shown in the Credit Notes tab.
- The original invoice keeps its audit trail instead of being edited in place.
- The invoice totals and remaining balance reflect the credited amount.
- Staff can return to the Credit Notes tab later to review what was issued.
For draft or open (sent) invoices:
- Use Direct Edit for minor changes.
- Use Void + Reissue for significant corrections that need a clean paper trail.
Why:
- Preserves accounting integrity.
- Keeps clear financial audit history.
- Credit notes create separate financial documents rather than modifying settled records.
Invoice Types
The system supports multiple invoice types:
| Type | When used |
|---|---|
| Standard | Regular booking invoices |
| Deposit | Deposit invoices created from the Deposits tab or from the approved estimate workspace |
| Stage invoice | Invoices linked to specific project stages |
| Progress | Progress billing invoices |
| Final | Final invoices for completed projects |
The invoice type is shown in the invoice details and affects how the invoice relates to bookings and project workflows.
Best Practices
- Set up defaults first. Configure your bank details, prefix, due days, and terms in the Settings tab before generating your first invoice.
- Use void + replacement for pre-payment fixes and credit notes for post-payment fixes.
- Record payments promptly. Use the Mark Paid button as soon as you receive payment to keep your outstanding balance accurate.
- Save customer contact info. If a customer's phone is missing when you try to send, use the inline field in the Send dialog to add it. This updates the customer record permanently.
- Use status filters regularly. Filter by Overdue to chase late payments. Filter by Partially Paid to follow up on outstanding balances.
- Export monthly. Use the CSV export at the end of each month for your accountant.
- Use bulk export when you need to send a batch of invoices for reconciliation.
- Always include a clear reason/note on void and reissue actions.
- Use invoice deep-links carefully: work invoices can use
?invoice=<id>, while deposit invoices should use?tab=deposits&invoice=<id>.
Frequently Asked Questions
I cannot edit an invoice.
The invoice is likely in a terminal or settled state (paid, partially_paid, void, uncollectible). Direct edit is also blocked for invoices that already have an applied deposit, even if they are still open. Only draft and open invoices with no applied deposit can be edited directly. For paid invoices, use a credit note. For unpaid invoices that need correction, use void + reissue.
How do I change the labour amount on an invoice?
If the invoice is draft or open: click the more menu on the invoice row, select Edit Invoice, then update the labour line item's price or quantity in the editor. If the invoice is already paid or partially_paid, you cannot edit it directly — use a Credit Note instead.
I voided and replaced an invoice but cannot find one version.
Open View Version Timeline from the more menu (three-dot dropdown) on either the original or the replacement. The timeline walks the full chain so you do not need to search manually.
Paid/Partially Paid looks incorrect.
Re-check invoice totals and applied amounts. Status is calculated from the effective total (gross total minus credit notes) and the amount paid. If credit notes have been applied, the effective total changes.
I cannot see the Mark Paid button.
The button is hidden for invoices that are already fully paid or voided. Check the invoice status.
The customer did not receive the WhatsApp message.
Invoice sending from this page is now WhatsApp-only. If the customer still says they did not receive it, open the invoice link from the Send Invoice dialog and confirm the WhatsApp message used the correct phone number and public invoice URL.
How do I send an invoice via WhatsApp if the customer has no phone number?
In the Send Invoice dialog, an inline phone number field appears when no phone is on file. Enter the number, click Save, and the WhatsApp option becomes available.
Can I select which invoices to export?
Yes. Use the checkboxes on the left side of the table to select specific invoices, then click Export selected in the bulk action bar.
What is the account type filter?
It filters invoices by the customer's account type: Business or Individual. Use it to separate commercial and personal invoices for reporting.
Where are invoice settings saved?
Invoice settings (bank details, prefix, due days, terms) are saved per garage. Each garage can have its own defaults. The invoice number prefix can also be inherited from the organization level if left blank.
Can I change the invoice number prefix?
Yes. Go to the Settings tab and update the invoice prefix field. Leave it blank to inherit the organization default. The prefix is converted to uppercase automatically.
What payment methods can I record?
Payment link, Card, Cash, and Cheque. When recording a payment via the Mark Paid modal, select the method from the dropdown. The recorded method appears in the Payment column of the invoices table.
Quick Reference
| I want to... | Go here | Do this |
|---|---|---|
| Create an invoice | Booking detail page | Click Generate Invoice |
| Create a deposit (direct) | Invoices → Deposits tab | Select booking, enter amount, Create |
| Create a deposit (from estimate) | Booking-linked estimate workspace | Click Create deposit in the approved-estimate deposit panel |
| View all invoices | Sidebar → Invoices | Browse or filter the list |
| Send invoice by WhatsApp | Invoice row → Send | Review dialog, click Open WhatsApp |
| Record a cash payment | Invoice row → Mark Paid | Enter amount, select Cash |
| Record a card payment | Invoice row → Mark Paid | Enter amount, select Card |
| Edit an unpaid invoice | Invoice row → ⋮ → Edit | Make changes, save |
| Issue a credit note | Invoice row → ⋮ → Credit Note | Opens the Invoices Credit Notes tab with the invoice preselected |
| Void an invoice | Invoice row → ⋮ → Void | Confirm void action |
| Void and reissue | Invoice row → ⋮ → Void & Reissue | Edit, then save new version |
| View version history | Invoice row → ⋮ → View Timeline | See all linked versions |
| Write off bad debt | Invoice row → ⋮ → Mark Uncollectible | Confirm write-off |
| Export invoices | Select rows → Export selected | Choose PDF or Excel |
| Change invoice settings | Invoices → Settings tab | Update prefix, terms, bank details |
| Filter by status | Status chips at top | Click Unpaid, Paid, etc. |
| Search invoices | Search bar | Type invoice #, customer, or amount |