A GST invoice got rejected at my client's accounts desk because I wrote 18% as a single line instead of splitting 9% CGST + 9% SGST. Same total, wrong presentation — one week lost. This tutorial fixes that: the exact GST invoice format India requires, with HSN codes, GSTIN placement and a copy-paste sample, so your bill clears on first submission.
Part of the free invoice generator guide. For the hands-on build, use the freelance GST invoice generator (auto CGST/SGST vs IGST) or the general free invoice generator. This is format guidance, not tax advice — confirm slabs with your CA.
GST invoice mandatory fields (the 14-point check)
Under CGST rules every tax invoice needs these. Miss one and enterprise accounts bounces it. Bold them on your PDF.
- Supplier name, address, GSTIN (e.g. 27ABCDE1234F1Z5) — top of the invoice.
- Invoice serial number — unique, sequential, e.g. INV-GST-011. Rules in invoice numbering guide.
- Date of issue — plus time of supply for services where relevant.
- Buyer name, address, GSTIN (B2B) — plus place of supply with state code.
- HSN code (goods) / SAC code (services) — e.g. SAC 9983 for design. 4–6 digits depending on turnover.
- Description of goods/services — specific, with quantity and unit.
- Quantity, rate and taxable value — per line, e.g. 10 hrs × ₹2,000 = ₹20,000.
- Tax rate + amount split — CGST + SGST for same-state, IGST for inter-state.
- Total with tax — bold, e.g. ₹23,600.
- Total in words — “Rupees twenty-three thousand six hundred only”.
- Place of supply + reverse-charge note where applicable.
- Bank / UPI details — account, IFSC, UPI ID for fast clearance.
- Signature / authorized signatory — digital signature block is fine.
- LUT / export note for zero-rated supplies.
CGST + SGST vs IGST: the split that trips everyone
Same-state sale = split the GST in half. Inter-state = one IGST line. Same money, different rows — accounts cares deeply.
| Supply | Tax lines on invoice | Example on ₹20,000 @ 18% |
|---|---|---|
| Intra-state (Mumbai → Mumbai) | CGST 9% + SGST 9% | ₹1,800 + ₹1,800 = ₹23,600 total |
| Inter-state (Mumbai → Delhi) | IGST 18% | ₹3,600 = ₹23,600 total |
| Export with LUT | 0% + LUT note | ₹20,000, “LUT filed, no IGST” |
| Unregistered freelancer | No GST, status note | ₹15,000, “unregistered supplier” |
The freelance GST invoice generator picks the split from place-of-supply state codes automatically — I tested Mumbai→Mumbai vs Mumbai→Bengaluru and it flipped correctly. Cross-check percentages with the GST calculator before sending.
HSN, SAC and GSTIN: where they go on the bill
- HSN (goods): per line next to description. Turnover under ₹5 cr: 4 digits; above: 6 digits.
- SAC (services): same position. Common ones: 9983 (design), 9984 (IT), 9992 (consulting) — verify against the current master.
- GSTIN: supplier top-right, buyer in bill-to block. Wrong digit = rejection. Copy-paste from GST portal, never retype.
- State code + place of supply: drives CGST/SGST vs IGST. “Maharashtra (27)” style labels prevent confusion.
Freelancer specials: SAC mistakes I have seen
Three real bounces: a writer used goods-HSN for editing services; a designer omitted SAC entirely; a developer billed inter-state as CGST+SGST. All fixed in 10 minutes once the code and split were right. When in doubt, mirror your last accepted invoice — consistency beats creativity here.
Sample GST invoice (copy the structure)
Header: Aarav Mehta Design, Mumbai, GSTIN 27ABCDE1234F1Z5 · Invoice INV-GST-011, Sept 14, 2026 · Bill to: Zeta Pvt Ltd, Delhi, GSTIN 07XYZAB1234C1Z5, Place of supply: Delhi (07).
Lines: UI design, SAC 9983, 10 hrs × ₹2,000 = ₹20,000 taxable. Tax: IGST 18% = ₹3,600 (inter-state). Total: ₹23,600 — Rupees twenty-three thousand six hundred only. Footer: UPI + bank/IFSC, “50% advance received vide QUO-2026-014”, signatory block.
- File name: gst-invoice-011-zeta.pdf. Subject: “GST Invoice INV-GST-011 — ₹23,600 due Sept 29”.
- Made with: freelance GST invoice generator → Print to PDF. Verify with free invoice generator for non-GST bills.
- After payment: issue a payment receipt referencing INV-GST-011.
5 rejection reasons (and the 10-minute fix)
- Missing buyer GSTIN for B2B — ask accounts before drafting, not after. (Numbering hygiene in numbering guide.)
- Wrong split (CGST/SGST on inter-state) — flip to IGST per place of supply.
- No HSN/SAC — add codes; accounts software validates these now.
- Total in words missing — banks and large buyers require it. The full pre-send sweep is in 12 invoice mistakes to avoid.
- Duplicate series — keep GST bills in one sequence; credit notes separate (CN-001). Freelancers: the freelancer guide shows advances + UPI wording that pairs with GST bills; payment chasing in payment terms and reminders.