Skip to content

Dynamo. The business engine.

Guide

The ZATCA QR code: what it contains and how to check it

The fields inside the QR code on a Saudi tax invoice, how they are encoded, what Phase 2 adds, and how to read one and check it against the invoice.

Updated 24 October 20263 min readFacts checked on 10 October 2026

In short

  • A simplified tax invoice in Saudi Arabia must carry a QR code.
  • The code holds the seller's name, VAT number, invoice time, total including VAT and the VAT.
  • The fields are written as tag, length and value (TLV) and encoded in Base64.
  • Phase 2 adds the invoice hash, its signature, the public key and the stamp signature.
  • In DynamoOS, Dynamo Finance prints the QR code on simplified invoices and point of sale receipts.

Free tool

Work out your own figures in seconds, free and without signing up.

Open the free tool

What is the ZATCA QR code?

Every simplified tax invoice in Saudi Arabia, the kind issued to a consumer, must carry a QR code. The code holds the invoice's key details in a format ZATCA defines, so anyone with a phone can check who issued the invoice, when it was issued, its total and how much VAT it includes, without calling the seller.

What does the QR code contain?

Phase 1 invoices carry the first five fields. Invoices issued in Phase 2, the integration phase, carry all nine. Each field has a fixed number, called its tag:

TagFieldPhase
1Seller's name1 and 2
2Seller's VAT registration number1 and 2
3Date and time of the invoice1 and 2
4Invoice total including VAT1 and 2
5VAT total1 and 2
6Hash of the invoice2
7Signature of the invoice2
8Public key2
9ZATCA's signature of the cryptographic stamp (simplified invoices)2

How is the data encoded?

Each field is written as its tag number, the length of its value and the value itself, a format called TLV, for tag, length and value. The fields are joined one after another and the result is encoded in Base64. That Base64 text is what the QR code holds. Arabic names are stored in UTF-8, so a length counts bytes.

How do you read and check a ZATCA QR code?

Scan the code and copy the text it holds, decode the Base64 text, then read the fields one by one: tag, length, value. Compare the seller's name, VAT number, date, total and VAT with what is printed on the invoice. If any of them differ, ask the seller for a corrected invoice.

  1. Scan the QR code with a phone or a QR app and copy the text it holds.
  2. Decode the text from Base64 into bytes.
  3. Read the first byte as the tag, the next as the length, then that many bytes as the value, and repeat.
  4. Compare the seller's name, VAT number, date and time, total and VAT with the printed invoice.
  5. Check the VAT number: 15 digits, starting and ending with 3.

What changes in Phase 2?

In Phase 2 the invoicing software adds four fields: the invoice hash, its signature, the public key and, on simplified invoices, ZATCA's signature of the stamp. Together they show that the invoice came from an e-invoicing unit onboarded with ZATCA and that it has not been changed since it was issued.

How DynamoOS handles it

Dynamo Finance creates the QR code on every simplified invoice and point of sale receipt, with the fields of the phase your company is in, and prints it on the Arabic and English tax invoice. ZATCA Phase 2 is built in, and it goes live for your company after your own FATOORA onboarding.

Questions

Still have a question?

Talk to us
  • Why does my phone show random letters when I scan the code?

    The code holds Base64 text that encodes binary fields. Decode it to read the seller's name, VAT number, time, total and VAT, or use a reader made for ZATCA codes.

  • Can I make the QR code in a design tool?

    A Phase 1 code only needs the five fields, but a Phase 2 code includes a signature that only your onboarded invoicing software can make. Issue it from the software that issues the invoice.

Sources

Read on 10 October 2026. Official sources first; advisers' and survey summaries are named as such.

  1. ZATCA, E-invoicing security features implementation standards (PDF) (opens in a new tab)
  2. ZATCA, Detailed guidelines for e-invoicing (PDF) (opens in a new tab)
  3. ZATCA, E-invoicing detailed technical guidelines (PDF) (opens in a new tab)

Issue invoices with the right QR code from day one.

Start a 14-day free trial with every app. The Saudi Arabia pack is included, with e-invoicing built into Dynamo Finance.