GST & compliance (India)
This chapter is India-specific. It covers preparing and filing GSTR-1 and GSTR-3B under the current auto-lock regime, correcting via GSTR-1A, the pre-file safety gates OnGravy runs before anything leaves your books, the Invoice Management System (IMS), 2B reconciliation, annual returns, and e-way bills. E-invoicing (IRN generation) is covered in Daily bookkeeping.
Filing GSTR-1 and GSTR-3B
Filing lives at /dashboard/gst/file: pick the return (GSTR-1 or GSTR-3B) and the period, review what OnGravy has compiled from your books, and file. Two submission modes:
- Live submit — OTP-verified filing straight to the portal. Requires your own GSP credentials; without them, live submission is unavailable.
- Portal-ready JSON — download the exact JSON and upload it on the GST portal yourself. No credentials needed; this is a manual step by design.
The lock regime: 3B is auto-populated, corrections go through 1A
Since the July 2025 tax period, GSTN auto-populates your GSTR-3B liability (Tables 3 and 3.1; Table 3.2 as well since November 2025) from what you reported in GSTR-1, GSTR-1A, and IFF — and the portal forbids editing those figures manually. The consequences are worth internalising:
- If your GSTR-1 was wrong, you cannot patch it inside 3B. Corrections go through GSTR-1A at
/dashboard/gst/gstr1a, and they must be filed before your 3B for that period. - You get one GSTR-1A per period — batch your corrections; there is no second pass.
- OnGravy’s pre-file checks hard-block any 3B that diverges from your filed GSTR-1 and steer you to the 1A flow instead — you cannot file a 3B the portal would fight you on.
Coming next: the ITC lock. The equivalent lock on ITC (Table 4A) is expected from the July 2026 tax period — no formal advisory yet, so treat the date as expected rather than confirmed. OnGravy already warns whenever your claimed ITC exceeds what GSTR-2B supports, so filing as if the lock were live today costs you nothing and protects you when it lands.
Pre-file safety gates
Before a return can be filed, OnGravy runs a series of gates. Some warn, some block outright:
| Gate | Behaviour | What it catches |
|---|---|---|
| Duplicate period | Blocks | Filing a period that has already been filed. |
| Negative tax | Blocks | A return computing to a negative tax figure — always a data error upstream. |
| Payment not recorded | Blocks | Filing a 3B whose tax payment has not been recorded in your books. |
| 3B ↔ 1 divergence | Blocks | A 3B that does not match your filed GSTR-1 — steered to GSTR-1A (see the lock regime). |
| Scrutiny shield | Blocks (opt-in) | An opt-in hard block on filings that match known scrutiny-trigger patterns. |
| 3-year time bar | Blocks | Returns are permanently barred 3 years after the due date. OnGravy blocks with the exact bar date shown, and warns at the 90-day cliff before it. |
| Advisory 653 reminder | Reminds | The “Tax Liability Breakup” save-step required on the portal from Feb 2026 — surfaced at the right moment so the portal does not bounce you. |
IMS — the Invoice Management System
The IMS tracker at /dashboard/ims-tracker is where you act on each inbound invoice: accept, reject, or leave pending. The rules have real teeth:
- Credit notes can stay pending for at most one period — you cannot park them indefinitely.
- Accepting a supplier’s credit note means declaring your actual ITC reversal — the acceptance is not a formality; it carries the reversal amount.
- Rejecting a supplier’s credit note raises their next 3B liability. Rejections are visible, consequential actions between you and your supplier — expect the phone to ring.
- GSTR-2B is sequential— your 2B for a period only generates after the prior period’s 3B is filed. A late 3B delays your own ITC visibility for the next period.
Reconciling with GSTR-2B
/dashboard/gstr-2b— line-level reconciliation of your purchase books against GSTR-2B, so ITC you claim is ITC your suppliers actually reported. The OCR pipeline also grounds extracted bills against 2B (see Daily bookkeeping)./dashboard/gst/recon-3b-vs-1— cross-checks 3B against GSTR-1 so divergences surface long before the pre-file gate has to block anything.- ITC time-bar tracker — keeps the clock on input credit that will lapse if not claimed in time.
Annual returns — GSTR-9 and 9C
Annual return preparation lives at /dashboard/gst/gstr9. For FY 2024-25 onwards the new tables — 6A1, 8, and 8H1 — are supported, so the current-format return compiles straight from your filed periods.
E-way bills, LUT, and the compliance calendar
- E-way bills — auto-fire from logistics dispatch, so goods movement and the e-way bill are one action, not two.
- LUT — a dedicated page for your Letter of Undertaking (zero-rated exports without IGST payment).
- Compliance calendar & Autopilot — every deadline in one calendar, with Autopilot automation on top; the Automation chapter covers Autopilot in depth.
GST rate slabs
Since 22 September 2025 the GST slabs are 5%, 18%, and 40%. The old 12% and 28% slabs are retained for historical documents only — you will still see them on pre-change invoices and returns, but new documents use the current slabs.
Gotchas & good to know
- File 1A before 3B, and batch it.One GSTR-1A per period is all you get; a correction you remember after filing 1A waits for next period’s documents.
- Late 3B has a knock-on cost: 2B is sequential, so slipping one 3B delays your ITC visibility for the following period too.
- Rejecting a credit note is not private.It raises the supplier’s next 3B liability — coordinate before you click reject.
- The 3-year bar is permanent. Once a return crosses it, no one can file it — not you, not your CA, not the portal. Take the 90-day cliff warnings seriously.
- Live filing needs your GSP credentials. Without them the flow is manual by design: download the portal-ready JSON and upload it yourself.
- The ITC Table-4A lock date is expected, not confirmed.July 2026 period is the working assumption; there is no advisory yet. OnGravy’s ITC-vs-2B warnings already prepare you either way.