Bank Reconciliation
Import bank statements, auto-match transactions against your books, and reconcile the difference between bank balance and book balance.
Importing Statements
Navigate to Bank → Import Statement.
Supported Formats
- CSV — Most banks provide this. Sally auto-detects column layout (date, description, debit, credit, balance) using heuristic column-name matching.
- OFX — Open Financial Exchange format (used by some banks and aggregators)
Upload Flow
- Select the bank ledger (which bank account this statement belongs to)
- Upload the file (drag-and-drop or click)
- Sally parses the file and creates statement lines
- Review the parsed transactions (date, description, amount)
- Trigger auto-matching
Auto-Matching Algorithm
Sally's matching engine scores each bank line against your existing voucher entries and payments.
Scoring Criteria
| Criteria | Score |
|---|---|
| Exact amount + same date | 1.00 |
| Exact amount + within 3 days | 0.85 |
| Exact amount + within 7 days | 0.65 |
| Exact amount + within 14 days | 0.50 |
| Amount within ₹1 (rounding diff) | −0.05 penalty |
| Reference string exact match | +0.15 |
| Reference token in description | +0.10 |
| Narration word overlap | +0.05 |
Threshold: Lines scoring below 0.55 remain unmatched.
Conflict resolution: If two bank lines try to match the same voucher, the higher-scoring one wins. Each voucher can only be used once.
Match Statuses
- UNMATCHED — No corresponding entry found in your books
- MATCHED — Auto-matched by the algorithm (above threshold)
- MANUALLY_MATCHED — You overrode the match or matched it yourself
Manual Reconciliation
For unmatched lines, you can:
- Accept a suggestion — If the algorithm suggests a match (below confidence), accept it
- Pick a different voucher — Search and select the correct entry manually
- Create a new voucher — If the bank transaction has no corresponding book entry, create one on the spot
- Unmatch — Revert a previously matched line back to unmatched
Statement List Page
The main bank page (/bank) shows:
- Summary cards — Total statements imported, unmatched lines, auto-match accuracy %
- Statements table — Bank name, file name, period, total lines, matched count (with progress bar), import date
- Sortable columns — Sort by any column
- Pagination — Server-side pagination
Reconciliation View
Click into a statement to see the detailed reconciliation view:
- Statement balance — As reported by the bank
- Book balance — From your voucher entries on that bank ledger
- Difference — The unreconciled amount
- Line-by-line list — Each bank transaction with match status, confidence score, and matched voucher reference