— Finance & Planning

Free Invoice QR Code Reader

Scan or paste the QR code from a Saudi, Portuguese or Indian invoice to read and check its tax details.

— Samples
Fields 5Problems 0Valid
Live

What is an Invoice QR Code Reader?

This invoice QR code reader decodes the tax QR codes printed on invoices and receipts in Saudi Arabia, Portugal and India, and checks them. It shows the seller, the tax numbers, the date, the totals and the VAT, field by field, from a picture of the code or the text a scanner reads out.

Saudi ZATCA codes are tag-length-value data in Base64; Portuguese codes are letter-coded fields with the ATCUD and a VAT breakdown; Indian GST codes are signed tokens from the invoice registration portal. Tax numbers are checked by their check digits or format, and totals are added up again to catch errors.

Key Features

Three Countries

Saudi ZATCA, Portuguese ATCUD and Indian GST e-invoice codes.

Tax Number Checks

Portuguese NIF and Indian GSTIN check digits; Saudi VAT format.

Totals Added Up

Portuguese VAT lines and totals recalculated.

VAT Rate Check

Saudi 15% and Portuguese 6, 13 and 23% rates.

Scan From a Picture

Open a photo of a receipt’s QR code.

Perfect for everyone

  • Accountants
  • Auditors
  • Finance teams
  • Travellers claiming VAT and developers building e-invoicing

How to Use the Invoice QR Code Reader

Open a photo of the QR code on an invoice or receipt, or paste the text from a scanner app. The fields and checks appear straight away, so you can compare the code with the printed invoice and spot a mismatch before it reaches your books.

1

Scan or Paste

A photo of the invoice’s QR code, or its text.

2

Read the Fields

Seller, tax numbers, date, totals and VAT.

3

Run the Check

Check digits, VAT rates and totals.

4

Compare With the Invoice

The code should match what’s printed.

Worked Examples

Invoice Codes, Decoded

Each row is an invoice QR code of the kind printed on Saudi, Portuguese and Indian invoices and receipts, with a few that don’t add up. Each answer is this tool’s fields or check, read straight from the code.

REF_001A Saudi simplified invoice’s QR

“ARRBbCBOb29yIFRyYWRpbmcgRXN0LgIPMzEwMTIyMzkzNTAwMDAzAxQyMDI2LTEwLTEyVDE0OjI1OjA5WgQHMTE1MC4wMAUGMTUwLjAw”

REF_002The same invoice’s VAT, checked

“ARRBbCBOb29yIFRyYWRpbmcgRXN0LgIPMzEwMTIyMzkzNTAwMDAzAxQyMDI2LTEwLTEyVDE0OjI1OjA5WgQHMTE1MC4wMAUGMTUwLjAw”

REF_003A phase 2 QR with hash and signature

“ARRBbCBOb29yIFRyYWRpbmcgRXN0LgIPMzEwMTIyMzkzNTAwMDAzAxQyMDI2LTEwLTEyVDE0OjI1OjA5WgQGMjMwLjAwBQUzMC4wMAZYTldabFkyVmlOalptWm1NNE5tWXpPR1E1TlRJM09EWmpObVEyT1Raak56bGpNbVJpWXpJek9XUmtOR1U1TVdJME5qY3lPV1EzTTJFeU4yWmlOVGRsT1E9PQdHAyhNcpe84QYrUHWav+QJLlN4ncLnDDFWe6DF6g80WX6jyO0SN1yBpsvwFTpfhKnO8xg9Yoes0fYbQGWKr9T5HkNojbLX/CEIWAswVXqfxOkOM1h9osfsETZbgKXK7xQ5XoOozfIXPGGGq9D1Gj9kia7T+B1CZ4yx1vsgRWqPtNn+I0htkrfcASZLcJW63wQpTnOYveIHLFF2m8DlCi9UeZ4=”

REF_004A Portuguese receipt’s QR fields

“A:123456789*B:999999990*C:PT*D:FS*E:N*F:20261012*G:FS 2026A/154*H:JJ37MMMM-154*I1:PT*I7:10.00*I8:2.30*N:2.30*O:12.30*Q:9OIr*R:9999”

REF_005The receipt’s totals and NIFs, checked

