E-Invoice JSON from Excel: Step by Step
Last updated: 27 June 2026 · E-invoicing threshold ₹5 crore; 30-day reporting at ₹10 crore+.
To create an e-invoice JSON from Excel, lay out your invoice data in the columns the GST INV-01 schema requires, convert it to JSON using the IRP's offline/bulk tool (or a GSP), and upload it to an Invoice Registration Portal — which returns a signed IRN and a QR code that make the invoice valid. E-invoicing is mandatory for businesses with aggregate turnover of ₹5 crore or more in any year since 2017-18.
Key takeaways
- E-invoicing applies at ₹5 crore aggregate turnover (any FY from 2017-18 onward) — for B2B, exports and credit/debit notes.
- The JSON follows FORM GST INV-01, schema version 1.1, with roughly 50 mandatory fields.
- The IRP returns an IRN (Invoice Reference Number) and a QR code; without the IRN the invoice isn't valid.
- Map your Excel columns to the schema fields first — supplier, buyer, item, tax — then convert to JSON.
- A 30-day reporting rule applies at ₹10 crore+ turnover: report to the IRP within 30 days of the invoice date.
- Six IRPs are live, with a master portal at einvoice.gst.gov.in for enablement checks and IRN search.
Fact box. E-invoicing is mandatory for taxpayers with aggregate turnover of ₹5 crore or more in any financial year from 2017-18. The invoice is reported to an IRP, which validates it and returns a signed IRN and QR code; a B2B invoice without an IRN is not legally valid. (Source: CBIC e-invoicing notifications; GSTN.)
Who must generate e-invoices?
Any registered business whose aggregate annual turnover has reached ₹5 crore in any year since 2017-18 must generate e-invoices for B2B supplies, exports, and credit/debit notes. Below ₹5 crore you are exempt. B2C invoices are outside e-invoicing (though a dynamic QR code may apply separately for large turnovers).
A tighter rule sits on top: businesses with turnover ₹10 crore or more must report each invoice to the IRP within 30 days of its date, or the portal refuses to generate an IRN.
What does the e-invoice schema need?
The JSON follows FORM GST INV-01 (schema v1.1). The mandatory fields group into a few blocks — set up your Excel columns to mirror them:
| Block | Key fields |
|---|---|
| Transaction | Supply type code, document type, number, date |
| Seller | GSTIN, legal name, address, state code, PIN |
| Buyer | GSTIN, name, place of supply, address, PIN |
| Item | HSN/SAC, quantity, unit, unit price, taxable value, GST rate |
| Value | Assessable value, IGST/CGST/SGST amount, total |
Keep one row per invoice line, with header fields repeated, so the converter can group lines under each invoice.
How do I convert the Excel data to JSON?
You do not hand-type JSON. Use one of these routes:
- IRP offline/bulk tool — download from the e-invoice portal, paste your data into its prescribed template, and it generates a schema-valid JSON for upload.
- GSP / API — accounting software or a GST Suvidha Provider converts and uploads directly.
- Excel as the source — keep your master data in Excel, export to the tool's template, and let it produce the JSON.
The critical step is mapping: your column "Buyer GSTIN" must land in the schema's buyer-GSTIN field, your "Rate" in the GST-rate field, and so on. A mismatched map is the most common cause of rejected JSON.
Fact box. The e-invoice JSON is generated by an offline tool, accounting software, or a GSP — not written by hand. The Invoice Registration Portal validates the JSON against the INV-01 schema and rejects any file with missing or malformed mandatory fields. (Source: GSTN e-invoice offline tool documentation.)
How do I get the IRN and QR code?
- Prepare the invoice data in Excel against the schema fields.
- Convert to JSON via the offline tool or GSP.
- Upload to an IRP (e.g. einvoice1.gst.gov.in or another of the six live portals).
- The IRP validates, generates the IRN (a 64-character hash) and a signed QR code, and returns them.
- Print the IRN and QR code on the invoice you give the buyer.
Store the returned IRN against the invoice row in Excel so your records and the portal stay in sync, and so credit notes reference the right IRN.
How Ankeshan helps: Ankeshan maps your Excel invoice straight to the INV-01 schema, generates the JSON, and writes the returned IRN and QR code back beside each invoice — so you never hand-build a file or lose track of an IRN. It's launching soon; join the waitlist.
Frequently asked questions
What is the turnover limit for e-invoicing? ₹5 crore aggregate turnover in any financial year from 2017-18 onward. Below that, e-invoicing is not mandatory.
What is an IRN? The Invoice Reference Number — a unique hash the IRP returns after validating your e-invoice. A B2B invoice is not valid without it.
Do I have to write the JSON by hand? No. You prepare data in Excel and use the IRP offline tool, accounting software, or a GSP to generate schema-valid JSON automatically.
What is the 30-day e-invoice rule? Businesses with turnover of ₹10 crore or more must report each invoice to the IRP within 30 days of its date, or no IRN is generated.
Does e-invoicing apply to B2C sales? No, e-invoicing (with IRN) is for B2B, exports and credit/debit notes. A separate dynamic QR-code requirement may apply to B2C for large taxpayers.
Sources
- CBIC: e-invoicing notifications, ₹5 crore threshold and 30-day reporting rule — cbic-gst.gov.in.
- GSTN: FORM GST INV-01 schema (v1.1), offline tool and IRP list — einvoice.gst.gov.in.
General information, not professional advice. Verify on the official portal for your case. Reviewed by a Chartered Accountant; last updated 27 June 2026.
Related: GST in Excel — complete guide » · E-way bill bulk generation from Excel » · Is an Excel GST invoice legally valid? » · GST invoice format in Excel »