STSaasTechify/dev
← All posts
Engineering9 May 2026· 6 min read

GST invoicing: the details that bite you in production

'If seller state equals buyer state, split the tax into CGST and SGST, otherwise charge IGST' is correct, and it's also the easy 20% of GST invoicing. The rest is in the details that don't show up until an accountant or a tax notice finds them.

Place of supply isn't always the buyer's registered address — for services, it can be the location where the service was actually performed, which for a field technician visiting a customer's home is a different state than where the customer's billing address says they live. Get this wrong consistently and it's a compliance problem, not just a display bug.

HSN/SAC codes matter more than most teams initially budget for. Every distinct line item — labour versus a specific spare part — needs its own correct code, and invoices above certain thresholds require them explicitly. Defaulting everything to one generic code works until an audit asks why every invoice looks identical.

Rounding is its own small minefield: round per line item or round the total? Different approaches produce different final numbers by a few paise, and if your invoice PDF and your accounting system round differently, reconciliation becomes a monthly headache instead of a non-event.

None of this is hard once you know to look for it. It's just invisible until it isn't — which is exactly the kind of detail worth getting right before the first real invoice goes out, not after.

Building something similar?

Let's talk through the actual problem, not a generic pitch.

Start a conversation