Home / Billing and Invoicing / Invoice Overview

Invoice Overview

Invoices, items, status, numbering

What it is

Invoices bill clients for products, services, domains, add-ons, and one-off charges. Each invoice has line items, a status (pending, paid, overdue, cancelled), and a unique invoice number. Invoices are generated automatically when orders are placed or when the cron runs for renewals.

How it works

Tables: invoices stores the header (client_id, invoice_number, status, total, currency, due_date). invoice_items stores each line (description, quantity, price, total).

Numbering: generateInvoiceNumber() uses settings (prefix, format, next number) to create values like INV-2024-001. Placeholders: {PREFIX}, {YEAR}, {MONTH}, {DAY}, {NUMBER}.

Status flow: pending → paid (when payment received) or overdue (when past due and unpaid).

Example: Invoice structure

Invoice INV-2024-001
Client: John Doe
Due: 2024-02-15
Status: Pending

Items:
- Basic Hosting (Monthly)     £9.99
- Domain: example.com (1 yr)  £12.99
-----------------------------------
Total: £22.98

How to set up

  1. Configure numbering in Admin → Settings → Numbering: prefix (e.g. INV), format (e.g. {PREFIX}-{YEAR}-{NUMBER}), next number.
  2. Invoices are created automatically when clients place orders or when cron generates renewals.
  3. View and manage in Admin → Invoices.

Was this helpful?