Issue Saudi ZATCA standard and simplified invoices

How Saudi invoices differ from UAE ones: seller details, clearance, reporting within 24 hours, the counter and hash chain, and the QR code.

Required permission: einvoicing.configure (seller details); einvoicing.operate (send)

Before you begin

  • The company country is Saudi Arabia and its VAT number is 15 digits that start and end with 3.
  • Settings hold the seller details ZATCA needs (see below).
  • A Saudi profile is Active: Saudi standard (clearance) and Saudi simplified (reporting) are supplied.
  • Sending to the real ZATCA portal needs a compliance certificate (CSID) and, later, a production CSID. These cannot be requested from the screen yet. Test everything with the sandbox first, and treat the real portal as not available yet until your administrator completes certification.

Enter the seller details

  1. Open E-invoicing > Configuration > Settings.
  2. Enter Commercial registration (KSA CRN): exactly 10 digits. If blank, the company's trade licence number is used.
  3. Enter Building number: 4 digits.
  4. Enter District and Postal code (5 digits). Blank postal code falls back to the company PO box.
  5. Enter Additional number if your company rules require it.
  6. Save.

Wrong values block every Saudi invoice, for example "Seller CRN 'AB123' is not a 10-digit commercial registration number." or "Seller district is required by KSA ZATCA standard tax invoice (clearance)."

Standard (business) invoices

  1. Make sure the business customer has a Saudi VAT number and a Partner endpoint with building number, street, district, postal code and city.
  2. Post the invoice.
  3. The submission is created with legal state Pending clearance. It is not an issued invoice yet. The Dashboard counts it under Pending clearance.
  4. After ZATCA clears it, the legal state is Cleared. Only now does the printed invoice carry the statutory QR.
  5. If ZATCA does not clear it, the state is Not cleared. Repair it with Rebuild after repair: see Repair or correct a rejected e-invoice.

A standard invoice cannot be issued offline. If clearance is slow, an alert warns that it "is still not cleared, so it has not been issued".

Simplified (consumer) invoices

  1. Post an invoice to a consumer customer, or sell at the till.
  2. The legal state is Issued immediately. After acceptance it is Reported.
  3. The deadline to report is 24 hours from creation. While the provider is unavailable the document waits in the queue and escalates before the deadline.

Point of sale receipts become simplified invoices. Each sale is signed and numbered at once so the receipt prints the QR. A refund is a simplified credit note that names the sold ticket. Selling the same ticket twice returns the first submission. If E-invoicing is off the till receives "E-invoicing is switched off."

How the documents are built

  • Every ZATCA invoice has a counter (ICV) that goes 1, 2, 3 without gaps or repeats.
  • Each invoice records the hash of the previous one (PIH). The first uses a fixed seed.
  • The invoice is signed with the active signing key. The QR code carries the seller name, VAT number, date and time, total with VAT, VAT amount, invoice hash, signature, public key and certificate signature.
  • If you rotate the signing key, unsent documents are signed again with the new key keeping the same counter and previous hash. Documents with an unknown status are queried first.

What happens next

Cleared and reported documents keep the authority's answer, warnings and every payload. Credit notes and debit notes need a reason and the original invoice number.

Good to know

  • Buyer VAT must be 15 digits starting and ending with 3. A wrong one gives "Buyer VAT number '300000000000001' is not a 15-digit Saudi VAT number that starts and ends with 3."
  • Foreign-currency conversion of the tax total, self-billing and official ZATCA SDK validation are not available yet. The module's own checks may differ from ZATCA's validator.
  • Offline issue for simplified invoices is described in the policy but the setting is recorded only.