“A:123456789*B:999999990*C:PT*D:FS*E:N*F:20261012*G:FS 2026A/154*H:JJ37MMMM-154*I1:PT*I7:10.00*I8:2.30*N:2.30*O:12.30*Q:9OIr*R:9999”

REF_006A receipt whose total is 10 cents out

“A:123456789*B:999999990*C:PT*D:FS*E:N*F:20261012*G:FS 2026A/154*H:JJ37MMMM-154*I1:PT*I7:10.00*I8:2.30*N:2.30*O:12.40*Q:9OIr*R:9999”

REF_007A wrong seller NIF and a VAT rate that isn’t 23%

“A:123456780*B:999999990*C:PT*D:FS*E:N*F:20261012*G:FS 2026A/154*H:JJ37MMMM-154*I1:PT*I7:10.00*I8:1.30*N:1.30*O:11.30*Q:9OIr*R:9999”

REF_008An Indian GST e-invoice’s signed QR

“eyJhbGciOiJSUzI1NiIsImtpZCI6IkVEQzU3REUxMzU4QjMwMEJBOUYxNzlGQjNBQzhGRERCNUQ3RDJFMkEiLCJ0eXAiOiJKV1QiLCJ4NXQiOiI3VmQ5NFRXTE1BdXA4WG43T3NqekE0MXN2Q28ifQ.eyJkYXRhIjoie1wiU2VsbGVyR3N0aW5cIjpcIjI5QUFCQ1QxMzMyTDFaQVwiLFwiQnV5ZXJHc3RpblwiOlwiMjdBQVBGVTA5MzlGMVpWXCIsXCJEb2NOb1wiOlwiSU5WLzIwMjYvMDQxMlwiLFwiRG9jVHlwXCI6XCJJTlZcIixcIkRvY0R0XCI6XCIxMi8xMC8yMDI2XCIsXCJUb3RJbnZWYWxcIjo1OTAwMCxcIkl0ZW1DbnRcIjozLFwiTWFpbkhzbkNvZGVcIjpcIjg0NzEzMFwiLFwiSXJuXCI6XCJhNWMxMmRjYTgwZTc0MzMyMTc0MGIwMDFmZDcwOTUzZTg3MzhkMTA5ODY1ZDI4YmE0MDEzNzUwZjIwNDZmMjI5XCIsXCJJcm5EdFwiOlwiMjAyNi0xMC0xMiAxMTowNTowMFwifSIsImlzcyI6Ik5JQyJ9.cGxhY2Vob2xkZXItc2lnbmF0dXJlLW5vdC1yZWFs”

REF_009The e-invoice’s GSTINs, checked

“eyJhbGciOiJSUzI1NiIsImtpZCI6IkVEQzU3REUxMzU4QjMwMEJBOUYxNzlGQjNBQzhGRERCNUQ3RDJFMkEiLCJ0eXAiOiJKV1QiLCJ4NXQiOiI3VmQ5NFRXTE1BdXA4WG43T3NqekE0MXN2Q28ifQ.eyJkYXRhIjoie1wiU2VsbGVyR3N0aW5cIjpcIjI5QUFCQ1QxMzMyTDFaQVwiLFwiQnV5ZXJHc3RpblwiOlwiMjdBQVBGVTA5MzlGMVpWXCIsXCJEb2NOb1wiOlwiSU5WLzIwMjYvMDQxMlwiLFwiRG9jVHlwXCI6XCJJTlZcIixcIkRvY0R0XCI6XCIxMi8xMC8yMDI2XCIsXCJUb3RJbnZWYWxcIjo1OTAwMCxcIkl0ZW1DbnRcIjozLFwiTWFpbkhzbkNvZGVcIjpcIjg0NzEzMFwiLFwiSXJuXCI6XCJhNWMxMmRjYTgwZTc0MzMyMTc0MGIwMDFmZDcwOTUzZTg3MzhkMTA5ODY1ZDI4YmE0MDEzNzUwZjIwNDZmMjI5XCIsXCJJcm5EdFwiOlwiMjAyNi0xMC0xMiAxMTowNTowMFwifSIsImlzcyI6Ik5JQyJ9.cGxhY2Vob2xkZXItc2lnbmF0dXJlLW5vdC1yZWFs”

