What is inside an invoice QR code?

An e-invoice QR code is not a picture and not a link — it is a Base64 string encoded in TLV encoding: every field is written in three parts — a tag that identifies it, a length in bytes, then the value. This tool decodes that and shows you the fields exactly as the seller's system stored them.

How do you tell Phase 1 from Phase 2?

The difference shows in the number of fields, not in how the code looks:

  • Phase 1 — five fields: the seller's name, their VAT number, the invoice date and time, the total including VAT, and the VAT amount. Data only, with no cryptographic proof.
  • Phase 2 — adds three fields: the invoice hash, the digital signature and the public key of the business's stamp. Their presence means the invoice came from a system connected to the Fatoora platform.
  • A ninth field — the Authority's signature on the public key. It appears on a tax invoice between businesses, because those go through prior clearance by the Authority, and not on a simplified tax invoice, which is reported within 24 hours.

So if you scan an invoice from your supplier and find only five fields, it was most likely issued by a system that has not moved to Phase 2 yet. That is their concern rather than yours, but it is a useful signal before you rely on their invoices to deduct input VAT.

Why the reading happens in your browser

What you are scanning is usually a real invoice carrying a business name, its VAT number and its amounts. There is no need for that data to pass through anyone's server, so this tool was built to run entirely inside your page: the image is analysed in the browser, the camera is never recorded, and no request is sent when you scan.

The code is not the whole invoice

A sound Phase 2 code does not necessarily mean the Authority accepted the invoice: full cryptographic verification needs the invoice XML file in UBL 2.1 format, not the code on its own. The code tells you what the issuer claims; acceptance is settled on the Fatoora platform. If you are the issuer, ZATCA Tools signs your invoices and sends them to the Authority on your behalf.