DEV Community

Subhendu Das
Subhendu Das

Posted on

GST Reconciliation Software: Auto‑Reconcile GSTR‑2B

Auto‑Reconcile Your Purchase Register with GSTR‑2B

The Problem

For Indian SMBs, the sheer volume of invoices and the complexity of the Goods and Services Tax (GST) framework make manual reconciliation a nightmare. Accountants spend hours matching each line‑item in the purchase register against the corresponding entry in the GSTR‑2B download. Even a single mismatch can trigger audits, lead to ITC leakage, or result in late filing penalties. The traditional approach relies on spreadsheets, manual look‑ups, and a lot of guesswork.

How It Works

GSTBot’s auto‑reconciliation engine tackles this pain point head‑on. The process starts when a user uploads invoices in photo, PDF, or Excel format. Behind the scenes, Tesseract OCR and OpenRouter‑powered language models extract structured data—vendor GSTIN, invoice number, amount, tax rate, and HSN code—from each document. These records populate a PostgreSQL database, while Redis caches intermediate results for speed.

The reconciliation logic then pulls the GSTR‑2B file for the relevant tax period. For every invoice in the purchase register, GSTBot performs a deterministic match against the GSTR‑2B entries. The algorithm considers multiple fields: GSTIN, invoice number, date, and amount. If an exact match is found, the invoice is flagged as reconciled. When a mismatch occurs—be it a differing amount, missing invoice, or duplicate entry—the system flags the discrepancy and categorises it.

The engine also applies Rule 37/42/43 checks to detect potential reversals and flags any supplier who has defaulted on filing. All these findings are surfaced in a single, intuitive dashboard.

What It Looks Like to Use

After the initial upload, the user sees a progress bar that reflects the OCR and extraction phases. Once extraction is complete, a table appears with a list of invoices, each accompanied by an icon indicating its reconciliation status: ✅ Reconciled, ⚠️ Mismatch, ❌ Missing, or 🔁 Duplicate.

Clicking on an invoice opens a modal that shows the full extraction details alongside the matching GSTR‑2B line. If a mismatch is flagged, the modal offers quick actions:

  • Adjust – edit the amount or tax rate manually.
  • Ignore – mark the discrepancy as acceptable (useful for legitimate price changes).
  • Re‑run – trigger a re‑match after making changes.

For invoices that remain unmatched, GSTBot provides a search bar to manually locate the corresponding GSTR‑2B entry. Once the user confirms a match, the system updates the status in real time.

The dashboard also displays a summary panel that aggregates key metrics: total invoices, reconciled percentage, mismatched amount, and potential ITC leakage. This high‑level view gives accountants a quick health check before proceeding to the next step.

Impact on Your Workflow

By automating the matching process, GSTBot reduces manual reconciliation time from hours to minutes. The system’s precision in matching reduces the risk of ITC leakage, ensuring that eligible input tax credit is captured accurately. Accountants no longer need to sift through spreadsheets; instead, they can focus on higher‑value tasks such as audit preparation or strategic tax planning.

Because the reconciliation engine is built on FastAPI and Celery workers, it scales effortlessly across multiple GSTINs—a common requirement for CA practices handling several clients. The real‑time feedback loop also means that any new invoice upload instantly reflects on the reconciliation dashboard, keeping the register up‑to‑date.

In short, GSTBot’s auto‑reconciliation feature turns a tedious, error‑prone process into a streamlined, reliable workflow that protects SMBs from costly ITC gaps and compliance pitfalls.

Top comments (0)