Free Tool Desk

GST e-Invoice QR Code Decoder & Checker

Decode the signed QR code on an Indian GST e-invoice from an image or PDF: GSTIN, invoice number, date, value, IRN and more, with format checks. Signature check only with a key you supply. In your browser.

Free to use No sign-up required Nothing is uploaded

The QR code on an invoice registered on India's e-invoice system is not a link: it holds a signed token (a JWT in JWS form) issued by the Invoice Registration Portal (IRP). Inside the token are the main invoice details, including the seller's GSTIN, the document number and date, the total value and the Invoice Reference Number (IRN). This decoder reads the QR code from an image or PDF, unpacks the token and lays the details out, and checks that the fields look right.

It decodes and checks the format. It is not connected to the GST Network, so it cannot tell you whether an invoice is registered, cancelled or valid. The signature can be checked only if you paste the matching public key or certificate. Everything runs in your browser.

Loading the tool…

Overview

About GST e-Invoice QR Code Decoder & Checker

What is inside. The QR text has three Base64URL parts separated by dots: a header (algorithm RS256 and a key identifier or thumbnail), a payload and a signature. The payload carries the invoice details in a "data" claim, with fields such as SellerGstin, BuyerGstin, DocNo, DocTyp (INV, CRN or DBN), DocDt (DD/MM/YYYY), TotInvVal, ItemCnt, MainHsnCode, Irn and IrnDt, and an issuer claim (iss). The decoder shows every field with its meaning, the header and the claims.

Format checks. GSTINs are checked for the 15-character pattern and the mod-36 check character, and the state code is shown; a buyer GSTIN can also be URP (unregistered person). The IRN must be a 64-character hexadecimal hash, the document type one of the known three, the date in DD/MM/YYYY form and the total value a number. A QR text that is not a three-part JWT, such as a plain UPI payment code, is refused with an explanation.

Signature. The token is signed with RS256 (RSA with SHA-256). No key is built into this tool, because the right key depends on the IRP and on the period and an outdated key would give a wrong answer. If you have the current public key or the certificate (PEM) from an official source, paste it and the decoder checks the signature with the browser\'s Web Crypto API and tells you whether it matches. A match shows the data was signed by the holder of that key. It does not show that the key is the official one, or that the invoice exists on the GST portal.

Where to verify. The details, including the IRN, can be looked up on the official e-invoice portal. This tool does not contact it, and no invoice data leaves the browser.

Compatibility

Supported Formats

PDF (up to 50 MB, first 40 pages searched), PNG, JPEG and WebP images (up to 30 MB), or pasted text. The QR must contain a signed JWT in compact form. Optional signature check with an RSA public key or X.509 certificate in PEM form (never a private key).

Guide

How to Use GST e-Invoice QR Code Decoder & Checker

  1. Drop a PDF or an image of the e-invoice, or paste the long text from the QR code.
  2. Read the invoice details, the token header and the format checks.
  3. Optionally open "check the signature" and paste the public key or certificate you have, then decode again.
  4. To confirm that an invoice is registered, use the official GST e-invoice portal.

Highlights

Features

  • All invoice fields GSTIN, document number, type, date, value, items, HSN, IRN and IRN date.
  • Format and GSTIN checks Pattern and check character, IRN length, date and number forms.
  • Header and claims Algorithm, key identifier and issuer as written in the token.
  • Optional RS256 check With a public key or certificate you supply, never a private key.
  • Stays in your browser No upload and no connection to any tax portal.

Applications

Use Cases

  • Reading the seller, number, date and value from the QR code of a purchase invoice
  • Checking that the QR on a PDF carries the same GSTIN and total as the printed invoice
  • Finding the IRN to look up an invoice on the portal
  • Testing the QR output of billing software
  • Understanding what a signed e-invoice QR contains

Good to Know

Limitations

This tool does not guarantee that an invoice is valid in GSTN: it is not connected to it and cannot say whether the IRN is registered, active or cancelled. A decoded QR code with correct-looking fields can still belong to a forged or cancelled invoice. Different IRPs have used different keys over time, so signature checking needs a key you obtained yourself, and a match does not authenticate the key.

The field names and format checks follow the e-invoice schema as documented publicly by the system operators and their API providers; the description was checked on 6 October 2026 and can change. The GSTIN check character catches typing errors, not forged numbers.

This tool runs entirely in your browser — your file is never uploaded to our servers. See our Privacy Policy for full details.

Support

Frequently Asked Questions

Is the invoice uploaded anywhere?

No. The QR code is decoded in your browser. The invoice data and any key you paste are not sent to our server.

Can this tell me whether an invoice is valid on the GST portal?

No. It is not connected to the GST Network. It decodes the QR and checks the format. Use the official e-invoice portal to look up an IRN.

Why is the signature not checked automatically?

The key to use depends on the Invoice Registration Portal and on the period, and a key built into a tool can be outdated. If you paste the current public key or certificate yourself, the decoder checks the RS256 signature.

What does a signature "match" prove?

That the QR data was signed by the holder of the key you pasted and was not changed. It does not prove the key is the official IRP key or that the invoice is registered.

My QR code is a UPI payment code, not a JWT. Why is it refused?

UPI codes are payment requests, not signed invoice tokens. A GST e-invoice QR is a long three-part token separated by dots.

What is URP in the buyer GSTIN?

URP stands for unregistered person. It is the accepted value when the buyer has no GSTIN.

Keep Going

Related Tools