GST Automation Hub
Author : CA Dev Goyal
The Problem
Every GST filing cycle, practitioners reconcile IMS against the books - simple in theory, messy in practice. Reconciliation is only as good as the data behind it, and that data is rarely clean:
These land in Tally’s GSTR-3B report as wrong records or uncertain/not-relevant transactions - many of them pure data-entry errors wrongly treated as reconciliation mismatches. Even after sorting through that, the job isn’t done: the IMS framework defaults every unmarked invoice to Deemed Accepted, so every invoice still has to be manually classified as Accepted, Rejected, or Pending on the GST Portal - the same classification work, done twice.
The Solution - GST Automation Hub
A reconciliation engine built to absorb these data-entry mistakes rather than be broken by them.
The reconciliation engine itself is ERP-agnostic. It works off any ERP’s Inward Supply report, not Tally alone. Where a client runs Tally specifically, the built-in Tally pull adds a direct accelerator: it extracts that inward-supply data automatically, saving the time otherwise spent generating and exporting the report by hand.
Tech Stack
| Layer | Tools |
| Frontend | React 19 + TypeScript, built with Vite |
| Backend | Node.js + Express |
| Portal automation | Puppeteer, with puppeteer-extra + a stealth plugin to run reliably as a real browser session |
| Tally integration | XML/ODBC data extraction via fast-xml-parser and xml2js |
| Reporting & exports | ExcelJS, xlsx, pdfmake, pdf-parse / pdf2json |
| Packaging | @yao-pkg/pkg — ships as a standalone desktop executable, no separate install step for the practitioner |
Compliance-First Automation
No web scraping, anywhere. Every GST Portal interaction - logging in, navigating through menus, generating and downloading the files, uploading the reconciled JSON back, is driven by Puppeteer controlling a real browser the same way a human would: clicking the same buttons, following the same menus, waiting for the same pages to load. The tool stays inside the GST Portal’s own terms of service while still removing the manual, repetitive part of the work. Login also respects the portal’s own security layer - the user enters the CAPTCHA by hand, with zero automated CAPTCHA bypass.
Why It Matters
Every GST practitioner handling bulk reconciliation hits this exact problem every single return cycle. It isn’t a niche workflow, it’s the floor of GST compliance work at scale. GST Automation Hub turns a multi-day, error-prone manual reconciliation into a few compliant, automated minutes: it protects input tax credit from being lost to data-entry mistakes, cuts practitioners’ hours, and removes the duplicate Accepted/Rejected/Pending classification between books and the GST Portal. It also runs entirely on the practitioner’s own machine, so client financial data is never uploaded to a third-party cloud.