April 2026 brought e-invoicing mandatory for businesses with Rs 5+ crore aggregate turnover. If you're building billing, ERP, or accounting software for Indian SMBs, here's the integration checklist.
What changed in April 2026
Threshold dropped from Rs 10 crore to Rs 5 crore. Approximately 150,000 more taxpayers were brought in. Your integration now needs to handle this cohort: smaller transaction volumes, less IT capability, more manual exception handling.
IRP flow (quick reference)
Generate invoice in your system with all mandatory fields (Seller/Buyer GSTIN, invoice number, date, HSN code, taxable value, tax amounts)
POST to IRP (Invoice Registration Portal) , NIC operates the primary IRP; 5 private IRPs also exist
IRP returns IRN (Invoice Reference Number , 64-character hash), QR code, and digital signature
Print/embed IRN + QR code on invoice before delivery
Mandatory fields that trips sub-5Cr integrations
BillToPinCode: required even for services, set 000000 if not applicable
SupTyp: supply type (B2B, SEZWP, SEZWOP, EXPWP, EXPWOP, DEXP) , most SMBs only ever use B2B
DocTyp: INV, CRN, DBN , credit notes need IRN too
IgstAmt vs CgstAmt+SgstAmt: must match supply place vs seller state, not editable post-IRN
Cancellation window: 24 hours only
IRN can be cancelled within 24 hours of generation on the IRP. After 24 hours, you can't cancel , you must issue a credit note. Your integration should surface the 24-hour window clearly. Most SMB-facing UIs don't.
Exemptions still in place
E-invoicing does NOT apply to: banks, insurance companies, NBFCs, GTA (goods transport agencies), passenger transport, multiplex cinema operators, Special Economic Zones, and transactions to unregistered buyers (B2C). Build a isEInvoiceRequired() check in your pre-generation layer.
Testing environment
Sandbox IRP: einvoice1.gst.gov.in (prod) has a test API. Always test with sandbox credentials before production. IRN generated in test does not appear in GSTR-1.
Full implementation guide for Indian e-invoicing: taxgarden.in/blog/gst-e-invoice-einvoicing-irp-portal-guide-india-2026
Top comments (1)
The painful part of GST e-invoicing is not the IRN call itself. It is proving later that the payload you sent matches what the portal accepted, especially when retries and partial failures happen. Teams that treat the government response as the receipt (immutable request/response pair, not just a success toast) sleep better during notices. How are you storing the round-trip for audits?