How an ERP Applies CGST, SGST and IGST
Updated
Short answer
An ERP applies CGST and SGST when the supplier and the place of supply are in the same state, and IGST when they are in different states. To do that it needs your state, the party’s state from their GSTIN or record, and the tax amount for each line. It then splits the tax accordingly and flags data it cannot classify with confidence, so errors are caught before returns are prepared.
The basic rule
GST on a domestic sale takes one of two forms. If the supplier and the place of supply are in the same state, the tax is split into CGST, which goes to the central government, and SGST, which goes to the state, in equal halves. If they are in different states, the whole tax is charged as IGST. The total tax is the same either way; what changes is how it is labelled, reported and accounted for.
A worked example
Say a trader in Jaipur sells goods worth ₹10,000 at 18% GST, so the tax is ₹1,800. If the buyer is in Rajasthan, the invoice shows CGST of ₹900 at 9% and SGST of ₹900 at 9%. If the buyer is in Delhi, the invoice shows IGST of ₹1,800 at 18%. The buyer’s side works the same way in reverse: on a purchase from a supplier in another state, the bill carries IGST, and from a supplier in your own state, it carries CGST and SGST.
What an ERP needs to know
To choose correctly on every line, an ERP needs three things: which state you are registered in, which state the other party is in, and the tax to be split. The first is a company setting. The second comes from the party’s GSTIN, whose first two digits are the state code, or from the state on their record when they have no GSTIN. The third comes from the taxable value and the GST rate for the product. If any of these is wrong or missing, the tax lands in the wrong head.
How TradeFlow decides
TradeFlow makes this decision in one place, so every invoice and bill follows the same rules.
- Your state comes from the company’s GST settings or, failing that, from your own GSTIN
- The other party’s state comes from their GSTIN, after the number passes a format and checksum check; otherwise it comes from the state on their record
- If the party’s state differs from yours, the supply is inter-state and the whole tax is IGST
- If the states are the same, the supply is intra-state, and the tax is split into CGST and SGST
- The place of supply shown on the record is derived from the party’s state
How the split is calculated
For each invoice line, the tax is worked out from the taxable value and the rate, rounded to the paisa. For an intra-state line, CGST is half of that tax, rounded, and SGST is the remainder, so the two always add up exactly to the tax, even when an odd paisa does not divide evenly. The database also enforces the rule: an intra-state record cannot carry IGST, and an inter-state record cannot carry CGST or SGST, so a mislabelled GST record is rejected rather than saved.
What TradeFlow flags for review
A system that classifies silently can be wrong silently. TradeFlow raises an exception in the GST exceptions list when the data behind a classification is doubtful.
- A GSTIN that fails the format or checksum test
- A GSTIN whose state disagrees with the state on the party record, in which case the GSTIN’s state is used and the mismatch is flagged
- An outward sale to a GST-registered party with no place of supply that can be determined
- A missing HSN code where one is needed
- A tax rate that is not in the rates configured for the company
- Tax charged by a composition-scheme company, which should not charge GST on its sales
Customers without a GSTIN
Not every buyer is registered. A sale to a customer without a GSTIN is treated as a sale to an unregistered buyer, and no exception is raised for the missing number. The party’s state on their record decides whether the tax is CGST and SGST or IGST, so keep that state accurate. If the state is missing on a record with no GSTIN, TradeFlow treats the sale as within your own state, so fill it in.
Cases to review with your CA
TradeFlow classifies each supply as intra-state or inter-state from the party’s state. Situations outside that pattern, such as goods delivered to a state different from the buyer’s billing state, exports or other special supplies, should be reviewed with your CA before you rely on the default. GSTIN checks in TradeFlow are format and checksum checks; a number that passes is not confirmed against the government’s records.
Keeping the masters clean
Almost every wrong classification traces back to a master record. Enter each customer’s and supplier’s GSTIN and state correctly once, keep your own company’s GST settings up to date, and review the exceptions list each week rather than at month end. A few minutes on masters saves a longer clean-up when the return is due.
Where TradeFlow fits
TradeFlow is an ERP for Indian traders, wholesalers, distributors and dealers, and applies CGST, SGST and IGST from the invoices and bills you raise. It prepares GST return data; the returns themselves are filed outside TradeFlow, by you or your CA. To see how the GST data is recorded, read the guide to GST records against invoices and bills.
FAQs
How can an ERP manage CGST, SGST and IGST?
By comparing your state with the other party’s state on each line. Same state means CGST and SGST in equal halves; different states means IGST. The ERP needs correct state and GSTIN data on the masters to do this reliably.
How can an ERP separate CGST, SGST and IGST correctly?
It should decide from the states, split the tax so the parts add up exactly, and flag doubtful data such as an invalid GSTIN or a missing state. TradeFlow also enforces the split in the database, so a wrongly labelled GST record is rejected.
What if my customer has no GSTIN?
The sale is treated as a sale to an unregistered buyer. The state on the customer’s record decides between CGST and SGST or IGST, so keep it accurate.