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:

GateBehaviourWhat it catches
Duplicate periodBlocksFiling a period that has already been filed.
Negative taxBlocksA return computing to a negative tax figure — always a data error upstream.
Payment not recordedBlocksFiling a 3B whose tax payment has not been recorded in your books.
3B ↔ 1 divergenceBlocksA 3B that does not match your filed GSTR-1 — steered to GSTR-1A (see the lock regime).
Scrutiny shieldBlocks (opt-in)An opt-in hard block on filings that match known scrutiny-trigger patterns.
3-year time barBlocksReturns 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 reminderRemindsThe “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.
← Previous
🏭 Industry & specialised accounting
Next →
👥 Payroll & TDS