Skip to content
OnlyProjects
B.Com · Computer ApplicationsFor educational purposes only
Code included

Automated Bank Reconciliation and GSTR-2B Vendor Matching Toolkit (Excel-VBA) for a Modelled Trading SME

Two monthly chores every SME accountant dreads — BRS and ITC matching — reduced to two button clicks and one exception list

Mapped to your syllabusBCU B.Com SEP 2024 · 5.6 Survey Project · Semester 5

Overview

1 min read

Every month a GST-registered trader's accountant performs two matching chores by eye: reconciling the bank statement against the books, and checking every purchase invoice against GSTR-2B — the portal's auto-drafted ITC statement — because since section 16(2)(aa) of the CGST Act took effect, input tax credit is available only for invoices that appear there. Both chores are slow, repetitive and exactly where credits get lost and differences hide.

This advanced project designs, builds and evaluates an Excel-VBA toolkit that automates both matchings for "Vinayaka Traders", a modelled GST-registered trading SME in Bengaluru (fictional, with all practice data generated for the project). The macro workbook imports the bank statement CSV and the Tally Prime bank-ledger export, matches on amount, date window and reference, and produces a proper bank reconciliation statement with an exception list. A second module imports the GSTR-2B export and the purchase-register export, matches on GSTIN, invoice number, taxable value and tax, and classifies every exception — invoice missing in books, invoice missing in 2B, value or tax mismatch — into a vendor follow-up list and an ITC claim worksheet aligned to Table 4 of GSTR-2B.

The evaluation is measurement-driven: on six modelled months (~300 bank lines, ~150 purchase invoices), the toolkit's task time and accuracy are compared against manual matching using paired t-tests, and a self-test macro plants known errors to verify the engine. Written for the BCU B.Com 5.6 Survey Project (Semester 5, 4 credits; 100 marks = report 60 + viva-voce 20 + log book 20).

Relevant for
Karnataka
Level
Advanced · 14 weeks · solo
Common at
Bengaluru City University
Updated
Oct 2026

Syllabus alignment

BCU · B.Com SEP 2024

5.6 · Survey Project · Semester 5 · 4 credits · 100 (report 60, viva 20, log 20)

Subjects this project applies
  • Accounting Information Systems / IT in Commerce (Tally Prime, spreadsheet automation)
  • Financial Accounting (bank reconciliation statement)
  • Goods and Services Tax — records, returns and input tax credit
  • Computer Applications / Office Automation (MS Excel, VBA)
  • Business Statistics
How it is evaluated

See your department's project guidelines.

What's in the box

11 parts · 5 free · 2 previewed · 4 unlock for ₹2,000

Problem & synopsis

6 min read

Problem statement

A registered trading SME's monthly compliance now depends on two matching exercises that are still done by eye. Bank reconciliation is slow because statement lines and ledger entries rarely describe themselves identically, and the manual tick-mark leaves no reusable exception record. ITC matching is legally consequential: credit under section 16(2)(aa) is available only for invoices communicated in GSTR-2B (rule 36(4)), so an uncaught mismatch is either credit lost forever or an irregular claim. Manual matching of 150 invoices a month takes hours, produces inconsistent judgments, and generates no follow-up trail for vendors who file late.

What is needed is a transparent, parameterised, testable automation — built in the spreadsheet environment the accountant already uses — that performs both matchings, documents every exception in a defensible format, reconciles its own logic against Tally Prime's inbuilt BRS, and can be evaluated with a proper statistical comparison rather than anecdote.

Synopsis

Abstract

Bank reconciliation and GSTR-2B matching are monthly, rule-based, high-volume tasks in every registered trading SME — ideal candidates for automation with spreadsheet tools the accountant already owns. This project builds a macro-enabled Excel toolkit that automates both: importing the bank statement and Tally ledger export to produce a reconciliation statement and exception list, and importing the GSTR-2B and purchase-register exports to produce a vendor-wise ITC matching report. The toolkit is evaluated on six modelled months of transactions against manual matching, using paired t-tests on task time and accuracy, with a self-test macro that verifies the matching engine against planted errors. The output is a working, testable automation plus quantified evidence of its benefit.

Introduction

