Convert Excel to GSTR-1 JSON

Turn an Excel invoice register into GSTR-1 JSON for the GSTN portal — B2B, B2CS and HSN summary, GSTIN checksum-checked, built in your browser.

Drop your invoice register (.xlsx) — get GSTR-1 JSON

or click to choose · B2B, B2CS and HSN summary · GSTIN checksum-checked before anything is filed

Mapping rows to GSTR-1 tables…

Grouping invoices per buyer, splitting CGST/SGST vs IGST, aggregating B2CS and HSN

Download GSTR-1 JSON

Import into the GSTN offline tool for the final validation and upload — this file is the mapping, not a filing.

If you keep your invoice register in Excel and file GSTR-1 through the GSTN portal, this converter produces the JSON the portal's offline tool expects from that spreadsheet. Rows with a recipient GSTIN become B2B invoices grouped per buyer (one entry per GSTIN, lines merged per invoice number and date), rows without one are aggregated into B2CS buckets by rate and place of supply, and an HSN summary is built from your HSN column or a standalone HSN sheet.

The mapping follows the GST rules, not just the shape: your GSTIN's state code decides intra-state (CGST + SGST split) versus inter-state (IGST) for every row, missing tax columns are computed from the taxable value and rate, invoice value is derived when the sheet omits it, and every GSTIN is checksum-validated before anything is filed — a typo in a buyer's GSTIN stops the conversion with the exact sheet and row, instead of producing a return the portal would reject later.

Honest scope: this converter covers the B2B, B2CS and HSN sections. Credit and debit note rows are detected and excluded with a warning (never mis-filed as invoices) — CDNR belongs in a future update, and the portal's exports/advances tables stay out of scope. The downloaded JSON is a faithful mapping of your sheet, so run it through the GSTN offline tool's compute/validation step before uploading, as the offline tool applies business rules an offline converter cannot see. Your register is parsed in your browser and never uploaded.

Frequently asked questions

Is the JSON accepted directly by the GST portal?
It follows the offline tool's JSON layout (version, gstin, fp, b2b, b2cs, cdnr, hsn), but the supported workflow is: download here, open the GSTN offline tool, import the JSON, let it compute and validate, then upload from there. The offline tool applies the portal's own business rules as the final check.
Which Excel columns does it recognise?
Headers are matched loosely, so GSTIN of Recipient, Invoice Number, Invoice Date, Taxable Value, Rate, Place of Supply, HSN and the tax columns (CGST, SGST, IGST, Cess) all work in that wording or close variants. Minimum viable sheet: taxable value and rate; invoice number and date are required for B2B rows.
What happens to credit notes in my register?
Rows whose document type says credit or debit note are excluded from the invoice tables and reported in a warning — they are never converted into positive invoices, which would overstate your liability. File those through the CDNR table when the converter adds it.