BLOG

Why the discount now comes off before the tax

A shop told us a ₹120 shirt was billing ₹116.00. It should have been ₹115.50. Here is what was wrong, and why old bills stay exactly as they were.

TuskerWorks · 3 Nov 2026 · 4 min read
−₹10

A shopkeeper sent us a bill and one line: "the tax is wrong." He was right.

The bill was simple. One shirt at ₹120, GST at 5%, and ₹10 off because he's a regular. Karobaar added the tax first and took the discount off the total at the end. That gave tax of ₹6.00 and a total of ₹116.00.

The law reads it the other way round. Under section 15(3)(a) of the CGST Act, a discount given at the time of sale and shown on the invoice is not part of the taxable value. So the ₹10 comes off first, and the tax is worked out on what's left.

Before (wrong)Now (right)
Price₹120.00₹120.00
Discounttaken at the end−₹10.00
Taxable value₹120.00₹110.00
GST 5%₹6.00₹5.50
Bill total₹116.00₹115.50

Fifty paise on one shirt doesn't sound like much. But it was on every discounted bill, it was the shop paying tax on money it never received, and it was the kind of thing a CA notices in March.

What changed

Why old bills don't move

A tax invoice cannot change after it's been handed over. If we had flipped the rule for everyone, every discounted bill a shop had ever made would have shown a new total and a new amount due. Customers would have been "owing" different money overnight.

So the rule is stored on each bill. Bills made before the fix keep the arithmetic they were printed with. Bills made after it use the right one. Nothing a shopkeeper has already given a customer changes.

This fix came from a real shop, the same way most of Karobaar does. If something on your bill looks off, tell us in the app (More → Help & feedback) or at info@tuskerworks.com.

Try Karobaar

Free to start. Works in a browser, on Android, offline.

Open Karobaar →
← All posts