Auto-Match Bank Statements Against Tally Ledger CSVs
Why single-key Excel VLOOKUP fails on real-world bank reconciliations
Every file format and statutory compliance rule has a deterministic structure underneath the user interface. When teams rely on manual spreadsheet edits or generic cloud converters, subtle structural details get lost: page coordinate boxes reset, check digits go unverified, or rounding rules drift by several hundred rupees across a financial year. Understanding the exact specification behind Bank Reconciliation lets you verify every output before it enters an audit file or government portal.
The reference table below summarizes the core technical and statutory parameters enforced by the local engine:
| Parameter / Rule | Specification / Formula | Practical Audit Impact |
|---|---|---|
| Pass 1 (Exact ID + Amount) | Matches identical UTR / RRN / Cheque No. + exact Rupee amount | Highest-confidence deterministic match (100% certainty) |
| Pass 2 (Date Window) | Matches exact opposite amount (Bank Cr ↔ Book Dr) within ±3 to ±7 days | Catches cheques and NEFT transfers that cleared 1 to 5 days after voucher date |
| Pass 3 (Tolerance / Near) | Flags candidates within configurable ₹ tolerance (for gateway/FX rounding) | Presented for 1-click accountant review before final sign-off |
| Formal BRS Schedule | Balance per Books + Unpresented Cheques − Uncredited Deposits ± Direct Bank Entries = Balance per Bank | Exports full matched register + unmatched exceptions CSV |
Because each rule above is evaluated directly in your browser tab using typed JavaScript arrays and WebAssembly workers, there is no server queue, no file-count cap, and zero external data retention. Every byte of the source document or ledger table is parsed inside volatile browser memory and released as soon as the tab closes.
How 3-pass matching works: Exact Ref → Date Window (±N days) → Amount Tolerance
Running this workflow in Bank Reconciliation Matcher (2-CSV BRS) takes four deterministic steps from raw input to verified output:
- Open Bank Reconciliation Matcher and load your Bank Statement CSV (or relay it directly from Bank CSV Normalizer) alongside your Tally/ERP Book Ledger CSV.
- Configure the clearing date tolerance window (default ±5 days) and amount rounding tolerance (default ₹1.00).
- Run the 3-pass matcher and review the Matched rows (Pass 1, Pass 2, Pass 3) and the Unmatched Bank / Unmatched Book exception lists.
- Export the formal Audit BRS Summary and the full reconciliation workpaper as CSV.
When you process recurring monthly batches, keeping the input schema consistent across runs ensures that downstream checks in related guides such as clean and normalize indian bank statement csv exports, pivot and group large csv files in browser, use csv cleaner match to the exact rupee or byte. Before starting a large batch, verify that your source file is not locked by an unknown password and that column headers or page indices match the expected range.
Step-by-step: reconciling Bank CSV vs Book Ledger CSV in ShiftTools
Reconciling a ₹72,740 Month-End Variance Between Tally Books and Bank Statement
An accountant reconciles October's 420 bank rows against 412 Tally book vouchers where Book Balance = ₹18,42,150 and Bank Balance = ₹19,14,890 (a ₹72,740 difference). Pass 1 matches 340 rows by exact UTR/Cheque ID; Pass 2 matches 68 rows by exact amount within a ±4-day clearing window. That leaves 4 unmatched Book items and 12 unmatched Bank items: (1) Two cheques issued to vendors totaling ₹1,15,000 not yet presented at the bank (+₹1,15,000); (2) One customer cheque of ₹44,500 deposited on Oct 30 but credited on Nov 2 (−₹44,500); (3) Auto-credited FD sweep interest on bank statement (+₹2,830); and (4) Eleven bank SMS/NEFT charges totaling ₹590 (−₹590). Checking the BRS identity: ₹18,42,150 + ₹1,15,000 − ₹44,500 + ₹2,830 − ₹590 = ₹19,14,890 (₹0.00 unexplained variance).
BANK RECONCILIATION STATEMENT (AS ON 31-OCT-2026)
Balance as per Company Book Ledger (Dr): ₹18,42,150.00
Add: Cheques issued but not yet presented (2 items): +₹1,15,000.00
Add: Direct bank credits / Sweep interest (1 item): +₹2,830.00
Less: Cheques deposited but not yet credited (1 item): −₹44,500.00
Less: Bank charges not yet booked in Tally (11 items): −₹590.00
----------------------------------------------------------------------
Reconciled Balance as per Bank Statement: ₹19,14,890.00
Unexplained Variance: ₹0.00
You can reproduce this exact calculation at any time by pasting the sample values above into Bank Reconciliation and comparing the generated summary row against your internal workpaper. Recording the input parameters alongside the output file creates a self-contained audit trail for statutory or peer review.
Worked example: reconciling 420 monthly rows and generating the BRS schedule
In production accounting and document engineering workflows, edge cases appear when inputs combine multiple conventions in a single batch. For example, a merged PDF bundle may mix portrait A4 text pages (/MediaBox 595.28 × 841.89 pt) with wide environment annexures, or a quarterly ledger export may combine April-to-September transactions with October-to-March entries after a mid-year threshold revision.
To prevent silent errors across those boundaries, always inspect the per-item diagnostic status before exporting the final file:
- Verify unit consistency: Confirm whether input figures represent monthly vs annual amounts, GST-exclusive vs GST-inclusive values, or 1-based physical page indices vs printed document numbers.
- Check boundary conditions: Pay close attention to exact threshold cutoffs, leap-year day counts, and page rotation multiples (0, 90, 180, 270 degrees) where off-by-one errors commonly occur in manual spreadsheets.
- Preserve audit trails: Save the exported summary CSV or processed PDF alongside the raw source file so any reviewer can trace the transformation step by step without re-keying data.
- Cross-check neighbour utilities: Pair Bank Reconciliation with companion tools in the Accounting & Finance suite (clean and normalize indian bank statement csv exports, pivot and group large csv files in browser, use csv cleaner) when a task spans multiple stages.
Handling split/many-to-one batches and bank-only charges
Remember that Debit and Credit signs are inverted between your company's Cash/Bank ledger and the bank's statement: money coming into your account is a Debit in your company's Bank Book (asset increasing) and a Credit on the Bank Statement (the bank's liability to you increasing). The tool maps Bank Credits against Book Debits (and Bank Debits against Book Credits) automatically.
By separating deterministic local computation from external portal lookups, your team eliminates manual formatting and calculation errors while keeping sensitive client files off third-party cloud servers.