Reconcile a bank account month by month
Bank reconciliation is about ticking, one by one, entries that actually appear on the statement until the gap drops to zero, then closing the month. Ledger auto-loads the opening balance from the prior reconciliation, handles outstanding items that carry from one year to the next, and shows the gap in real time as you check items.
When to reconcile
Ideally at each month-end when the bank statement arrives. Concretely :
- You imported the statement into Bank transactions.
- You categorized every transaction (otherwise they don't appear in reconciliation).
- The PDF or paper statement is open next to you, with the month-end balance.
Only classified entries can reconcile. If transactions sit in « To review », Ledger warns : « X unclassified transaction(s) in this period aren't shown : only classified entries reconcile. Classify them first, otherwise the balance can't balance. »
Open Reconciliation
Engagement's left menu → BOOKKEEPING → Reconciliation. The page has two tabs : Reconcile (this one) and Reports (history of closed reconciliations).
Pick the account and dates
At the top, pick :
- The account to reconcile.
- The statement end date (last day of the bank period).
- The statement ending balance as printed on the bank's statement.
The opening balance is locked : it comes from the prior reconciliation's ending balance. You don't type it, Ledger computes it. A line « Last reconciliation : {date} · balance {balance} » reminds you where it comes from.
This red message appears when a transaction already reconciled in a closed period was deleted or modified after the fact. Subsequent months won't balance until fixed. Find the touched transaction (often in the previous period's operation entries), restore it, or undo the most recent reconciliation from the Reports tab to re-tick.
Tick the transactions present on the statement
The table lists all entries touching this account in the period. Compare each row with the statement, tick those that appear. Check all button at the top if the statement is short and you want to tick all then untick the few missing.
The gap recalculates on each tick. Goal : bring it to $0.00.
Read the Transfer and Entry tags
Some rows have a tag next to the description :
- Transfer : movement from another bank account (via « Classify as transfer » in Bank transactions).
- Entry : movement touching this account without a bank transaction of its own (e.g. a manual cheque entered as entry, or an adjusting entry).
These derived movements tick like others, they count into the reconciled balance.
Handle prior-year items
A prior-year item is a transaction (typically an outstanding cheque) from an already-closed year that was never presented to the bank. It shows up in the current reconciliation with a Prior year badge.
Ticking a prior-year item never touches the frozen year : Ledger marks it as « presented » in the current year, while keeping the prior year frozen. Exactly what you want for these lingering items.
Close the month
When the gap is zero, click Close month. Ledger records the reconciliation as a « report » in the Reports tab :
- Ticked items are locked as reconciled.
- The ending balance becomes the (locked) opening balance of the next reconciliation.
- A printable report is available from the Reports tab (Summary, date, totals, transaction details).
A month with no activity (an unused credit card, zero balance) can be closed too : enter the statement date and its ending balance (often 0) without ticking anything. The gap is zero, the button activates, and the record keeps the balance chain continuous. An account that was reconciled in the past stays in the account dropdown even with no transactions this year.
Reports tab, history
Each closed reconciliation appears with its date, account, transaction count, and a Report button to open the PDF. Useful for audit or to see what was done last month.
An All accounts filter at the top shows multi-account history ; otherwise each account card has its own history.
The most recent reconciliation of each account also carries an Undo button. After confirmation the reconciliation is deleted : its transactions become uncleared again and you can redo the month. Only the last reconciliation of an account can be undone, because months chain together (one month's ending balance becomes the next month's locked opening balance) ; to go further back, undo months one at a time, from the most recent to the oldest.
When the gap won't drop to zero
Common causes, in order of likelihood :
- A transaction is missing in Ledger : on the statement but not in the list. Re-import the statement, or add it manually in Bank transactions.
- An extra transaction is ticked but not on the statement (mistakenly classified, or duplicated). Untick and verify whether to delete.
- Ending balance mis-typed : re-read the statement, a flipped digit slips in.
- A transaction is in the wrong account (e.g. a credit card that landed on the bank). Fix in Bank transactions, come back.
- An outstanding cheque is absent : normal, don't tick this month, it stays for next period. The gap must account for its value.
Cross-year carry, bounded to the last reconciliation
When a client has transactions spanning several years (automatic monthly withdrawals, recurring debits), Ledger bounds the carry of outstanding items to the last closed reconciliation, not to all unpicked transactions from the prior year. Otherwise recurring payments would appear as false duplicates in the current period.