This guide is in English for now. The tool itself works in your language.
E-Invoice › E-invoice JSON format
E-invoice JSON format (INV-01) explained
The file this maker downloads follows the government's e-invoice schema, FORM GST INV-01 (version 1.1). You never need to edit it by hand, but knowing what is inside helps when the portal reports an error.
The sections
| Section | What it holds |
|---|---|
| Version | "1.1" |
| TranDtls | Tax scheme (GST), supply type (B2B, SEZWP, SEZWOP, EXPWP, EXPWOP, DEXP), reverse charge Y/N |
| DocDtls | Type (INV for an invoice), number, date as DD/MM/YYYY |
| SellerDtls | Your GSTIN, legal name, address lines, place (Loc), PIN, state code, phone, email |
| BuyerDtls | Buyer's GSTIN, legal name, place of supply (Pos), address, place, PIN, state code |
| ShipDtls | Only when goods go to another address than the buyer's |
| ItemList | One entry per line: serial no., description, goods or service (IsServc), HSN, quantity, unit, unit price, total, discount, taxable value (AssAmt), GST rate, IGST/CGST/SGST amounts, line total |
| ValDtls | Totals: taxable value, CGST, SGST, IGST, round off, invoice value |
| EwbDtls | Optional: transport details, so the IRP also makes the e-way bill |
For a bulk upload the file is a list (an array) of such invoices.
Rules the fields must follow
- Invoice number: up to 16 characters, only letters, digits, / and -, not starting with 0, / or -. It must be unique for your GSTIN in the financial year.
- Dates: DD/MM/YYYY, never in the future.
- GSTINs: 15 characters with a correct check character. Your own and the buyer's must differ.
- PIN: 6 digits that match the state. Place (Loc): at least 3 characters.
- HSN: 6 or 8 digits (codes starting with 99 are services, IsServc = Y, and need no unit).
- Unit: a GST unit code such as NOS, PCS, KGS, LTR, MTR, BOX, SET. Other words are sent as OTH.
- Amounts: the item lines must add up to the totals. The portal allows only a small rounding difference, and the round off goes in its own field.
- Exports: buyer GSTIN "URP", state code and place of supply 96, PIN 999999. Supplies with tax paid (EXPWP, SEZWP) use IGST even inside the state; those under LUT (EXPWOP, SEZWOP) need 0% GST on every item.
A short example
[{
"Version": "1.1",
"TranDtls": {"TaxSch": "GST", "SupTyp": "B2B", "RegRev": "N", "IgstOnIntra": "N"},
"DocDtls": {"Typ": "INV", "No": "INV/26-27/102", "Dt": "05/11/2026"},
"SellerDtls": {"Gstin": "03AABCS1234K1ZQ", "LglNm": "Sharma Yarns", "Addr1": "Focal Point", "Loc": "Ludhiana", "Pin": 141010, "Stcd": "03"},
"BuyerDtls": {"Gstin": "03AAPFU0939F1Z5", "LglNm": "Gill Knitwear", "Pos": "03", "Addr1": "GT Road", "Loc": "Jalandhar", "Pin": 144001, "Stcd": "03"},
"ItemList": [{"SlNo": "1", "PrdDesc": "Cotton yarn 40s", "IsServc": "N", "HsnCd": "52051200", "Qty": 60, "Unit": "KGS",
"UnitPrice": 250, "TotAmt": 15000, "Discount": 0, "AssAmt": 15000, "GstRt": 5, "IgstAmt": 0, "CgstAmt": 375, "SgstAmt": 375, "TotItemVal": 15750}],
"ValDtls": {"AssVal": 15000, "CgstVal": 375, "SgstVal": 375, "IgstVal": 0, "RndOffAmt": 0, "TotInvVal": 15750}
}]
(Shortened: the real file also carries the zero cess fields. The GSTINs here are made-up examples.)
The schema is published by GSTN/NIC on the e-invoice portals. Version 1.2 (from 1 January 2027) adds supply types for self-invoices; sales invoices keep the same fields.
Make your e-invoice file now. One invoice or a whole sheet.Open the maker