For a trader, two questions decide the health of each month-end: does the bank balance in the books equal the balance the bank reports, and can every rupee of claimed input tax credit be traced to an invoice in GSTR-2B? The GST portal answers the second partially: GSTR-2B is generated on the 14th of the following month as a static, auto-drafted ITC statement, built from suppliers' GSTR-1 filings and import data, and section 16(2)(aa) with rule 36(4) restricts credit to what it shows. The accountant must still compare it, invoice by invoice, with the purchase register in the books — and with Tally Prime exports on one side and portal exports on the other, the comparison is a perfect Excel job.

Existing system

  • BRS: the accountant ticks the bank statement against the Tally ledger on screen or on printouts; timing differences (unpresented cheques, uncredited deposits) are listed from memory; one missed line carries forward for months.
  • ITC matching: the GSTR-2B export is eyeballed against the purchase register; mismatches become phone calls; credits for invoices the vendor never filed lapse quietly.
  • Limitations: hours of scanning, no reusable record of exceptions, no follow-up list, and results that depend on who did the ticking.

Proposed system

  • A parameterised matching engine in VBA: exact-amount first, then a date-window pass (± configurable days) and a reference-similarity pass, marking each line auto-matched, partially matched or exception.
  • A BRS sheet built from the unmatched items: balance per bank, add uncredited deposits, less unpresented cheques, balance per books — with every adjustment traceable to a line.
  • A GSTR-2B matching sheet keyed on GSTIN + invoice number, with value/tax comparison and four exception classes feeding a vendor follow-up list and a claim worksheet mapped to GSTR-2B Table 4 categories.
  • A self-test macro that plants known discrepancies and asserts the engine's outputs, plus an evaluation harness with timed runs for the paired-comparison study.

Feasibility

  • Technical: Excel 2016+ and VBA only; Tally Prime's educational mode supplies the exports; no installation beyond enabling macros.
  • Time: 14 weeks — realistic for the design-build-test-evaluate cycle at advanced level.
  • Cost: nil; all data is modelled, so no real firm's figures are needed.
  • Ethics: no real GSTINs, account numbers or client data; masked examples only.

Objectives

  1. 01To model six months of transactions for a fictional GST-registered trading SME, including realistic bank patterns (multi-line narration, dated cheques, card settlements) and vendor filing behaviour.
  2. 02To build a VBA matching engine for bank reconciliation with exact-amount, date-window and reference-similarity passes driven by a parameters sheet.
  3. 03To generate a standard bank reconciliation statement whose every adjustment line is traceable to an unmatched item, and cross-check it against Tally Prime's inbuilt BRS.
  4. 04To build a GSTR-2B matching module keyed on GSTIN and invoice number with value and tax comparison, classifying exceptions into four documented classes.
  5. 05To produce a vendor follow-up list and an ITC claim worksheet aligned to GSTR-2B Table 4 categories, respecting section 16(2)(aa) and rule 36(4).
  6. 06To implement a self-test macro that plants known discrepancies and verifies the engine's outputs automatically.
  7. 07To evaluate the toolkit against manual matching on the modelled data using paired t-tests on task time and accuracy, and to report design lessons.

Scope

In scope

  • One modelled trading SME ("Vinayaka Traders") with six months of generated data: ~300 bank statement lines and ~150 purchase invoices per period set.
  • Bank reconciliation from statement CSV + Tally bank-ledger export to a BRS sheet and exception list.
  • GSTR-2B vs purchase-register matching, exception classification, vendor follow-up list, ITC claim worksheet (Table 4 categories).
  • VBA self-test harness and a timed evaluation study (toolkit vs manual) on the modelled data.
  • Parameters sheet: date tolerance, amount tolerance, reference-similarity threshold — all user-editable.

Out of scope

  • Determining ITC eligibility beyond matching (blocked credits under section 17(5) are flagged only by category, not judged).
  • Filing returns, uploading to the GST portal, or parsing the portal JSON — the module consumes the portal's Excel/CSV export.
  • Multi-bank, multi-GSTIN or multi-company consolidation; TDS-TCS matching; e-invoice reconciliation.
  • A real firm's live data — the study uses modelled data exclusively.

Methodology

Development model

An incremental build with a verification gate each week — a compact engineering cycle suited to a tool project: each increment must pass its self-test before the next begins.

