How it works

The website and the Chrome extension use the same engine, so the same input gives the same result.

On the website

  1. Open the Invoice Checker.
  2. Upload or drop an image, PDF or XML — or paste a screenshot or the QR text.
  3. Read the verdict, the extracted data and the level of verification reached.
  4. Copy the data or export a report.

With the Chrome extension

  1. Open an invoice — WhatsApp Web, Gmail, a web page or a PDF.
  2. Click the extension icon and press “Scan Invoice”, or use “Select area”, or right-click an image.
  3. Select a number on any page and right-click it to calculate VAT.

What is checked

Structure

The QR text is Base64 TLV with tags 1–9 as specified: one-byte tag and length, UTF-8 text, plausible binary fields.

Data

The VAT number has 15 digits, the timestamp is a real date, amounts are plain decimals, and VAT is consistent with the total.

Signature

For Phase 2 QR codes, the ECDSA signature is verified against the invoice hash and the public key inside the QR.

Invoice document

If you add the signed XML (or open a PDF/A-3 invoice), the invoice hash is recomputed, the signature and certificate are verified, and every field is compared with the QR.

Official verification

Not available: only ZATCA can confirm that it received an invoice. The tool says so and points you to the official channels.

Tips for a clear scan

  • Zoom in so the QR code is at least about 150 pixels wide.
  • Avoid glare and heavy compression; use the original file when you can.
  • For a page with several QR codes, you will be asked to pick the invoice one.
  • Add the invoice XML for the strongest check.

Try it now