When to Use a Manual Invoice
Manual invoices are for charges that fall outside the normal order and renewal flow:
- One-off setup fees or configuration work
- Consulting or professional services
- Custom hardware or software licensing
- Corrective charges (underbilling a previous invoice)
- Any service not provisioned through Commerce
Manual invoices are not linked to a service, so paying them does not trigger provisioning. If you need to provision a hosting account alongside a manual invoice, handle the provisioning separately from Admin → Services.
Creating an Invoice
- Go to Admin → Invoices → New Invoice
- Select the client from the dropdown (required)
- Set the currency — defaults to your system default currency
- Set the due date — defaults to today + your configured payment terms (e.g. 14 days)
- Add line items (see below)
- Optionally add notes visible to the client on the invoice and PDF
- Choose to Save as Draft or Publish
[!TIP] Use Save as Draft when you want to review the invoice before sending it to the client. Use Publish to immediately send the invoice email and make it payable in the client portal.
Adding Line Items
Each line item requires:
| Field | Notes |
|---|---|
| Description | Free text — shown on the invoice and PDF |
| Quantity | Decimal allowed (e.g. 2.5 hours) |
| Unit price | Enter in your currency's major unit (e.g. 49.99 for $49.99) |
| Tax rate | Select from configured tax rules, or leave blank for zero tax |
You can add as many line items as needed. Line items are reorderable by drag-and-drop. To remove a line item, click the trash icon on that row.
The invoice totals (subtotal, tax, grand total) update live as you add and edit line items.
[!IMPORTANT] Unit prices are stored internally as BIGINT cents. Enter prices in the normal decimal format (e.g.
99.00) — Commerce converts them before storing. Do not enter cent values directly.
Tax on Manual Invoices
Tax rates are pulled from the tax rules configured in Admin → Settings → Tax. When you select a tax rate on a line item:
- The rate is applied to that line item only
- Multiple line items can have different rates
- The totals section groups tax by rate
If your tax rules use automatic detection (by client country), you can set the rate to "auto" and Commerce will apply the correct rate based on the client's billing address.
Draft vs. Published
| State | Client can see it? | Client can pay it? | Invoice email sent? |
|---|---|---|---|
| Draft | No | No | No |
| Published | Yes | Yes | Yes (on publish) |
Publishing a draft sends the Invoice Created email to the client immediately. If the email template is not configured, no email is sent — the invoice is still visible in the client portal.
Notes Field
The notes field supports plain text. It appears:
- On the invoice detail page in the client portal
- On the generated PDF (below the totals section)
Use notes for context the client needs: project reference numbers, purchase order numbers, work descriptions, or payment instructions specific to this invoice.
After Creation
Once published, the invoice behaves identically to any other unpaid invoice:
- The client sees it in Client → Invoices
- The client can pay using any enabled payment gateway
- The
commerce:mark-overdue-invoicescommand will move it tooverdueif unpaid past the due date - An admin can record a manual payment or cancel it at any time