⚖️ Saudi Arabia
Updated
The LocalizationSaudiArabia model, Customization layer: KSA VAT and the
ZATCA / Fatoora e-invoice.
← Localizations · User: the e-invoice · Analyst: the package scope
Pages#
- ZATCA / Fatoora — the contours and the test servers, the official specifications, onboarding (CSR → OTP → CSID), the known defects and what has already been closed.
How it differs from the Ukrainian package#
The comparison is worth making: the two packages solve one task differently, and the difference is not one of style but of what the country allows.
| KSA | Ukraine | |
|---|---|---|
| Who builds the XML | we do (UBL 2.1) | the operator |
| Who signs | we do (XAdES, ECDSA through ICredentialSigner) |
the operator |
| When the answer comes | on the same submission | later, as a separate receipt |
| What a successful send means | Cleared / Reported |
only "accepted for processing" |
Hence the different shape of the code: in KSA the host signs and waits for the
answer, in Ukraine the envelope goes into a queue and is closed by a second
event. What they have in common is TaxDocument, TaxSubmission and a single
point where the outcome is applied (ITaxDocumentOutcome), which sets the
subtype, the authority and the reason for a refusal.
The other KSA services — GOSI as a report to the fund, Mudad, Qiwa, Nafath, SADAD — are not in the package.
Same topic for other readers: Analyst