PhaseWeeksActivitiesGate
1. Rule study1–2BRS conventions (bank-vs-books adjustments); GSTR-2B structure, Table 4 categories, section 16(2)(aa) and rule 36(4); Tally export formatsRule notes with sources
2. Data modelling3Generate six months of modelled bank lines and purchase invoices with planted real-world quirksData dictionary
3. Engine v1 (BRS)4–6CSV import, normalisation, exact-amount matching, date-window pass, BRS sheetSelf-test pass 1
4. Engine v2 (GSTR-2B)7–9GSTIN+invoice keying, value/tax comparison, four exception classes, follow-up list, claim worksheetSelf-test pass 2
5. Hardening10Parameters sheet, error handling, masked logging, cross-check vs Tally inbuilt BRSCross-check zero difference
6. Evaluation11–12Timed manual vs toolkit runs on the modelled months; paired t-tests; accuracy scoresResults tables
7. Report & viva13–14Write-up, PPT, demo rehearsalSubmission

Evaluation design

For each of six modelled months, the same operator (with a second operator as control) performs manual matching and toolkit matching, timed; accuracy is scored against the known ground truth of the generated data. Paired t-tests (T.TEST type 1) compare mean task times and error counts; a checklist records usability issues. Because the data is generated with known planted discrepancies, accuracy is measured exactly, not estimated.

Hypotheses (α = 0.05)

  • H1₀: there is no difference in mean task time between manual and toolkit BRS — paired t-test.
  • H2₀: there is no difference in mean task time between manual and toolkit GSTR-2B matching — paired t-test.
  • H3₀: there is no difference in accuracy (planted discrepancies detected) between the two methods — paired comparison of detection counts.
  • H4₀: the toolkit's BRS output does not differ from Tally Prime's inbuilt BRS — deterministic cross-check (difference must be zero).

Quality practices

Version-labelled imports (statement file name and hash recorded on each sheet), parameters documented on-sheet, all VAT of the engine covered by the self-test macro, and a change log sheet — the practices an examiner expects of an advanced submission.

Architecture & tech stack

1 diagram · 5 technologies · 2 min read

  • MS Excel 2016+ with VBA (macro-enabled .xlsm workbook)
  • VBA: Scripting.Dictionary matching engine, CSV import, parameterised tolerances, self-test harness
  • Tally Prime (bank ledger export, purchase register export, inbuilt BRS for cross-check)
  • GSTR-2B statement export from the GST portal (Excel/CSV)
  • MS Excel statistics for the evaluation study (T.TEST, pivot tables)

The toolkit is a two-pipeline workbook with a shared matching core, a parameters sheet and a self-test harness.

flowchart TD
  subgraph Inputs
    BS["Bank statement CSV (portal/bank download)"]
    TL["Tally bank ledger export (CSV)"]
    G2B["GSTR-2B export (GST portal, Excel/CSV)"]
    PR["Tally purchase register export (CSV)"]
  end
  BS --> IMP["Import & normalise (dates, amounts, narration)"]
  TL --> IMP
  G2B --> IMP2["Import & normalise (GSTIN, invoice no, value, tax)"]
  PR --> IMP2
  IMP --> ME{"Matching core"}
  IMP2 --> ME
  PAR["Parameters sheet: date window, amount tolerance, similarity threshold"] --> ME
  ME -->|bank lines| BM["Matched / exception marks"]
  ME -->|invoices| GM["Exception classes 1-4"]
  BM --> BRS["BRS sheet: balance per bank vs per books"]
  BM --> XL["Exception list with reasons"]
  GM --> FL["Vendor follow-up list"]
  GM --> CW["ITC claim worksheet (Table 4 categories)"]
  BRS --> XCK{"Cross-check vs Tally inbuilt BRS"}
  ST["Self-test macro: plants known errors"] --> ME
  ST --> LOG["Test log: expected vs actual"]

Matching-core logic

  1. Exact pass: same amount (to the rupee, within tolerance) and plausible date order.
  2. Window pass: same amount within the configurable date window (default ±3 days) — covers cheque float and settlement lag.
  3. Reference pass: amount close and narration/reference similarity above threshold — covers multi-line settlements.
  4. Classification: auto-matched, candidate (needs one click to confirm) or exception, each with the pass that matched it.

Why Dictionary objects

