India's GST e-invoicing: who needs it, and what an IRN is
India does not use the European format. Taxpayers above a turnover limit register each invoice with the government's invoice registration portal (IRP), which returns an Invoice Reference Number (IRN) and a signed QR code. Below: the thresholds as guides report them, and two free local checks, a GSTIN check and an IRN calculator.
The rules (as secondary guides report them)
| Item | What guides say |
|---|---|
| Who | Aggregate turnover above ₹5 crore in any financial year since 2017-18, counted across all GSTINs under one PAN; mandatory since 1 Aug 2023. Reported exemptions include banks, insurers, goods transport agencies and some other classes. |
| Which documents | Business-to-business invoices, debit and credit notes, and exports. Business-to-consumer sales are generally not registered, though a dynamic QR code applies above a higher limit. |
| 30-day window | From 1 Apr 2025 the portal is reported to refuse documents more than 30 days old for taxpayers with turnover of ₹10 crore or more. |
| Format | The government's INV-01 JSON schema, sent to the IRP directly or through a GST suvidha provider; the portal returns the IRN, acknowledgement number and signed QR code. |
Sources are accounting-software and tax-commentary sites, which disagree in places (one table gives a different 30-day limit). A lower threshold has been discussed but, in the sources read, not notified. These are not the CBIC or GSTN notifications. Confirm there. A summary, not tax advice.
Check a GSTIN
Tests the 15 characters: state code, PAN shape, the Z, and the check character. It does not look anything up.
Calculate an IRN
Runs in your browser; nothing is sent. The recipe is the one public guides describe and reproduces their worked sample (29AAFCC9980M1ZR, 2019-20, INV, 2019-20/KA/1). The portal's own answer is the one that counts.
Pre-check an INV-01 payload
Paste the JSON you plan to send to the IRP. It runs in your browser; nothing is sent. It names the field for each fault: required blocks, GSTINs, PIN codes, dates, HSN length, GST slab, IGST versus CGST+SGST by place of supply, line arithmetic and the totals. Rules are from memory of the public schema and secondary guides, not the IRP specification, so a clean result is not an IRN.
What this tool does not cover
It checks an INV-01 payload only against the rules above (not the IRP's own schema), does not talk to the IRP, and cannot confirm a registration. The EN 16931 checker on the main page applies to European and Peppol invoices and does not apply to Indian IRP submissions.
Other countries: all side by side, Germany, France, Belgium, Poland, Croatia, Spain, Italy, the Netherlands, Romania, Greece, Bulgaria, Portugal, the UK, the UAE, Saudi Arabia, Malaysia, Hungary, Denmark, Estonia, Latvia, Slovenia, Serbia, Czech Republic, Slovakia, Lithuania, Luxembourg, Malta, Norway, Ireland, Singapore, Australia, or the EU e-invoicing mandate checker. Create an invoice, or see the rule reference.
Common questions
When is e-invoicing mandatory under GST in India?
Per secondary guides, a business whose aggregate turnover in any financial year since 2017-18 exceeded ₹5 crore must issue e-invoices for business-to-business supplies, exports and similar documents, a limit in place since 1 August 2023. From 1 April 2025 the invoice registration portal is reported to refuse documents older than 30 days for taxpayers with aggregate turnover of ₹10 crore or more. Some classes of taxpayer are exempt. Sources here are commentary, not the CBIC notifications, so confirm against them. This is a summary, not advice.
What is an IRN?
The Invoice Reference Number is a 64-character hexadecimal SHA-256 hash that the invoice registration portal (IRP) returns for each registered document. Guides describe it as the hash of the supplier GSTIN, the financial year, the document type (INV, CRN or DBN) and the document number joined in that order. The calculator on this page reproduces one worked sample from a public guide; the portal's own answer is the one that counts.
Does this checker validate India's e-invoice JSON?
No. India uses its own INV-01 JSON schema submitted to the IRP, not EN 16931. This page only checks the shape and check character of a GSTIN and the document-number rule, and calculates the IRN hash locally. A clean result does not mean the IRP will accept the invoice.
Does the GSTIN check tell me a supplier is registered?
No. It tests the fifteen-character shape and the check character, which catches most typing mistakes. Whether the number is registered, active or belongs to your supplier can only be checked on the GST portal.
More countries
Austria Brazil Cyprus Finland Japan Mexico Colombia Chile Peru Argentina Sweden Switzerland Turkey Uruguay Paraguay Ecuador Indonesia Vietnam