REF_010An invoice number instead of a code

“INV-2026-0412 total 1,180.00”

Country Reference

Invoice QR Codes by Country

Several tax authorities require a QR code on every invoice so that buyers and inspectors can read its key facts quickly. Each country defines its own content and encoding, and these are the three this reader decodes.

01 / SAUDI

Saudi Arabia, phase 1

Five fields in Base64 TLV: seller, VAT number, time, total and VAT.

“What is the Saudi VAT rate?”

02 / SAUDI

Saudi Arabia, phase 2

Adds the invoice hash, ECDSA signature and public key.

“What does phase 2 add?”

03 / PORTUGAL

Portugal

Letter-coded fields joined by asterisks, including the ATCUD code.

“What does B:999999990 mean?”

04 / PORTUGAL

Portugal VAT breakdown

Bases and VAT for the reduced, intermediate and normal rates.

“What is the mainland normal rate?”

05 / INDIA

India

A JSON Web Token signed by the invoice registration portal.

“What identifies an e-invoice?”

Inside a ZATCA QR Code

A ZATCA code is a short run of numbered fields, each a tag byte, a length byte and the value, encoded in Base64 so that it fits a QR code. Knowing the tags helps when a code won’t scan or a value looks wrong on the receipt.

Tags 1 and 2

The seller’s name as registered, and its 15-digit VAT registration number.

Tag 3

The date and time the invoice was issued, in ISO 8601 format.

Tags 4 and 5

The invoice total including VAT, then the VAT amount on its own.

Tags 6 to 8

In phase 2, the invoice’s hash, its digital signature and the signing public key.

Tag 9

For simplified invoices in phase 2, the tax authority’s stamp signature.

What the ATCUD Is

Portuguese invoices carry an ATCUD, a unique document code that ties each invoice to a series registered with the tax authority. It appears in the QR code’s H field and printed on the invoice above the code.

Validation Code

The part before the hyphen identifies the invoice series registered with the tax authority.

Sequence Number

The part after the hyphen is the invoice’s number within that series.

Hash Characters

Field Q holds four characters of the invoice’s signature hash, proving it came from certified software.

Working With Invoice Codes

Habits that make invoice QR codes useful in bookkeeping and audits rather than decoration on a receipt. They take seconds per invoice and save much longer queries later.

Tip 01

Match Code and Paper

The code’s totals should equal the printed totals.

Tip 02

Keep the Original

A photo of the receipt is evidence; the decoded text alone isn’t.

Tip 03

Check Before Claiming

Confirm VAT numbers before reclaiming VAT.

Tip 04

Mind Rounding

Totals within a cent are rounding; more is an error.

Tip 05

Signatures Need Keys

Verifying signatures needs the authority’s certificate.

How Tax Numbers Are Checked

A mistyped tax number can make an invoice useless for reclaiming VAT. These are the checks the reader runs, none of which needs to contact a tax authority.

Portuguese NIF

Nine digits; the last is a mod-11 check digit over weights 9 down to 2.

Indian GSTIN

Fifteen characters: state code, PAN, entity number, Z and a mod-36 check character.

Saudi VAT Number

Fifteen digits that begin and end with 3; there’s no public check digit.

Who Reads Invoice Codes

Anyone who handles invoices from these countries and wants to read or check them quickly, without logging in to a tax portal or retyping figures from a crumpled receipt.

Accountants

Capture invoice details without retyping.

Auditors

Spot invoices whose code doesn’t match the paper.

Travellers

Read receipts kept for VAT refunds.

Suppliers

Check the codes your invoicing software prints.

Developers

Debug e-invoicing integrations.

Invoice Code Pitfalls

The faults that turn up in invoice codes, often from billing software that was set up in a hurry or never updated when the rules changed. Each one below shows up in the check.

Tip 01

Wrong VAT Rate

A product taxed at the wrong rate shows up in the rate check.

Tip 02

Totals That Don’t Add Up

Rounding each line differently from the total.

Tip 03

Placeholder Tax Numbers

Test numbers left in production invoices.

Tip 04

Cut-Off Codes

A code printed too small or cropped can’t be read in full.

Tip 05

Missing Fields

Older software that omits newly required fields.

Frequently Asked Questions