Indian govt portals are slow, ugly, and confusing.
We're building the layer that means you never see them.
OnGravy replaces incometax.gov.in, gst.gov.in, tdscpc.gov.in, mca.gov.in, ewaybillgst.gov.in, and 4 more with one clean cockpit. Pre-filled returns, AI-drafted notice responses, parallel filing across 50 clients.
Portal by portal — what OnGravy does instead
Live = shipped, in production. Partial = adapter exists, UI flow being polished. Scaffold = framework in place, target deployment in the next 30-45 days. We publish status changes on /compliance/changelog.
What it actually looks like
Filing GSTR-3B for May
- Open gst.gov.in — Captcha, OTP, login. ~2 min if portal is up.
- Navigate to Returns — Period selector, mode selector, "Prepare online".
- Type each value manually — Outward supplies, ITC available, reverse charge, late fees — 28 boxes.
- Hit Save, get an error — "G-3122: Schema mismatch on table 4A". No row, no field.
- Hunt for the bad row — Browser dev tools or download → fix → re-upload.
- Submit. Pay tax. EVC. — 20-30 minutes if you're lucky. 2 hours if not.
- Open /dashboard/compliance — GSTR-3B for May is already computed from your vouchers.
- Review the 4 KPI tiles — Outward tax, ITC, net liability, late-fee exposure. Drill down to source.
- Hit "Validate" — OnGravy runs GSTN's actual schema rules locally in <100ms. Errors in plain English.
- Download GSTN JSON — One file, exactly what gst.gov.in expects.
- Upload + Submit on portal — 30 seconds. Or let the computer-use agent do it for you (Pro tier).
Handling a DRC-01 notice
- Hear about it by accident — "Hey, did you see the notice on the portal?" — gst.gov.in doesn't email you.
- Log in. Find Notices tab. — Three levels deep, 12 PDFs, no order.
- Download the PDF — It's 18 pages of section references and a demand line.
- Pull books for the period — GSTR-1, 3B, ITC, payments — assemble from Tally + Excel.
- Draft a reply in Word — Cite sections, attach exhibits, mistakes in addressing the AO.
- Upload on portal, hope for the best — Tracking is the same nightmare Notices tab.
- OnGravy detects the email — Gmail scan worker pulls the notice within 15 minutes.
- PDF auto-OCR'd — Notice body transcribed; you receive an in-app + WhatsApp ping.
- Agent classifies + drafts — DRC-01 / DRC-02 / ASMT-10 detected. Demand amount + due date extracted. Reply drafted citing sections.
- Review on /audit-trail page — Every event timestamped + actor-stamped. Edit the draft inline.
- Submit on portal in 30 seconds — Mark responded with method=portal → timeline closes the loop.
Filing for 50 clients in one go
- Open 50 portal tabs — Or 50 sequential sessions. Either way, hours.
- Lose your place at client 17 — Captcha expired. Re-login.
- No status dashboard — Maintain a Google Sheet to track who you've done.
- Spread across 3 days — Realistic time on filing peak weekends.
- Open /ca/bulk-filing — Grid of every client × every return. Status per row.
- Filter to "ready" — Pre-validation already ruled out broken returns.
- Click File all eligible — Parallel submission. Per-client retry on error.
- 50 returns in 8 minutes — Saturday afternoon, not the whole weekend.
“I haven't logged into gst.gov.in in 11 days. That used to be 11 sessions a week.”
— Indicative of the workflow we're shipping for. Early-access CA reviewer feedback, May 2026.
The honest FAQ
Are you "screen-scraping" the portals? Is that legal?
For everything in Layer 1 of our stack (e-invoice, e-way bill, GSTR returns, AA Setu, DigiLocker) we use the official GSP / API / OAuth channels. No scraping. For the residual portals without APIs (parts of MCA, parts of ITR), our computer-use agent runs in a sandboxed browser that the user sees on their own screen — same as a junior accountant clicking through the portal under your direction. You're always the principal; we never bypass your DSC or your consent.
What about captchas and 2FA?
Captchas and OTPs stay with the human, always. When the agent hits one, it pauses and shows you the challenge in OnGravy — you type in the captcha, we hand it back to the agent. Never auto-solved.
When GSTN ships a UI change, doesn't your automation break?
Yes. We commit to a 30-day SLO for fixing portal-change breakage — same as our compliance changelog SLO. Until the patch ships, the affected flow falls back to "pre-fill + manual click" mode (so you go from 1-click to 5-click, not 1-click to broken).
My CA still wants to log into the portal to "be sure". Is that allowed?
Of course — OnGravy is a layer, not a replacement. Your CA can verify on the portal any time. The point is that they shouldn't HAVE to.
What about MCA forms that need DSC signing?
DSC always stays with you. We pre-fill the form, run local validation, generate the XBRL — you plug in your DSC token and click Sign + Submit. Time on portal drops from ~45 min to ~90 seconds.
Stop fighting the portals.
Plans from ₹299/month. Connect Gmail in notices mode in the first 5 minutes. See the difference within one filing cycle.
See plans →30-day money-back guarantee. No portal logins. Just OnGravy.