E-Invoicing for Shopify B2B Orders in India
Selling to GST-registered buyers on Shopify? When e-invoicing applies, the 30-day IRP rule, and how to get IRNs without retyping orders.

Shopify started as a tool for selling to consumers, but plenty of Indian brands now take trade orders through it too: retailers, corporate gifting clients, distributors. Once those buyers give you a GSTIN and your turnover passes a threshold, the invoice has to be registered on the government's Invoice Registration Portal (IRP) before it's valid. Shopify doesn't do that for you.
This post covers e-invoicing only. For tax settings and GST invoices in general, start with our GST on Shopify guide.
Does e-invoicing apply to you?
Two tests:
- Turnover. E-invoicing has applied since 1 August 2023 to businesses whose aggregate annual turnover crossed ₹5 crore in any financial year from 2017-18 onwards. Turnover is counted across all GSTINs under the same PAN, so a brand with registrations in several states adds them together.
- Buyer. It applies to B2B supplies (sales to GST-registered buyers) and to exports. Sales to consumers don't need an e-invoice.
So a D2C brand above ₹5 crore needs e-invoices for its trade orders, and normal invoices for everyone else. Many stores have both on the same Shopify admin.
What an IRN is
You send the invoice details to the IRP in a set JSON format. The IRP validates them and returns an Invoice Reference Number (IRN), a signed QR code and the signed invoice data. The QR code has to appear on the invoice you send the buyer. Without an IRN, the buyer can't rely on the invoice for input tax credit, so trade customers notice quickly when it's missing.
The 30-day limit
From 1 April 2025, businesses with turnover of ₹10 crore or more must report e-invoices to the IRP within 30 days of the invoice date. The limit covers credit and debit notes too. After 30 days the IRP rejects the document. A month-end batch can still work, but a quarterly catch-up won't.
Getting Shopify B2B orders to the IRP
There are three common routes:
| Route | Works when |
|---|---|
| A Shopify GST invoice app that also generates IRNs | Low B2B volume, simple catalogue |
| Invoicing in Tally or Zoho Books, with orders synced from Shopify | Accounts already live there and the sync is reliable |
| Direct API integration through a GST Suvidha Provider | High volume, custom invoice formats, or several GSTINs |
Whichever you choose, the details that cause rejections are the same: the buyer's GSTIN and state code, HSN codes on every product, the place of supply, and rounding. Fix HSN codes in Shopify first. If a product has no HSN code there, it won't have one on the e-invoice either.
Returns and credit notes
When a B2B order is returned, the credit note needs its own IRN and has to reference the original invoice. Above ₹10 crore, it also has to be reported within the 30-day limit. Build this into your returns process now, because it's the step most often missed.
A setup checklist
- Confirm your aggregate turnover across all GSTINs under your PAN
- Capture the buyer's GSTIN at checkout or on the B2B company profile, and validate it
- Add HSN codes and the right tax rates to every product
- Choose where invoices are created: Shopify app, accounting software or API
- Test a sale and a credit note end to end on the IRP sandbox before going live
- Put a weekly check on the calendar for invoices without an IRN
If your trade orders come in as bulk gifting or wholesale requests, our posts on corporate gifting on Shopify and B2B without Plus cover the ordering side.




