Sales and Purchase Invoices
Invoices are both operational documents and accounting documents. Create them from their source documents whenever possible so quantities, rates, taxes, and traceability remain connected.
Source document comparison
| Invoice | Preferred source | Direct creation |
|---|---|---|
| Sales Invoice | Delivery Note or Sales Order | Supported |
| Purchase Invoice | Goods Received Note or Purchase Order | Supported |
Confirm whether stock already moved through Delivery Note or GRN. Creating an invoice does not replace the physical stock workflow.
Sales Invoice
Sales Invoice
Go to: Financials → Sales Invoice
Choose the source
Click Create Sales Invoice. Select a Delivery Note or Sales Order when invoicing existing work, or continue with a direct invoice.
Complete basic information
Select Customer, dates, currency and exchange rate. Leave Document Number empty when automatic numbering is used.
Review items and accounting
Confirm item, unit, quantity, price, income account, Cost Center, Project, warehouse/batch information where shown, and line totals. For a batch-tracked item you can split one line’s quantity across multiple batches using its batch allocation control. Use Import CSV / Export CSV on the item table toolbar, or the item search box, to bulk-manage rows on invoices with many lines.
Add taxes, charges, and discount
Select each rule and its account. Review whether discount is percentage or amount and whether it applies before or after tax.
Review the remaining tabs
Confirm addresses, accounting, payment, bank details, terms, transport, source documents, associations, and attachments as applicable.
Save, assign, and approve
Save Draft, assign the invoice if required, then use the approval action. Approval moves the invoice to its unpaid state and posts the accounting entries.
Sales Invoice fields
| Section | Important fields |
|---|---|
| Basic Information | Customer, Invoice Date, Due Date, Document Number, Currency, Exchange Rate |
| Items | Item, Custom Code, Unit, Conversion Factor, Quantity, Rate, Amount, account and dimensions |
| Taxes | Tax, Rate, Amount, Tax Account |
| Charges | Charge, Rate, Amount, Charge Account |
| Discount & Summary | Discount Type, Discount %, Discount Amount, totals |
| Payment | Payment terms, advances, outstanding and settlement details |
| Accounting | Receivable/income accounts, Cost Center and Project |
| Other tabs | Addresses, bank, terms, transport, source and child documents, associations |
Sales Invoice statuses
| Status | User meaning |
|---|---|
| Draft | Editable and not posted |
| Unpaid | Approved, posted, and fully outstanding |
| Partially Paid | Some amount has been allocated |
| Paid | Outstanding amount is settled |
| Overdue | Outstanding after Due Date |
| Credit Note Issued | A return/credit note has been issued against it |
| Return | This document reverses all or part of an earlier invoice |
| Cancelled | Cancelled according to permitted document rules |
Accounting effect
An approved Sales Invoice normally debits the customer receivable and credits income, tax, and charge accounts according to the document rows. Payment Entry later reduces the receivable and moves value into Cash or Bank.
Return and credit note
Use the invoice’s return action so ERPX links the new document through Return Against. Review negative quantities and amounts, currency, tax, and accounts. The return cannot exceed the original invoice quantity. Approving the credit note requires its linked Delivery Note return to already be approved — “Approve delivery note [number] before approving this credit note — it was created to reverse the delivered stock and still needs to be approved.”
Withholding Tax (WHT/TDS/PAYE)
Turn on Include Withholding Tax on a Sales or Purchase Invoice to add a dedicated WHT/TDS/PAYE card, separate from the regular Taxes table.
Turn on withholding tax
On the invoice, enable Include Withholding Tax. The WHT/TDS/PAYE card appears with Add Withholding Tax.
Add the withholding row
Click Add Withholding Tax, select the withholding Type from Select WHT/TDS, and enter its Rate %. Only one withholding row is allowed per invoice.
Save
Withholding tax is tracked for reporting only — it does not reduce the invoice’s Grand Total, is not posted to the ledger, and does not print on the invoice PDF. It exists so you can reconcile what a customer or supplier withheld against what they remitted.
Withholding tax types are configured as a Tax Type in Tax and Charges setup, but a withholding type can only be added through this card — not through the regular Taxes table. Once a withholding row is marked paid, its type and rate can no longer be changed or removed.
| Rule | Message |
|---|---|
| More than one withholding row | “Exactly one withholding tax is required when WHT/TDS is included” |
| Rate is 0 or over 100 | “Each withholding tax must have a rate greater than zero and not more than 100” |
| A withholding type added to the regular Taxes table | “Withholding tax ‘[type]’ must be added in the Withholding Tax section” |
| Editing a paid withholding row | “A paid withholding tax type or rate cannot be changed” |
| Removing a paid withholding row | “A paid withholding tax cannot be removed” |
Withholding rows are excluded from the Sales Tax Report and Purchase Tax Report.
Create Tax Entry
Once an invoice has at least one tax row with a rate or amount greater than zero, use Create → Tax Entry on the invoice to open a Journal Entry pre-filled as a tax entry for that document, instead of building the journal entry from scratch.
Budget checks
Purchase Invoices can be checked against an active Project or Cost Center Budget. A Block Transaction budget stops the action; Warn Only requires confirmation; No Enforcement records utilization without blocking.
Payment and investigation
- Create or review settlement in Payment.
- Use Create → Tax Entry on the invoice to post its tax directly to a Journal Entry.
- Trace source and downstream documents in Transaction Chain.
- Review unpaid and aging balances in Ledger Reports.
- Open the invoice’s Accounting Ledger action to see its exact posting.