The VBA engine keys transactions in Scripting.Dictionary structures (amount-indexed for the bank pipeline, GSTIN-and-invoice-indexed for the GSTR-2B pipeline), turning lookups from nested scans into hash access. That single design choice is what makes 300-line months run in seconds and keeps the code readable enough for an examiner to audit.

GSTR-2B exception classes

(1) in 2B, not in books — purchase missed or vendor's GSTIN wrong in the books; (2) in books, not in 2B — vendor has not filed or invoice number differs; (3) taxable-value mismatch; (4) tax-rate or tax-amount mismatch. Classes 1–2 feed the follow-up list; classes 3–4 feed both the follow-up list and the claim worksheet's adjustment rows, so the credit finally claimed per Table 4 is defensible under section 16(2)(aa).

Modules

6 modules

  1. Module 01

    Import and normalisation layer

    Robust CSV/Excel readers for the bank statement, the Tally bank-ledger and purchase-register exports and the GSTR-2B export; date and amount parsing that tolerates comma-in-thousands and dd-mm-yyyy; every import stamped with file name, import time and row count on a version sheet.

  2. Module 02

    Bank reconciliation engine

    The Dictionary-keyed matcher with exact, date-window and reference-similarity passes driven by the parameters sheet; produces the matched register, the exception list with reasons, and a BRS sheet whose adjustment lines (unpresented cheques, uncredited deposits) each link to their source rows.

  3. Module 03

    GSTR-2B matching engine

    Keyed on GSTIN plus normalised invoice number with taxable-value and tax comparison; classifies every line into the four exception classes; builds the vendor follow-up list (sorted by amount at risk) and the ITC claim worksheet mapped to GSTR-2B Table 4 categories.

  4. Module 04

    Parameters and audit sheets

    User-editable tolerances (date window, amount rounding, similarity threshold) with on-sheet explanations, a change log, and masked sample rows showing how each parameter altered a classification — the transparency an external examiner probes first.

  5. Module 05

    Self-test harness

    A macro that loads the planted-error dataset (known duplicates, transpositions, float-lag cheques, late-filing vendors, GSTIN typos, tax-rate slips), runs both engines, and compares every output against expected results, writing pass/fail to a test log — the project's regression safety net.

  6. Module 06

    Modelled data generator and evaluation kit

    The generated six-month dataset for fictional "Vinayaka Traders" with ground-truth labels, the timed-run protocol (manual vs toolkit, two operators), and the Excel analysis sheets with paired T.TEST formulas, accuracy scores and the usability checklist.

Slides

12 slides · titles free · bullets, notes and the .pptx unlock

  1. Slide 1

    Automated BRS & GSTR-2B Matching Toolkit

  2. Slide 2

    The two monthly chores

  3. Slide 3

    Why GSTR-2B matching is mandatory now

  4. Slide 4

    Problem statement

  5. Slide 5

    Objectives

  6. Slide 6

    System architecture

  7. Slide 7

    Matching-key design

  8. Slide 8

    The modelled SME

  9. Slide 9

    Testing

  10. Slide 10

    Evaluation results

  11. Slide 11

    Limitations & ethics

  12. Slide 12

    Conclusion & future scope

Bullets, speaker notes and the .pptx · ₹2,000

The titles above are the real outline. The rest is what you present from.

Unlock for ₹2,000

Viva questions & answers

3 of 15 answered free · 12 unlock

Read each answer, close it, and say it in your own words. Your viva will ask. Now you'll know.

  1. 01Concept

    What is GSTR-2B and how is it different from GSTR-2A?

    GSTR-2B is an auto-drafted static input-tax-credit statement generated for each month on the 14th day of the succeeding month from suppliers' GSTR-1 filings and import data, and it does not change once generated. GSTR-2A is dynamic and keeps updating in real time as suppliers file, so the portal directs credit-claiming decisions to the stable GSTR-2B.

  2. 02Concept

    Which legal provisions make GSTR-2B matching consequential?

    Section 16(2)(aa) of the CGST Act requires that the invoice or debit note be communicated in GSTR-2B for credit to be available, and rule 36(4) of the CGST Rules operationalises the restriction by limiting the ITC that can be availed. So an invoice missing from GSTR-2B is credit the firm cannot claim that month.

  3. 03Concept

    Explain the standard structure of a bank reconciliation statement.

    It starts from the balance as per the bank statement, adds deposits not yet credited by the bank, subtracts cheques issued but not yet presented, adjusts for bank charges and direct credits the books missed, and arrives at the balance as per the cash or bank book. In my toolkit every adjustment line links to its source rows, so the statement is auditable.

