Reconcile a Bank Statement: A Full Worked Example, Start to Finish
· 10 min read
This is a complete, start-to-finish reconciliation of one bank account for one month, using real (if simplified) numbers throughout, so every figure below can be checked by hand. It is the definitive version of the worked example in how to do a bank reconciliation, extended with the actual CSV inputs and the resulting journal entries.
The scenario
A small business is reconciling its operating checking account for June. The bank statement for the period ends with a balance of $14,200.00. The cash account in the books shows $14,340.00 for the same date. The two numbers are $140.00 apart, and the job of a reconciliation is to explain that entire gap with named, specific items, not to guess.
The two source files
Exported from the bank's online portal, the statement CSV for the period looks like this (trimmed to the relevant lines):
date,description,reference,amount 2026-06-02,Check 2038 cleared,2038,-620.00 2026-06-05,Deposit - customer payment,DEP-114,2450.00 2026-06-11,Check 2040 cleared,2040,-215.00 2026-06-14,Monthly service charge,,-45.00 2026-06-19,Deposit - customer payment,DEP-121,1980.00 2026-06-24,Returned item NSF,INV-3390,-300.00 2026-06-27,Interest paid,,10.00
And the cash account register exported from the accounting system for the same period:
date,description,reference,amount 2026-06-01,Check 2038 - vendor payment,2038,-620.00 2026-06-05,Customer payment - Invoice 3210,DEP-114,2450.00 2026-06-09,Check 2040 - vendor payment,2040,-215.00 2026-06-19,Customer payment - Invoice 3390,DEP-121,1980.00 2026-06-28,Check 2041 - vendor payment,2041,-850.00 2026-06-29,Check 2044 - vendor payment,2044,-545.00 2026-06-29,Deposit - Invoice 3401,DEP-130,1200.00
Matching, pass by pass
A matching engine works in strictness order rather than picking whatever looks close. First, reference plus exact amount: checks 2038 and 2040 match instantly, both sides agree on reference number and amount. The two customer deposits (DEP-114, DEP-121) match the same way. That leaves four lines: the bank's service charge, NSF item and interest (which do not exist in the ledger at all yet), and three ledger entries, checks 2041 and 2044 and the June 29th deposit, which have not reached the bank yet.
What is left, sorted correctly
- Outstanding checks (bank-side adjustment): check #2041 for $850.00 and check #2044 for $545.00, both written and recorded in the books on the 28th and 29th, have not cleared the bank yet. Total: $1,395.00.
- Deposit in transit (bank-side adjustment): the $1,200.00 deposit made on the 29th has not posted to the bank statement yet.
- Bank service charge (book-side adjustment): $45.00, on the statement, not yet in the books.
- NSF check returned (book-side adjustment):$300.00, a customer's check that bounced, on the statement but not yet reflected in the books.
- Interest earned (book-side adjustment): $10.00, credited by the bank, not yet in the books.
Building the two adjusted balances
Both sides land on $14,005.00. The original $140.00 gap between the raw balances is fully explained: $1,200.00 in transit and $1,395.00 in outstanding checks on the bank side, netted against $335.00 net of book-side items ($300.00 NSF plus $45.00 fee, less $10.00 interest), happen to net out to a $140.00 difference between the two starting figures. Reconciliation does not require the raw balances to be close; it requires every difference, however it happens to net out, to be individually named.
The journal entries this generates
Only the book-side items need entries; outstanding checks and the deposit in transit will clear naturally as the bank processes them, needing no entry today.
- Debit Bank Fees Expense $45.00 / Credit Cash $45.00
- Debit Accounts Receivable (or a chargebacks/clearing account) $300.00 / Credit Cash $300.00, reversing the customer's payment that bounced
- Debit Cash $10.00 / Credit Interest Income $10.00
What the free tool does with these same two files
Filing it
Keep the two source CSVs, the adjusted-balance schedule above, and the resulting journal entries together as this period's reconciliation record. That bundle is the actual answer to "how do you know the cash balance is right," and it is what makes next month's reconciliation start from a confirmed, correct beginning balance rather than an assumption. For the tasks that come before and after this one in a full close, see speed up month-end close.