India GST (regular scheme: CGST, SGST, IGST)
gst_regularCalculate Indian GST on a supply under the regular scheme: CGST + SGST for an intra-state supply, IGST for an inter-state supply, export or SEZ supply, with optional compensation cess, reverse charge and input tax credit eligibility (Sections 9 and 16-17, CGST Act 2017; Section 5, IGST Act 2017).
Behavior: Deterministic, idempotent calculation with zero external side effects. The rate must be one notified in the GST rule pack in force on as_of_date; the engine refuses a rate the pack does not contain rather than assume one. Exclusive mode adds tax to the amount; inclusive mode extracts it. Returns taxable value, CGST, SGST, IGST, cess, total tax and invoice total.
Usage Guidelines: Use for a registered person under the regular scheme. Do not use for a composition-scheme taxpayer; use gst_composition instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Supply value in INR (the taxable value in exclusive mode, the tax-inclusive total in inclusive mode). | |
| is_rcm | No | Tax payable by the recipient under reverse charge (Section 9(3)/9(4)). | |
| as_of_date | Yes | Civil date YYYY-MM-DD. Selects the rule pack in force on that date. Required: the engine will not assume a date. | |
| supply_type | No | Intra-state (CGST + SGST), inter-state (IGST), export or SEZ supply. If omitted, derived from supplier_state and place_of_supply when both are given. | |
| cess_percent | No | Compensation cess in percent, where applicable. | 0 |
| itc_eligible | No | Whether the recipient may claim input tax credit (false for a Section 17(5) blocked credit). | |
| rate_percent | Yes | GST rate in percent. Must be a rate notified in the rule pack in force on as_of_date. | |
| supplier_state | No | Supplier's state: 2-digit GST state code or state name. | |
| place_of_supply | No | Place of supply: 2-digit GST state code or state name. | |
| calculation_mode | No | 'exclusive' adds GST to amount; 'inclusive' extracts GST from amount. | exclusive |