ZATCA Sets TLV-Encoded QR Code Rules for Saudi E-Invoices in Phases 1 and 2
Saudi Arabia's Zakat, Tax and Customs Authority requires e-invoice QR codes to be cryptographic data structures rather than simple links. QR data must be organized using Tag-Length-Value encoding and then converted to a Base64 string before submission. Phase 1 requires five tags covering seller name, VAT number, timestamp, invoice total, and VAT total. Phase 2 adds four cryptographic tags for the invoice hash, digital signature, public key, and certificate signature. A developer guide published on DEV Community includes a TypeScript implementation and notes common rejection errors such as BR-KSA-26 and BR-KSA-27 when the TLV structure is non-compliant.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.
Discussion (0)
Log in to join the discussion and vote.
Log in