Legal Suvidha is a registered trademark. Unauthorized use of our brand name or logo is strictly prohibited. All rights to this trademark are protected under Indian intellectual property laws.
Legal Suvidha
Goods & Service Tax (GST)

IRN Generation Challenges & Solutions

IRN generation challenges in India's GST e-invoicing system usually arise from upstream issues โ€” outdated vendor GSTINs, mismatched HSN precision, JSON schema gaps, duplicate hashes on amended invoices and time-bucket overruns. The fix is a pre-validation layer inside the ERP that mirrors the IRP schema, daily GSTIN status checks, disciplined IRN cancellation within 24 hours when amendments are needed, and a monthly three-way reconciliation between ERP, IRN and GSTR-1.

Mayank WadheraMayank Wadhera
Published: 29 Jun 2023
Updated: 23 May 2026
14 min read
IRN Generation Challenges & Solutions
1
2
3
4
5
6
7
8
9
10
11

Recurring IRN generation challenges under GST e-invoicing and how Indian businesses can resolve schema, GSTIN, HSN and timing issues at the source.

IRN Generation Challenges & Solutions

Under GST e-invoicing, an Invoice Reference Number (IRN) is not a formality โ€” it is the legal existence of a B2B tax invoice. If your IRP submission fails, your document is not a valid tax invoice under Rule 48(4) of the CGST Rules, 2017, and the buyer cannot claim Input Tax Credit (ITC). For FY 2026-27, with the mandatory e-invoicing threshold sitting at Rs. 5 crore aggregate annual turnover, the vast majority of B2B supply chains are now inside the compliance perimeter. This guide maps the recurring failure points, gives you error-code-level fixes, and shows you exactly how to build a process that makes IRN failures the exception rather than the rule.


How IRN Generation Actually Works in FY 2026-27

Understanding the mechanics is the prerequisite for diagnosing failures. The Invoice Registration Portal (IRP) โ€” operated by NIC and private operators notified by GSTN โ€” receives a JSON payload, runs a multi-layer validation, and returns a signed IRN and QR code. The cycle looks like this:

  1. Supplier's ERP or ASP-GSP serialises the invoice into the IRP-mandated JSON schema (currently schema version 1.1 as updated for FY 2026-27).
  2. Payload is pushed to the IRP endpoint โ€” directly via API, or through an Application Service Provider (ASP) or GSP (GST Suvidha Provider) as an intermediary.
  3. IRP validates structure, GSTIN status, HSN-SAC validity, document number uniqueness, and tax computation.
  4. IRP signs the JSON with its private key and returns the 64-character IRN (a SHA-256 hash of the GSTIN + document type + document number + financial year), along with a QR code and a signed invoice JSON.
  5. Supplier embeds the IRN and QR code on the physical or electronic invoice before dispatch.

The Reporting Window You Cannot Afford to Miss

From 1 November 2023 onward, GSTN restricted late reporting on the IRP: taxpayers with aggregate annual turnover (AATO) above Rs. 100 crore cannot upload an invoice to the IRP if the invoice date is more than 30 days old. For taxpayers between Rs. 5 crore and Rs. 100 crore, the 30-day restriction has been progressively extended โ€” confirm the current notified limit for your turnover bracket on the GSTN portal before each financial year, as the window is tightened periodically. Missing this window means the IRP will reject the upload; the document cannot then be used as a tax invoice for that period, and the buyer's ITC is blocked.


The Eight Most Common IRN Failure Codes โ€” And What Each One Means

Failures arrive at your ASP-GSP dashboard as numeric error codes. Treating them as opaque roadblocks is what creates month-end backlogs. Here are the categories that account for most rejections in practice:

Schema and Structure Errors

  • Invalid JSON structure / mandatory field missing: The payload does not conform to the IRP schema. Common triggers include ERP upgrades that change field names, missing BuyerDtls, empty ItemList, or TotAmt computed differently from the sum of AssAmt + TaxAmt + CesAmt.
  • Rounding mismatch: The IRP allows a tolerance of ยฑ Rs. 1 on document totals. Mismatches beyond that โ€” caused by ERPs applying mid-calculation rounding โ€” result in a computation error. The fix is to round at line level, then sum, not the reverse.
  • Unit of measure not in allowed list: The IRP maintains an approved UOM (Unit of Measure) list. "NOS", "KGS", "MTR" are valid; "Nos.", "Kgs", "M" are not. Check the GSTN-published UOM master and normalise your item master accordingly.

