E-invoicing overview
What the E-invoicing module does for UAE (PINT AE) and Saudi (ZATCA) invoices, the key terms, and what is and is not ready for production.
What E-invoicing is for
When a customer invoice or credit note is posted, E-invoicing builds the official electronic document for the country, sends it through a provider and records the answer. It keeps the exact documents sent and received as evidence, repeats failed sends safely, and helps you correct what an authority or provider refuses.
Two formats are built:
| Country | Format | How it works |
|---|---|---|
| UAE | PINT AE (Peppol-based) | Exchange and report after issue: the invoice is legally issued when you post it, then sent through an accredited service provider |
| Saudi Arabia | ZATCA UBL 2.1 | Standard (business) invoices are cleared by ZATCA before they count as issued. Simplified (consumer) invoices are issued at once and reported within 24 hours. Documents are signed and carry a QR code |
Other GCC countries can be chosen on a profile but have no format yet.
E-invoicing is not approved for production yet. The built-in sandbox provider works end to end for testing. Sending to a real authority or provider needs that party's certification and acceptance evidence, which the production gate asks for. Official schema validation and certification have not been done.
Key terms
- Submission is one e-invoice for one invoice and profile. A retry is an attempt inside the same submission, never a new row.
- Status: Pending (not sent), Queued, Submitted (awaiting answer), Accepted, Rejected, or Status unknown (no confirmed answer, for example after a timeout).
- Legal state is separate from status: for example Issued, Pending clearance, Cleared, Not cleared or Reported.
- Profile describes one country's document for one customer type: format, flow, provider, dates and conformance checks. Profiles are versioned.
- Provider is where documents go: the sandbox, ZATCA Fatoora, or an accredited UAE service provider.
- Onboarding is the company's registration with one provider in one environment (Test or Production).
- Credential is a token, signing key or callback secret. Secrets are stored in a vault and never shown again.
- Canonical invoice is the frozen copy of the invoice used to build the document, so later edits never change what was sent.
The core safety rules
- After a timeout the system asks the provider what happened before sending anything again. It never sends a second invoice for the same document. If the provider is confirmed not to have received it, the identical bytes are resent.
- A legally issued document is corrected with a credit note, not edited.
- A posted invoice that was sent cannot be reversed in Accounting; issue a credit note.
- Sensitive configuration (providers, profiles, onboarding, credentials, outage contingencies) needs a second person. Whoever prepared it cannot approve it.
Who uses it
| Role | Permission | Work |
|---|---|---|
| Viewer | einvoicing.view | Reads everything |
| Operator | einvoicing.operate | Submits, retries, asks the provider, acknowledges alerts |
| Tax reviewer | einvoicing.repair | Rebuilds after repair, corrects by credit note |
| Administrator | einvoicing.configure | Settings, providers, profiles, lists |
| Custodian | einvoicing.secret | Binds credentials |
| Approver | einvoicing.activate | Reviews and activates configuration and onboarding |
| Inbound clerk | einvoicing.inbound | Uploads supplier e-invoices |
| Auditor | einvoicing.audit | Reads events and downloads evidence |
Connections to other modules
- Sales / Billing supplies posted invoices and credit notes. A smart button on the document shows the e-invoice status.
- Tax supplies tax categories and rates; Contacts supplies customers, suppliers and addresses.
- Point of sale receipts become simplified invoices for Saudi companies.
- Billing receives a draft supplier bill from a received e-invoice. A person posts it.
Start with Start with the sandbox.