India's GST e-invoicing system has transformed how B2B transactions are recorded and reported. At its core lies the Invoice Reference Number (IRN) — a 64-character digital fingerprint that validates every qualifying invoice through the Invoice Registration Portal (IRP). Introduced in October 2020 for large taxpayers, the mandate has progressively expanded and now applies to all GST-registered businesses with an Annual Aggregate Turnover (AATO) above ₹5 crore (effective August 2023).
For CA firms managing multi-client GST compliance, understanding IRN generation, common errors, and ITC implications is non-negotiable. A missed or invalid IRN doesn't just create a compliance headache — it can block ₹lakhs of legitimate input tax credit for your client. This step-by-step guide covers everything you need to stay audit-ready in 2026.
Who Must Generate e-Invoices?
The e-invoicing mandate applies to registered taxpayers (excluding certain notified categories) with AATO above ₹5 crore. The following document types are covered:
Applicable transactions:
- B2B supply of goods or services
- Exports (with or without payment of tax)
- Supplies to SEZ units or developers
- Deemed exports
- Credit Notes and Debit Notes linked to covered B2B invoices
Exempted categories (as of 2026):
- Banking companies, insurance companies, and NBFCs
- Goods Transport Agencies (GTA) opting for 12% GST
- SEZ units in their capacity as suppliers
- Government departments and local authorities
- Passenger transportation services
Note: B2C invoices are not currently covered under mandatory IRN generation. However, businesses with AATO > ₹500 crore must display a dynamic QR code on B2C invoices above ₹500.
Step-by-Step: How to Generate an IRN
Step 1 — Prepare the Invoice JSON
The IRP accepts invoices in a standardised JSON schema (e-invoice schema version 1.1 as prescribed by GSTN). Your accounting software or ERP must export the invoice in this format, including:
- Supplier GSTIN, legal name, trade name, and address
- Buyer GSTIN, trade name, address, and place of supply (state code)
- Invoice number, invoice date, and document type (INV/CRN/DBN)
- Line-item details: HSN/SAC code, description, quantity, unit price, and taxable value
- Tax breakup: CGST, SGST, IGST, and applicable cess
- Total invoice value in INR
For example, a ₹1,00,000 taxable B2B invoice attracting 18% IGST will carry TaxableValue: 100000, IgstAmt: 18000, and TotInvVal: 118000 in the JSON payload.
Step 2 — Submit to the IRP
You can submit the JSON payload to the IRP through three channels:
- 1Direct API integration — recommended for businesses or CA firms processing 500+ invoices per day
- 2GSP (GST Suvidha Provider) route — via your accounting or ERP software that has an embedded GSP connection
- 3IRP web portal — suitable for manual or low-volume submission during onboarding or testing
Step 3 — Receive the IRN and QR Code
On successful schema and GSTIN validation, the IRP signs the invoice and returns:
- IRN — a 64-character unique hash generated using SHA-256 of GSTIN + document number + financial year + document type
- Signed QR code — a digitally signed string containing key parameters (GSTIN of supplier and buyer, IRN, invoice date, value, and HSN)
- Acknowledgement Number (Ack No.) and Ack Date
Both the IRN and the signed QR code must appear on all printed or electronic copies of the invoice issued to the buyer. GST officers can scan the QR code to instantly verify invoice authenticity during audits or scrutiny proceedings.
Step 4 — Auto-population into GSTR-1
Once an IRN is generated, GSTN auto-populates the invoice details into:
- GSTR-1 — Table 4 (B2B invoices), Table 6A (exports), or Table 9B (credit/debit notes)
- GSTR-2B of the buyer — for ITC eligibility on the recipient side
This auto-population eliminates manual data entry in GSTR-1 for e-invoiced transactions, significantly reducing filing errors and reconciliation time at month-end.
Common IRN Errors and How to Fix Them
| Error Code | Description | Resolution |
|---|---|---|
| 2150 | Duplicate IRN — invoice already registered | Check if IRN exists on IRP portal; do not re-upload |
| 2153 | Invalid or inactive GSTIN of buyer | Verify GSTIN on GST portal before invoicing |
| 2271 | HSN code not valid for given supply type | Cross-check HSN master; use 4/6/8 digit as applicable |
| 2176 | Invoice date cannot be a future date | Correct the invoice date to current or past date |
| 2283 | Supplier or buyer GSTIN cancelled or suspended | Confirm GSTIN status and resolve with the taxpayer |
On cancellation: An IRN can be cancelled only within 24 hours of generation, and only if the linked e-way bill is also cancelled first. Critically, there is no amendment facility — any error discovered post-24 hours requires the supplier to issue a credit note against the original invoice and raise a fresh invoice with a new document number and a new IRN.
ITC Risk: Why Invalid IRNs Cost Your Clients Money
Under Section 16(2)(aa) of the CGST Act (inserted by Finance Act 2021), a buyer's ITC claim is valid only if the invoice or debit note appears in GSTR-2B. Since GSTR-2B is populated entirely from the supplier's GSTR-1, which is in turn auto-populated from IRN data, a broken link anywhere in this chain blocks the credit.
Consider a mid-size manufacturer claiming ₹24,00,000 in ITC per quarter on domestic purchases. If even 8% of supplier invoices lack valid IRNs or fail GSTR-1 filing, the blocked ITC amounts to ₹1,92,000 — plus 18% p.a. interest if the credit was already utilised and later reversed under Rule 37A.
CA firms should establish a monthly pre-GSTR-3B checklist:
- 1Pull GSTR-2B for the period as soon as it is generated (typically by the 14th of the following month)
- 2Match it against the purchase register line by line
- 3Flag invoices where IRN is absent or where the supplier has not filed GSTR-1
- 4Follow up with defaulting suppliers and reverse ineligible ITC before the 3B filing date to avoid interest liability
How corpus Helps
corpus automates the entire e-invoice workflow for CA firms managing multiple GST clients:
- Bulk IRN generation — upload invoices from any ERP or Tally export; corpus converts them to IRP-compliant JSON and submits via API in seconds
- Real-time status tracking — view IRN, Ack No., and QR code against every invoice directly in your client dashboard
- Auto GSTR-1 mapping — IRN-generated invoices are auto-classified into Table 4, 6A, or 9B, eliminating manual sorting before filing
- Error resolution queue — failed IRNs surface with error codes and plain-language fix suggestions, so your team resolves them before month-end
- GSTR-2B reconciliation — match your client's purchase register against GSTR-2B and receive an instant mismatch report before filing GSTR-3B
For a CA firm handling 20 GST clients each generating 200 invoices per month, corpus eliminates approximately 40 hours of manual IRN generation and reconciliation work every month — freeing your team for higher-value advisory work.
Conclusion
The e-Invoice IRN is now the backbone of India's B2B GST compliance chain. For CA firms, mastering IRN generation, catching IRP errors early, and reconciling GSTR-2B monthly are the three pillars that protect clients' ITC positions and pre-empt costly demand notices.
Ready to automate your e-invoicing workflow? Schedule a free demo with corpus and see how your firm can move from manual IRN generation to a fully automated, audit-ready process in under 48 hours.
Contributing author at corpus. Expert in Indian accounting compliance, GST, and financial reporting for professionals and growing businesses.
Smarter accounting starts with corpus
AI-powered cloud accounting built for Indian professionals. GST, payroll, TDS — all in one platform. Join 2,400+ CAs on the waitlist.
Join the Waitlist →