Identity and Master-Data Errors

  • GSTIN invalid or inactive: Error code 2172 (GSTIN not found) and related codes fire when the buyer's or supplier's GSTIN has been cancelled, suspended, or the entry in your system carries a typo. GSTIN validation is not just about format (15-character alphanumeric) โ€” the IRP cross-checks live status against GSTN's database in real time.
  • HSN/SAC code not valid for the supplier's turnover: From FY 2025-26 onward, suppliers with AATO above Rs. 5 crore must use 8-digit HSN codes on every B2B invoice. Suppliers between Rs. 1.5 crore and Rs. 5 crore need at least 4 digits; those below Rs. 1.5 crore need at least 4 digits for goods. If your item master carries 6-digit codes and your AATO has crossed Rs. 5 crore, every invoice will fail HSN validation until the master is corrected.

Timing and Duplicate Errors

  • Duplicate IRN: Error 2150 triggers when the same combination of Supplier GSTIN + Document Type + Document Number + Financial Year is pushed a second time. This frequently happens when an ERP retries a failed API call without checking whether the first call partially succeeded, or when an amended invoice is re-pushed without first cancelling the original IRN.
  • IRN generation after the notified time window: As described above, invoices older than the permitted reporting window are flatly rejected. No workaround exists โ€” the invoice must be issued fresh with a new document number.

Worked Example: When IRN Failures Become an ITC Crisis

Consider a mid-sized Mumbai-based auto-components manufacturer โ€” call it Company M โ€” with AATO of Rs. 45 crore in FY 2025-26 (mandatory e-invoicing applies).

The situation: During October 2026, Company M's ERP team applied a patch that silently changed the HSN field length in the invoice master from 8 digits to 6 digits. Of the 320 B2B invoices raised that month, 48 invoices were rejected by the IRP for HSN precision failure. The finance team, under month-end pressure, marked these as "pending" and moved on.

The financial impact:

  • Average taxable value per invoice: Rs. 2,50,000
  • GST @ 18% per invoice: Rs. 45,000
  • Total ITC blocked at buyer side: 48 ร— Rs. 45,000 = Rs. 21,60,000
  • Buyers who noticed the missing QR code raised debit notes and withheld payment on those invoices.
  • Company M had to issue fresh invoices with corrected HSN and new document numbers. The original invoices โ€” never having received an IRN โ€” were invalid as tax invoices under Rule 48(4).
  • Resending the invoices with new numbers in November meant the sales figures appeared in GSTR-1 for November, not October. This triggered a mismatch in GSTR-3B vs GSTR-1 for October (under-reporting of outward supply) and November (over-reporting relative to the physical month). The CA handling the audit had to file an explanation with supporting workings.

Interest exposure on the buyer side: Three buyers who had tentatively credited the ITC in their October GSTR-3B had to reverse it. Assuming an average of Rs. 6,00,000 per buyer reversed for 45 days until corrected IRNs were received, the interest under Section 50 of the CGST Act, 2017 at 18% per annum amounted to: Rs. 6,00,000 ร— 18% รท 365 ร— 45 = Rs. 13,315 per buyer โ€” a real cost for a problem that started as a software patch no one tested for e-invoice compatibility.

The lesson: a single ERP change, never tested against the IRP schema, caused two months of reconciliation pain and real interest cost across the supply chain.


Root-Cause Analysis: Failures Are Upstream, Not at the IRP

The IRP is not where IRN problems are created. It is only where they surface. In practice, the root cause is almost always one of three upstream failures:

Master Data Without Governance

Vendor and customer masters accumulate errors over time: GSTINs that were valid at onboarding but have since been cancelled; HSN codes assigned when the business was smaller and 4-digit codes were sufficient; state codes that reflect an old registered address; supply types (B2B/B2C) that were guessed rather than verified. Every invoice built on these masters carries the error forward to the IRP.

