21.5 GST Invoice Register
The ask. Amir keeps the sales invoice register for a fictional Pune trading firm registered in Maharashtra. For each invoice he must split tax into CGST + SGST (sale inside Maharashtra) or IGST (sale to another state), and give a summary by tax rate. The rates in this file are practice inputs; always confirm current rates and rules with your CA.
Sheet Invoices, A1:D6 (fictional):
| A: Invoice | B: Place of supply | C: Taxable value (₹) | D: GST rate |
|---|---|---|---|
| INV-501 | Maharashtra | 12,000 | 18% |
| INV-502 | Karnataka | 8,000 | 12% |
| INV-503 | Maharashtra | 5,000 | 5% |
| INV-504 | Gujarat | 20,000 | 18% |
| INV-505 | Maharashtra | 9,000 | 12% |
What to deliver (one under the other):
- Make the range a Table named
tblInv. - Add CGST and SGST: half the tax each when Place of supply is Maharashtra, else 0.
- Add IGST: the full tax when Place of supply is another state, else 0.
- Add Invoice total = Taxable value + CGST + SGST + IGST.
- Build a summary by rate with SUMIFS (5%, 12%, 18%).
- Check: total tax = CGST + SGST + IGST = Taxable × rate, row by row.
Key formulas (row 2; copy down or let the Table fill them):
E2: =IF([@[Place of supply]]="Maharashtra",[@[Taxable value (₹)]]*[@[GST rate]]/2,0)
F2: =[@CGST]
G2: =IF([@[Place of supply]]<>"Maharashtra",[@[Taxable value (₹)]]*[@[GST rate]],0)
H2: =[@[Taxable value (₹)]]+[@CGST]+[@SGST]+[@IGST]
Summary: =SUMIFS(tblInv[Taxable value (₹)],tblInv[GST rate],0.18)
Expected result (check your numbers):
| Invoice | CGST (₹) | SGST (₹) | IGST (₹) | Invoice total (₹) |
|---|---|---|---|---|
| INV-501 | 1,080 | 1,080 | 0 | 14,160 |
| INV-502 | 0 | 0 | 960 | 8,960 |
| INV-503 | 125 | 125 | 0 | 5,250 |
| INV-504 | 0 | 0 | 3,600 | 23,600 |
| INV-505 | 540 | 540 | 0 | 10,080 |
Summary by rate
| GST rate | Taxable value (₹) | Total tax (₹) |
|---|---|---|
| 5% | 5,000 | 250 |
| 12% | 17,000 | 2,040 |
| 18% | 32,000 | 5,760 |
| Total | 54,000 | 8,050 |
Checks before you send it:
- Every row has either CGST + SGST or IGST, never both.
- The summary taxable total equals the register total.
- The rate column holds numbers (0.18), formatted as %, not the text "18%".
- Place of supply spellings are consistent (use a drop-down).
Ravindra Bagale's Tip
Give Place of supply a drop-down list of states. One "maharashtra " with a trailing space sends a local invoice into IGST.
Ravindra Bagale's Tip – मराठी
Place of supply ला राज्यांची drop-down list द्या. शेवटी space असलेलं एक "maharashtra " local invoice ला IGST मध्ये ढकलतं.
Ravindra Bagale's Tip – हिंदी
Place of supply को राज्यों की drop-down list दें. आख़िर में space वाला एक "maharashtra " local invoice को IGST में भेज देता है.
Loading practice tasks...
- Total invoices (Easy): Add up Invoices in D2:D11.
- Average amount (Easy): Average of E2:E11, rounded to 2 decimals.
- Rows in Admin (Easy): How many rows have Department "Admin"?
- Largest invoices (Easy): The largest value in D2:D11.
- Invoices for Admin (Medium): Total of D2:D11 where B is "Admin".
- Admin in Berlin (Medium): Total of D2:D11 where B is "Admin" and C is "Berlin".
- Best in Admin (Medium): Largest E2:E11 value where B is "Admin".
- Value of row 2 (Medium): D2 times E2.
- Look up Ananya Nair (Medium): The Invoices for "Ananya Nair" (use a lookup on column A).
- Total value (Hard): Sum of D times E for all rows.
- Share of Admin (Hard): Share of D2:D11 that is "Admin", rounded to 3 decimals.
- Rank of row 2 (Hard): Rank of D2 among D2:D11 (largest = 1).
- Above average? (Hard): "Above" if E2 is above the average of E2:E11, else "Below".