GST API for Developers — What It Is, How It Works, and Which One to Use
Most GST APIs in India return one number. One flat rate. No conditions, no CGST/SGST split, no notification reference. You paste that number into your checkout flow, your CA finds it wrong six months later, and your company gets a compliance notice. Here's everything you actually need to know before picking a GST API.
What a GST API actually does
A GST API is a REST endpoint. You send it an HSN code or a product description. It returns the applicable tax rate — and if it's well-built, it returns three rates: CGST, SGST, and IGST.
That distinction matters immediately. Whether you apply CGST + SGST or IGST depends entirely on whether the supply is intrastate or interstate. A seller in Maharashtra billing a buyer in Maharashtra pays CGST 9% + SGST 9%. That same seller billing a buyer in Delhi pays IGST 18%. The total is identical. The tax authority receiving the money is not. Getting this wrong means your GSTR-1 misfires and your buyer loses ITC.
supply_type parameter is incomplete.
The three types of GST API — and which one you need
Developers conflate three different tools. They are not the same.
| API type | What it does | Who needs it |
|---|---|---|
| HSN/SAC rate API | Returns CGST, SGST, IGST for a product code or description | E-commerce, billing software, ERP, AI agents building invoices |
| GSTIN verification API | Validates a business's GST number, returns legal name + status | Fintech onboarding, KYC, B2B invoice validation |
| GST filing API | Submits GSTR-1, GSTR-3B, pulls GSTR-2B reconciliation | CA firms, accounting platforms — requires GSP/ASP licence |
If you're building a checkout, an invoice generator, or an AI agent that handles product listings — you need the HSN/SAC rate API. You do not need filing capabilities. Most developers overbuy and pay for complexity they don't use.
The problem with flat-rate GST APIs
India's GST structure is conditional. The same HSN code can return different rates depending on:
- → Whether the product is branded or unbranded (namkeens, flour, spices)
- → Whether it's pre-packaged and labelled vs loose
- → Sale value thresholds (hotel rooms above/below ₹7,500)
- → B2B vs B2C supply (restaurant with or without ITC claim)
- → Works contract vs outright sale
A flat-rate API returns 5% for unbranded rice. That's correct. It also returns 5% for branded pre-packaged rice — also correct. But it cannot tell you which condition applies to your specific transaction. You guess. Your CA corrects you. You pay the penalty.
A condition-aware API accepts parameters like branded: true, supply_type: "intrastate", sale_value_inr: 9500, and resolves the rate correctly. That is the difference between a lookup table and a compliance engine.
How to integrate a GST HSN API — in 3 minutes
cURL
# Lookup GST rate for an AC unit — intrastate supply curl -X POST https://gst-hsn-api.vercel.app/v1/lookup \ -H "X-API-Key: your_api_key" \ -H "Content-Type: application/json" \ -d '{ "description": "split AC unit", "supply_type": "intrastate", "branded": true }'
Response
{
"hsn_code": "84151010",
"description": "Air conditioning machines, split system",
"tax_rates": {
"igst": 18.0,
"cgst": 9.0,
"sgst": 9.0,
"cess": 0.0
},
"applicable_rate": "CGST 9% + SGST 9% = 18%",
"notification_ref": "09/2025-CT(Rate), Schedule II",
"effective_date": "2025-09-22"
}
Python
# pip install gstaccelerator from gstaccelerator import GSTAccelerator gst = GSTAccelerator("your_api_key") # Intrastate supply — returns CGST + SGST rate = gst.lookup("gold jewellery", supply_type="intrastate") invoice_value = 50000 cgst = invoice_value * rate[0]["tax_rates"]["cgst"] / 100 # ₹750 sgst = invoice_value * rate[0]["tax_rates"]["sgst"] / 100 # ₹750
Free vs paid GST APIs — what the tiers actually mean
| Feature | Free tier | Paid (Developer) | Paid (Pro) |
|---|---|---|---|
| HSN + SAC lookup | ✓ | ✓ | ✓ |
| CGST/SGST/IGST split | ✓ | ✓ | ✓ |
| Condition resolver | ✗ | ✓ | ✓ |
| Notification reference in response | ✗ | ✓ | ✓ |
| MCP / AI agent endpoint | ✗ | ✓ | ✓ |
| Bulk CSV classification | ✗ | ✗ | ✓ |
| Rate-change webhook | ✗ | ✗ | ✓ |
| Monthly call limit | 100 | 5,000 | 50,000 |
| Price | ₹0 | ₹399/mo | ₹1,499/mo |
Use the free tier to build and test your integration. You'll hit the 100-call limit in development within a week if you're actually building something. That's the forcing function — it tells you you're integrating correctly, and it's time to upgrade.
What to look for when choosing a GST API
Five questions. If a provider can't answer all five clearly on their website, move on.
1. What notifications does the data come from? The answer must be specific — "09/2025-CT(Rate)" or similar. "Government sources" is not an answer.
2. When was the data last updated? The GST Council meets every few months. Rates change. If the provider can't show you a last-updated timestamp in the API response itself, your data may be stale.
3. Does the API resolve conditions? Ask them to look up unbranded flour vs branded flour. The rates should differ. If they return the same number, it's a lookup table, not a compliance tool.
4. What happens on rate-change day? The GST Council announces changes. Your invoices go live the next day. Does the provider push updates the same day? Do they offer webhooks?
5. Is there a notification reference in each response? If your CA challenges a rate, you need to be able to say exactly which CBIC notification authorised it. Without the notification reference, you have a number with no legal backing.
Who actually needs a GST API
Four categories of builders where a GST API pays for itself immediately:
E-commerce checkout flows. Every product on your platform has an HSN code. Every invoice needs the correct CGST/SGST split. Hardcoding rates means touching code after every GST Council meeting.
Billing and invoicing SaaS. Your customers are CAs and business owners. One wrong rate on one invoice creates a compliance liability for your customer. A GST API with notification references converts that liability from yours to provably-correct.
ERP and Tally integrators. Product masters have 10,000+ SKUs. Classifying each one manually takes weeks. A bulk classification endpoint with natural language input turns that into an overnight job.
AI agents and LLM workflows. Any agent that writes invoices, generates purchase orders, or classifies products needs a reliable GST tool call. The MCP endpoint makes this native — the agent calls it the same way it calls any other tool, with no custom integration required.
Frequently asked questions
What is a GST API?
What is the difference between a GST HSN API and a GSTIN verification API?
Is there a free GST API for developers in India?
How do I get the CGST and SGST split from a GST rate API?
How often do GST rates change?
What is a condition resolver in a GST API?
Start with 100 free calls — no card needed
Get your API key in 30 seconds. HSN lookup, SAC codes, CGST/SGST/IGST split, notification references — all in the free tier.
Get free API key →Developer plan ₹399/month · 5,000 calls · Condition resolver · MCP endpoint