The fix: Designate a master-data steward in the finance or compliance team. Run a monthly bulk GSTIN validation using the GSTN public API (available at https://services.gst.gov.in/services/searchtp) for all active customers and vendors. Flag cancellations and suspensions in a structured queue. Block invoice creation against any GSTIN flagged as inactive until the deviation is approved through a documented exception workflow.

ERP Configuration Not Mirroring IRP Schema

ERPs are upgraded, customised, and patched continuously. E-invoice schema versions change less frequently, but they do change. Every ERP release should include a regression test against the IRP sandbox before it reaches production. The IRP's sandbox environment is available through each registered IRP operator; your ASP-GSP can set this up.

No Pre-Validation Layer

Submitting directly to the IRP without a local pre-check is like filing a return without a self-review. Build or configure a pre-validation module that replicates the IRP's core checks โ€” GSTIN format, GSTIN active status, HSN code validity, mandatory field presence, UOM allowed list, and rounding logic โ€” before the JSON is even transmitted. Most commercial ASP-GSPs offer this as a feature; if yours does not, it is a reason to switch.


A Step-by-Step Pre-Validation Checklist

Run this checklist on every invoice before IRP submission:

  1. GSTIN format check: 15 characters โ€” 2-digit state code + 10-character PAN + 1-digit entity number + 1 alphabetic check + 1 check character.
  2. GSTIN live-status check: Active on GSTN? Not cancelled, suspended, or pending cancellation?
  3. HSN code depth: 8 digits if your AATO > Rs. 5 crore; 4 digits if between Rs. 1.5 crore and Rs. 5 crore. No 6-digit codes unless you are specifically in the bracket that permits them.
  4. UOM match: Every line item's unit of measure is in the IRP-approved UOM list.
  5. Tax computation check: TaxAmt = AssAmt ร— TaxRate รท 100, rounded to 2 decimal places at line level. Document total = sum of line totals ยฑ Rs. 1.
  6. Supply type and transaction type: B2B, SEZWP, SEZWOP, EXPWP, EXPWOP or DEXP โ€” selected correctly based on the buyer's registration status and the nature of supply.
  7. Document number uniqueness: Is this combination of GSTIN + Doc Type + Doc No + FY already registered on the IRP? Query your local IRN log before submitting.
  8. Invoice date within the reporting window: Is the invoice date within the permitted IRP reporting window for your turnover bracket?

If any check fails, route to a correction queue โ€” do not submit to the IRP and then rely on the error code to flag it.


IRN Cancellation: The 24-Hour Rule and What Comes After

An IRN can be cancelled on the IRP within 24 hours of its generation, provided no e-way bill has been generated against it. This is the clean path: cancel the IRN, fix the error, and re-issue a fresh invoice (which will generate a new IRN automatically).

After 24 hours, the IRP will not accept a cancellation request. Your options then depend on the nature of the error:

  • If the invoice has not been despatched or the supply has not been made: Issue a credit note under Section 34 of the CGST Act, 2017, referencing the original IRN. The credit note itself requires an IRN if it is a B2B document above the threshold. The net effect nullifies the original supply in GSTR-1 via Table 9A (amendment) or the credit note tables.
  • If the error is in master data only (e.g. wrong GSTIN, wrong address) and the financial values are correct: Consult your GST practitioner on whether the document can stand as a valid invoice with a clarification letter, or whether a credit note and re-invoice is the cleaner audit position.
  • Do not simply re-issue a new invoice without first addressing the original: Two IRNs for the same supply creates a double-reporting problem in GSTR-1 that will require an amendment in a subsequent return period.

Critical point: Never use a fresh invoice number to "fix" an already-issued IRN invoice. The duplicate supply will appear in GSTR-2B of the buyer and may trigger a scrutiny notice if the buyer claims ITC twice before you correct it.


Reconciliation: The ERP โ†’ IRN โ†’ GSTR-1 Three-Way Match

The most durable control you can build is a monthly three-way reconciliation:

LegSourceWhat You Are Checking
Leg 1ERP invoice registerAll B2B invoices raised in the month
Leg 2IRN log (ASP-GSP export)All IRNs successfully generated
Leg 3GSTR-1 filed dataAll invoices reported in the return

Leg 1 vs Leg 2 catches invoices that were booked in the ERP but never reached the IRP (the most dangerous gap โ€” the supplier thinks they invoiced; the buyer has no IRN to validate ITC).

Leg 2 vs Leg 3 catches IRNs generated but not reported in GSTR-1, or IRNs cancelled but still appearing in GSTR-1. This gap often arises when an ASP-GSP auto-populates GSTR-1 but the cancellation flag does not sync correctly.

Leg 1 vs Leg 3 is the traditional sales reconciliation but is now insufficient on its own โ€” it misses cases where an invoice appears in both ERP and GSTR-1 but was never registered on the IRP (because the finance team manually entered it into GSTR-1 to meet a deadline).

Run this reconciliation before the GSTR-1 due date each month, not after. Corrections to GSTR-1 for missed or erroneous IRNs are possible via the amendment tables (Table 9A for B2B amendments, Table 9B for credit/debit note amendments), but each amendment creates an audit trail that auditors will ask about.

Retention: Maintain the signed IRN JSON, the QR code image, and the ASP-GSP acknowledgement for the full retention period prescribed under Section 36 of the CGST Act, 2017 โ€” currently 60 months (5 years) from the due date of the annual return for the relevant year. These constitute primary documentary evidence in any scrutiny or audit proceeding.


Common Mistakes and How to Avoid Them

Mistake 1 โ€” Relying on the IRP to validate what the ERP should have caught: The IRP's error codes are a last resort, not a quality gate. Pre-validation inside the ERP or ASP-GSP eliminates 80% of failures before they ever reach the portal.

Mistake 2 โ€” Cancelling IRNs after 24 hours via "void" in the ERP without matching IRP action: The ERP may mark the invoice as cancelled internally, but the IRP still holds a live IRN. This IRN will auto-populate in GSTR-1 and in the buyer's GSTR-2B, causing phantom ITC claims.

Mistake 3 โ€” Using 6-digit HSN codes for businesses with AATO > Rs. 5 crore: The IRP may not always reject 6-digit codes immediately (behaviour can vary with schema versions), but CBIC's HSN accuracy mandate under Notification No. 78/2020-CT makes the 8-digit requirement non-negotiable for businesses above the threshold. A 6-digit code that slips through is still non-compliant.

Mistake 4 โ€” Treating ASP-GSP failures as "system issues" and retrying without diagnosis: Each retry of an undiagnosed failure risks generating a duplicate IRN request, which then triggers error 2150. Always check the IRN log before retrying any failed submission.

Mistake 5 โ€” Not testing ERP changes against the IRP sandbox before production deployment: The IRP sandbox at each registered IRP operator mirrors the production validation logic. It is free to use. There is no reason not to run a 50-invoice regression test after every ERP patch.

Mistake 6 โ€” Generating the e-way bill before the IRN is confirmed: The e-way bill portal pulls the IRN reference. If you initiate the e-way bill on an invoice that subsequently fails IRN generation, the e-way bill is linked to an invalid document. Always confirm IRN generation before initiating the e-way bill.


What Auditors Will Test in FY 2026-27

Internal auditors and statutory auditors now routinely include e-invoicing controls in their scope. Prepare evidence for the following tests:

  • Timeliness test: Sample of 25-50 invoices โ†’ gap between invoice date and IRN generation timestamp. Exceptions beyond the notified window must have documented business explanations.
  • Cancellation compliance: Sample of all IRN cancellations in the period โ†’ were any attempted after 24 hours? If so, was a credit note issued instead?
  • Credit note linkage: All credit notes with IRNs โ†’ do they reference valid, non-cancelled original IRNs in the PrecDocDtls field?
  • Three-way reconciliation evidence: Is there a monthly reconciliation report comparing ERP, IRN log, and GSTR-1? Has it been signed off by the finance controller?
  • GSTIN validation log: Evidence of periodic GSTIN status checks for active vendors and customers.
  • Master-data exception queue: Are deviations from validated masters tracked and approved through a documented workflow?

Keep these artefacts โ€” ideally as PDF exports from your ASP-GSP and ERP โ€” in a structured compliance folder by month and financial year. A well-maintained compliance folder turns an audit into a review session rather than a reconstruction exercise.


Key Takeaways

  • An invoice without a valid IRN is not a tax invoice under Rule 48(4) of the CGST Rules; the buyer's ITC is at risk from day one.
  • Pre-validation inside the ERP โ€” checking GSTIN status, HSN depth, UOM list, and rounding logic before submission โ€” eliminates the majority of IRP rejections.
  • For AATO above Rs. 5 crore, 8-digit HSN codes are mandatory on every B2B invoice; a 6-digit code is a compliance breach even if the IRP does not always reject it immediately.
  • IRN cancellation is only available for 24 hours after generation and only when no e-way bill is linked; after that window, a Section 34 credit note with its own IRN is the only clean path.
  • Build a monthly three-way reconciliation โ€” ERP invoices vs IRN log vs GSTR-1 โ€” and complete it before the GSTR-1 due date, not after.
  • Virtually all recurring IRN failures trace back to master-data quality โ€” stale GSTINs, wrong HSN precision, non-standard UOMs. Fix the master; the IRP errors follow.
  • Retain signed IRN JSON, QR images, and reconciliation reports for 60 months from the annual return due date โ€” they are primary evidence in scrutiny and audit proceedings.

Frequently Asked Questions

What is an IRN under GST e-invoicing?
An Invoice Reference Number is a unique 64-character hash generated by the Invoice Registration Portal after validating an invoice JSON. The IRN, along with the IRP-signed QR code, makes the document a valid tax invoice for buyers to claim input tax credit.
How long do I have to generate an IRN?
The IRN must be obtained within the time window notified by CBIC for the supplier's turnover bracket. Once generated, an IRN can be cancelled only within 24 hours, after which any change has to be handled through a credit or debit note.
Why do IRN requests fail most often?
Frequent failures come from schema mismatches, cancelled or suspended GSTINs, insufficient HSN precision, duplicate hashes on re-submitted invoices, and rounding errors between line items and document totals. Master data hygiene fixes the majority of these failures.
How should I reconcile IRNs with GSTR-1?
Run a monthly three-way match between invoices booked in the ERP, IRNs generated on the IRP and invoices auto-populated into GSTR-1. Any document missing from one leg is investigated and corrected before filing the return for the period.
Mayank Wadhera
Content Reviewed By

CA | CS | CMA | Lawyer | Insolvency Professional | IBBI Valuator

"I help founders increase real business value and achieve stronger valuations | Turning messy workflows into scalable, time-saving systems"

Share this article:

Related Posts

View All