+12 more questions, with answers

Try the free ones out loud first. Your examiner will not accept “it's in the PPT”.

Source code & how to run

5 steps · complete source code · unlocks with the project

Unlocks with the project · ₹2,000

5 steps · source code zip

Prerequisites, install, seed data and tests, written for demo day. Plus the complete source.

Unlock for ₹2,000

READMEFIRST

236 words · unlocks with the project

What to change before it goes anywhere near a submission. Skipping it is how the demo fails live.

Unlocks with the project · ₹2,000

236 words · ~1 min read

The checklist of things to rename, re-seed and re-think so the project reads as yours.

Unlock for ₹2,000

Instructions

314 words · unlocks with the project

How to study it, adapt it and walk your examiner through it, step by step.

Unlocks with the project · ₹2,000

314 words · ~2 min read

Report structure, formatting rules and the submission checklist your department will grade.

Unlock for ₹2,000

References

7 sources

  1. GST Portal (Government of India) — FAQ on viewing Form GSTR-2B: auto-drafted static ITC statement generated on the 14th of the succeeding month
  2. Goods and Services Tax Portal — returns, GSTR-2B download and Table 4 of Form GSTR-2B
  3. Institute of Chartered Accountants of India — guidance on input tax credit (section 16, rule 36(4)) and accounting standards
  4. Tally Solutions — TallyHelp: bank reconciliation, connected banking and data export from Tally Prime
  5. Microsoft — Excel help & learning (macros, VBA, data import)
  6. M. C. Shukla, T. S. Grewal & S. C. Gupta — Advanced Accounts, Vol. I (S. Chand) — bank reconciliation statement
  7. Bengaluru City University — B.Com Regular UG Syllabus (SEP)

Cite this bundle

OnlyProjects. (2026). Automated Bank Reconciliation and GSTR-2B Vendor Matching Toolkit (Excel-VBA) for a Modelled Trading SME: B.Com Computer Applications project bundle [Educational resource]. https://onlyprojects.online/projects/bcom-ca-excel-vba-bank-reconciliation-gstr2b-matching

Future scope

1 min read

  • Consume the GST portal's JSON download directly, removing the Excel-export intermediate step.
  • Add section 17(5) blocked-credit tagging with a rules sheet, so the claim worksheet separates ineligible categories explicitly.
  • Extend matching to e-invoice (IRN) data and TDS-TCS statements for a fuller compliance cockpit.
  • Port the engine to Power Query for a no-macro version, and compare maintainability in the report.
  • Conduct a small practitioner study: give the toolkit to five local accountants for one cycle and measure adoption and feedback — the natural 'survey' sequel to this build.

Keep browsing

Same degree, same syllabus slot, different idea. Pick the one your guide will actually approve.

B.ComCode included

Computer Applications

From Notebook to Tally: A Spreadsheet-to-Tally Bookkeeping Workflow for a Modelled Kirana Store

Six weeks, one grocery store, ninety hours: turning a daily notebook into ledgers, a trial balance and a working Tally Prime company

  • MS Excel (SUM/SUMIF formulas, pivot tables, data-validation dropdowns)
  • Tally Prime (educational mode) — company creation, masters, vouchers, reports
  • Tally voucher XML import (Gateway of Tally → Import)
  • +1

beginner6 wkSolo

B.ComCode included

Computer Applications

Payroll and Statutory Compliance Workflow (PF, ESI, Professional Tax) for a Modelled 40-Employee Bengaluru Firm

Attendance to payslip to PF ECR: building, testing and benchmarking a compliant payroll workflow that no small firm can afford to get wrong

  • MS Excel (nested formulas, data validation, pivot tables)
  • Tally Prime payroll module (pay heads, attendance types, payroll vouchers)
  • Statutory registers and returns: PF ECR, ESI, Karnataka Professional Tax, TDS (Form 24Q/16)
  • +1

intermediate12 wkSolo