---
title: "India — GST e-invoicing · IRP & IRN"
description: "India e-invoicing: GST IRP-issued IRN required for every B2B invoice from taxpayers with turnover > ₹5 crore. 30-day reporting deadline applies to ≥ ₹10 crore."
canonical: "https://docs.get-flowie.com/compliance/in"
source: "https://docs.get-flowie.com/compliance/in.html"
---

# India — GST e-invoicing · IRP & IRN

Compliance · 🇮🇳 India Live mandate

# India — GST e-invoicing · IRP & IRN

Mandatory IRN issuance via GST IRP · ₹5 crore threshold — regulator: [GST Network (GSTN) / Central Board of Indirect Taxes (CBIC)](<https://www.gst.gov.in>). _Facts last refreshed: 2026-07-13._

Coverage model

Flowie operates a registered Peppol Access Point in this jurisdiction **directly** where we hold national accreditation, **or via a vetted local partner** registered with the in-country regulator where on-the-ground presence is required (KSeF, SDI intermediario, ZATCA service-provider, etc.). Either way, you call the same `POST /v1/documents/send`. 

## TL;DR

  * Every B2B invoice from a taxpayer above the threshold must be sent to an **Invoice Registration Portal (IRP)** , which returns an **IRN** (Invoice Reference Number) + signed QR code.
  * Threshold has stepped down repeatedly: ₹500 cr (2020) → ₹100 cr → ₹50 cr → ₹20 cr → ₹10 cr → **₹5 cr (since 1 Aug 2023)** — unchanged for 2026.
  * From **April 2025** , taxpayers ≥ ₹10 cr must report invoices to the IRP within **30 days** of issuance — late = invoice rejected.
  * Format: JSON to the IRP API; the IRP signs and returns; you embed the QR + IRN on the printed invoice.
  * Multiple IRPs operate (NIC IRP1/IRP2, IRIS, ClearTax, etc.) — Flowie selects automatically.



## Deadlines

Date| Who| What  
---|---|---  
**2020-10-01**|  Turnover > ₹500 cr| Phase 1 — IRN mandatory.  
**2021–2022**|  ₹100 cr → ₹50 cr → ₹20 cr| Phased threshold reductions.  
**2023-08-01**|  Turnover > ₹5 cr| Current universal threshold.  
**2025-04-01**|  Turnover ≥ ₹10 cr| 30-day reporting deadline enforced — late submissions rejected by IRP.  
  
## Background

India's e-invoicing regime sits inside the Goods and Services Tax (GST) framework operated by GSTN. It's a **clearance + reporting** hybrid: the seller produces the invoice in their billing system, posts the JSON to an IRP, receives an **Invoice Reference Number (IRN)** \+ digitally signed QR code, and embeds them on the printed invoice. The IRP also auto-populates GSTR-1 (sales return) and the e-Way Bill system, eliminating duplicate data entry.

Coverage has expanded by lowering the turnover threshold: starting at ₹500 crore in October 2020 and now sitting at ₹5 crore since August 2023. As of 2026, the threshold remains at ₹5 crore. A separate _30-day reporting deadline_ applies to taxpayers ≥ ₹10 crore — invoices not reported within 30 days of issue are rejected by the IRP and considered invalid for GST.

There are multiple IRPs (NIC operates two; IRIS, ClearTax, ENS Portal, EY-Cygnet, and others run private ones). Flowie load-balances between them and falls back automatically on outages — a real concern given India's invoice volume.

## Format profile

  * **JSON** per the GST e-invoice schema (currently v1.1).
  * Seller and buyer **GSTIN** (15-character GST identifier) mandatory for B2B.
  * **HSN codes** required (4 digits if turnover < ₹5 cr; 6 digits otherwise).
  * IRP returns: IRN (64-char hash), digitally signed QR, signed invoice (JWS).
  * Out of scope: B2C, sales by non-GST-registered, financial services exempt entities.



## Required fields

  * seller.gstinstring (15 chars)required

Indian GST Identification Number.

  * buyer.gstinstring (15 chars)required for B2B

Buyer GSTIN.

  * lines[].hsnCodestring (4 or 6 digits)required

HSN code; minimum digit count depends on seller turnover.

  * invoice.placeOfSupplystring (2-digit state code)required

Determines IGST vs CGST+SGST split.




## Public sector (B2G)

_Combined private + public flow — no dedicated B2G hub for this country._

## B2B reporting / clearance

**GST Invoice Registration Portal (IRP)** — Real-time clearance + auto-population of GSTR-1 and e-Way Bill. IRN is the legal proof of GST invoice.

Lifecycle status| Reported as  
---|---  
`registered`| IRN issued; invoice is GST-valid.  
`rejected`| Validation failed (duplicate, GSTIN mismatch, missing HSN, late beyond 30 days).  
`cancelled`| Cancellation accepted within 24h of registration.  
  
## Error codes

Code| Meaning| Fix  
---|---|---  
`2150`| Duplicate IRN — invoice already registered.| Check whether a previous attempt succeeded; retry only if confirmed not registered.  
`2172`| Document date is older than 30 days.| Applies to taxpayers ≥ ₹10 cr — invoice must be registered within 30 days of issue.  
`2189`| Buyer GSTIN inactive or cancelled.| Verify GSTIN with the public GSTN search before invoicing.  
  
## Testing in sandbox

What you want to test| How  
---|---  
India happy path| Sender GSTIN `27AAACG0527D1ZK`, recipient any active GSTIN in Flowie sandbox; IRN echoed back.  
  
## FAQ

### Does e-invoicing replace GSTR-1?

No, but it auto-populates GSTR-1 from registered invoices, drastically reducing manual entry. You still file GSTR-1, GSTR-3B, etc.

## References

**Primary sources** (government / regulator / standards body):

  * [GST Network (GSTN)](<https://www.gst.gov.in>) — GST portal — operates IRP.
  * [GST e-invoice portal (NIC IRP)](<https://einvoice1.gst.gov.in>) — NIC-operated Invoice Registration Portal.
  * [Central Board of Indirect Taxes (CBIC)](<https://www.cbic.gov.in>) — CBIC — issues notifications setting thresholds.



**Industry analyses** (vendor trackers — useful for cross-referencing):

  * [ClearTax · India e-invoicing](<https://cleartax.in/s/e-invoicing-gst>) — Industry guide — thresholds + 30-day rule.
