Bank Reconciliation Step by Step

Your books show one bank balance and the bank statement shows another. Both can be right at the same time, and a bank reconciliation is how you prove it. In this lesson we take one month of a small Indian company, match its cash book with its bank statement, explain every difference and pass the journal entries that correct the books. Then we do the same work in Excel and see how an ERP helps.

What you will learn

  • What a bank reconciliation is and why it is done every month
  • The three kinds of differences: timing differences, bank-first items and errors
  • How to prepare a reconciliation statement, with a full worked example in rupees
  • Which differences need a journal entry and which do not
  • How to match the two lists in Excel with COUNTIFS, XLOOKUP, SUMIFS and conditional formatting
  • How SAP and Oracle handle it, and what a reviewer checks

What a bank reconciliation is

A cash book (or the bank account in your general ledger) is your own record of money going in and out of a bank account. A bank statement is the bank’s record of the same account. A bank reconciliation compares the two on the same date and explains every difference, so you know the true bank balance.

It catches typing mistakes, shows charges and receipts you have not booked yet, and spots fraud early, like a cheque you never wrote being paid. Auditors test it first. In the Record to Report cycle it is a month-end close step, done before the trial balance is final.

Remember: Money coming into the bank is a debit to the bank account in your books, but a credit on the bank statement, because for the bank your balance is money it owes you. The two records are mirror images.

Why the two balances are different

Every difference falls into one of three groups.

  1. Timing differences. You recorded it, the bank has not processed it yet. A deposit in transit is a cheque you deposited on the last days of the month that the bank credits next month. An outstanding cheque is a cheque you issued that the vendor has not presented yet. No journal entry. The bank will catch up.
  2. Bank-first items. The bank recorded it before you knew: bank charges, NACH auto debits (like loan EMIs or utility bills), a customer paying straight into your account by NEFT, or a cheque you deposited that bounced (a dishonoured cheque). Your books must catch up with a journal entry.
  3. Errors. If the error is in your books (a cheque for ₹6,750 entered as ₹6,570), pass a correcting entry. If the error is the bank’s (it debits another customer’s cheque to you), do not pass an entry. List it, write to the bank and check it is reversed.
Type of differenceJournal entry in your books?Stays on the reconciliation?
Deposit in transitNoYes, add to bank balance
Outstanding chequeNoYes, subtract from bank balance
Bank charges, NACH debitsYesNo, once booked
Direct credit by a customerYesNo, once booked
Dishonoured chequeYesNo, once booked
Error in your booksYes, a correcting entryNo, once booked
Error by the bankNoYes, until the bank reverses it

Reading the flowcharts in this lesson

Every flowchart here uses standard symbols. Read each chart from top to bottom. On a decision, Yes continues down and No goes to the side.

SymbolNameWhat it means
Rounded boxStart or EndWhere the process begins or finishes
RectangleStepOne action by a person or the system
DiamondDecisionA yes or no question
Slanted boxInput or OutputData coming in or going out, like a downloaded statement
Box with a wavy bottomDocumentA report or form, like the signed reconciliation
CylinderSystem or DataA system or database, like SAP or Oracle

This chart shows how to sort any unmatched line.

Deciding what to do with an unmatched itemAn item appears on only onesideIs the item in yourbooks?NoBank-only item, seethe next chartYesDoes the amountmatch the voucher?NoError in books, passa correcting entryYesWill the bankprocess it in a fewdays?NoInvestigate, it maybe staleYesList it as a timingdifferenceCheck it clears next monthStart / EndDecisionStep
Deciding what to do with an unmatched item

Lines that appear only on the bank statement follow this chart.

Handling a bank-only itemLine is on the bankstatement onlyIs it really ourtransaction?NoBank error, write tothe bank, no entryYesFind the proof, like adebit advice or return memoPass a journal entry in thebooksThe line now matchesStart / EndDecisionStep
Handling a bank-only item

The full process

This is what a finance team does every month for every bank account.

Monthly bank reconciliation processMonth ends, close the cashbookDownload the bank statementfor the monthMatch each statement linewith the cash bookIs every linematched?NoSort unmatched itemsby typeYesPass journal entries forbank-first itemsList timing differences andbank errorsDo adjusted balancesagree?NoRecheck matching andamountsYesBank reconciliationstatementReviewer signs offStart / EndInput / OutputStepDecisionDocument / Report
Monthly bank reconciliation process
  1. Make sure every receipt and payment of the month is in the cash book.
  2. Download the statement for exactly the same dates, in Excel or CSV, not PDF.
  3. Check last month’s reconciling items cleared this month.
  4. Tick off matching lines on amount, and on cheque number or reference where you have one.
  5. Sort what is left into the three groups, pass the entries and prepare the statement.

Worked example: Sharma Traders, September 2026

Sharma Traders Pvt Ltd has a current account with a bank. On 1 September 2026, the cash book and the statement both show ₹2,50,000, so there are no old items.

The cash book (bank column)

DateReferenceDetailsReceipt (₹)Payment (₹)
01-SepOpening balance2,50,000
03-SepNEFTGupta Electricals, customer1,20,000
05-SepNEFTOffice rent75,000
10-SepChq 004501Kapoor Suppliers48,000
12-SepDepositCheque from Mehta Stores85,000
14-SepChq 004502Electricity bill6,570
18-SepChq 004503Verma Packaging32,000
22-SepCashCash sales deposited40,000
25-SepNEFTSalaries1,10,000
28-SepChq 004504Joshi Logistics18,500
29-SepDepositCheque from Rao Enterprises60,000
Totals5,55,0002,90,070
30-SepClosing balance2,64,930

Check: ₹5,55,000 minus ₹2,90,070 is ₹2,64,930.

The bank statement

On a statement, a debit takes money out and a credit puts money in.

DateDetailsDebit (₹)Credit (₹)Balance (₹)
01-SepOpening balance2,50,000
03-SepNEFT Gupta Electricals1,20,0003,70,000
05-SepNEFT Office rent75,0002,95,000
13-SepClearing, cheque Mehta Stores85,0003,80,000
13-SepChq 004501 paid48,0003,32,000
16-SepCheque returned unpaid, Mehta Stores85,0002,47,000
17-SepChq 004502 paid6,7502,40,250
20-SepNACH debit, water charges1,2402,39,010
22-SepCash deposit40,0002,79,010
25-SepNEFT Salaries1,10,0001,69,010
26-SepNEFT Iyer and Sons25,0001,94,010
27-SepChq 118834 paid12,0001,82,010
30-SepService charges including GST5901,81,420
Totals3,38,5802,70,0001,81,420

Check: ₹2,50,000 plus ₹2,70,000 minus ₹3,38,580 is ₹1,81,420.

The books say ₹2,64,930, the bank says ₹1,81,420. We must explain a gap of ₹83,510.

Step 1: Tick off and sort

These match on both sides: Gupta Electricals, rent, cheque 004501, the Mehta Stores deposit, the cash deposit and salaries. Everything else is a reconciling item.

No.ItemGroupAction
1Rao Enterprises cheque ₹60,000, books onlyDeposit in transitList, no entry
2Chq 004503 Verma Packaging ₹32,000, books onlyOutstanding chequeList, no entry
3Chq 004504 Joshi Logistics ₹18,500, books onlyOutstanding chequeList, no entry
4Mehta Stores cheque returned ₹85,000Dishonoured chequeJournal entry
5NACH water charges ₹1,240Bank-first itemJournal entry
6NEFT from Iyer and Sons ₹25,000Direct creditJournal entry
7Service charges ₹590Bank chargesJournal entry
8Chq 004502: ₹6,750 in bank, ₹6,570 in booksError in books, ₹180Journal entry
9Chq 118834 ₹12,000Error by bankList, write to bank

For item 8, the cheque counterfoil and the electricity bill both say ₹6,750, so the clerk swapped two digits. For item 9, the company’s cheque book runs from 004501 to 004550, so 118834 is someone else’s cheque.

Tip: A difference that divides exactly by 9 (₹180 divided by 9 is 20) often means two digits were typed the wrong way round.

Step 2: Correct the cash book

Adjusted cash book balance₹₹
Balance as per cash book2,64,930
Add: NEFT from Iyer and Sons25,000
Less: Mehta Stores cheque dishonoured85,000
Less: NACH water charges1,240
Less: Bank service charges590
Less: Cheque 004502 entered short180
Total to subtract87,010
Correct balance for the books2,02,920

Check: ₹2,64,930 plus ₹25,000 minus ₹87,010 is ₹2,02,920.

Step 3: Adjust the bank balance

Adjusted bank balance₹₹
Balance as per bank statement1,81,420
Add: Deposit in transit, Rao Enterprises60,000
Add: Wrong debit by bank, cheque 11883412,000
Total to add72,000
Less: Cheque 004503, Verma Packaging32,000
Less: Cheque 004504, Joshi Logistics18,500
Total to subtract50,500
Adjusted bank balance2,02,920

Check: ₹1,81,420 plus ₹72,000 minus ₹50,500 is ₹2,02,920.

Both sides show ₹2,02,920, so the account is reconciled. This is the bank balance that goes into the balance sheet on 30 September.

Remember: The two adjusted balances must agree to the rupee. If they do not, something is still unexplained. Never “plug” the gap.

The single-column format

Many Indian textbooks start from the cash book balance and arrive at the bank balance in one column. Same items, same answer.

Bank reconciliation statement as on 30 September 2026₹₹
Balance as per cash book2,64,930
Add: Cheques issued but not presented (32,000 + 18,500)50,500
Add: Direct credit by Iyer and Sons25,000
Total to add75,500
Less: Cheque deposited but not credited60,000
Less: Cheque dishonoured, Mehta Stores85,000
Less: NACH water charges1,240
Less: Bank charges590
Less: Cheque 004502 entered short180
Less: Wrong debit by bank12,000
Total to subtract1,59,010
Balance as per bank statement1,81,420

Check: ₹2,64,930 plus ₹75,500 minus ₹1,59,010 is ₹1,81,420, which is the statement balance.

Journal entries for the adjustments

Only bank-first items and our own error go into the books.

EntryAccountDebit (₹)Credit (₹)
1. Direct creditBank account25,000
Iyer and Sons (trade receivable)25,000
2. Dishonoured chequeMehta Stores (trade receivable)85,000
Bank account85,000
3. NACH debitWater charges expense1,240
Bank account1,240
4. Bank chargesBank charges expense500
Input GST receivable90
Bank account590
5. CorrectionElectricity expense180
Bank account180
Totals1,12,0101,12,010

Entry 2 puts the ₹85,000 back on Mehta Stores’ account, because the customer owes it again. In entry 4, the ₹590 is ₹500 of charges plus 18% GST of ₹90.

Proof: the bank account gets ₹25,000 of debits and ₹87,010 of credits, so it moves from ₹2,64,930 to ₹2,02,920, the reconciled figure. The bank’s error (cheque 118834) gets no entry, only a letter to the bank.

Note: Book the ₹90 as input GST only if your company can claim it and the bank’s invoice shows in your GSTR-2B. Otherwise debit the full ₹590 to bank charges.

Following up old items

A deposit in transit should be credited in a few working days. If not, ask the bank at once, the cheque may be lost or returned. A cheque in India is valid for three months from its date. After that the bank will not pay it and it is a stale cheque.

Following up an outstanding chequeOutstanding cheque stillopen at month endIs the cheque olderthan three months?NoKeep listing it andremind the vendorYesConfirm with the vendor itwas not encashedAsk the bank to stop thechequeReverse the payment back tothe vendor accountNote on the reconciliationwith approvalPay the vendor again byNEFT if still owedStart / EndDecisionStepDocument / Report
Following up an outstanding cheque

If cheque 004503 to Verma Packaging is still open after three months, reverse it. You still owe the vendor.

AccountDebit (₹)Credit (₹)
Bank account32,000
Verma Packaging (trade payable)32,000

Common mistake: Writing a stale cheque straight back to “other income”. Put it back on the vendor’s account first. Company policy, approved by the controller, decides if an unclaimed amount is ever written back.

Doing it in Excel

Copy the cash book lines (without the opening balance) to a sheet called Book and the statement lines to a sheet called Bank. Use four columns on both: A Date, B Ref (cheque number, or NEFT, DEP, CASH and so on), C Details, D Amount. Sign amounts the same way on both sheets: money in is positive, money out is negative. Book data sits in rows 2 to 11, bank data in rows 2 to 13.

Step 1: Find unmatched lines with COUNTIFS

  1. On Bank, type In book? in E1.
  2. In E2 type =COUNTIFS(Book!$D$2:$D$11,D2) and copy it down to E13.
  3. On Book, type In bank? in E1, then =COUNTIFS(Bank!$D$2:$D$13,D2) in E2, copied down to E11.

A 0 means “not on the other side”. On Bank you get 0 against −85,000, −6,750, −1,240, 25,000, −12,000 and −590. On Book you get 0 against −6,570, −32,000, −18,500 and 60,000. That is our list of reconciling items.

Common mistake: Matching on amount alone when an amount repeats, like two ₹5,000 advances. Add a second condition: =COUNTIFS(Book!$D$2:$D$11,D2,Book!$B$2:$B$11,B2) matches amount and reference together.

Step 2: Find amount differences with XLOOKUP

  1. On Bank, type Book amount in F1.
  2. In F2 type =XLOOKUP(B2,Book!$B$2:$B$11,Book!$D$2:$D$11,"Not found") and copy it down.
  3. For cheque 004502 (row 7), type =D7-F7 in G7. It shows −180.

XLOOKUP finds the same cheque number in the books. The last argument is shown when there is no match, instead of an error. Use this only for cheque numbers, because a reference like NEFT appears many times.

Step 3: Colour the unmatched lines

  1. On Bank, select A2:E13.
  2. Select Home > Conditional Formatting > New Rule.
  3. Choose Use a formula to determine which cells to format and type =$E2=0.
  4. Select Format, choose a light red fill, then OK and OK.

Repeat on Book. The $ before E keeps every column of the row checking column E.

Step 4: Prove it with SUMIFS

  • On Bank: =SUMIFS(D2:D13,E2:E13,0) gives −80,580.
  • On Book: =SUMIFS(D2:D11,E2:E11,0) gives 2,930.

Both sides started at ₹2,50,000 and share the same matched lines, so removing the unmatched lines must give the same figure. Book: 2,64,930 − 2,930 = 2,62,000. Bank: 1,81,420 + 80,580 = 2,62,000. They agree, so nothing was missed. If they do not, a line matched the wrong partner.

Bank reconciliation in an ERP

In an ERP, the bank sends the statement as a file, the system matches most lines using rules, and you only work on what is left.

Bank reconciliation in an ERPBank statement file arrivesStatement is imported intoSAP or OracleSystem matches lines usingrulesDid the system matchthe line?NoLine goes to a worklist for reviewYesEntries are cleared orposted automaticallyReconciliation report forthe periodAccountant reviews andsigns offStart / EndSystem / DataStepDecisionDocument / Report
Bank reconciliation in an ERP
  • SAP FF_5 imports an electronic bank statement file.
  • SAP FF67 is for entering a statement by hand.
  • SAP FEBAN shows imported statement lines so you can finish the ones that did not post or clear.
  • Oracle Cash Management loads bank statements, reconciles them automatically with matching rules, and lets you reconcile the rest by hand.

Many SAP setups use a main bank GL account plus clearing accounts, for example one for outgoing cheques. A payment sits in the clearing account until it appears on the statement, so what is left there at month end is your list of timing differences.

Controls and review

  • Every account is reconciled within the days set in the close calendar.
  • The preparer does not make payments or handle cash (segregation of duties).
  • Preparer and reviewer both sign and date it, with the statement and proof attached.
  • No unexplained difference, not even one rupee.
  • Items older than a month have an owner and a note. Watch cheques nearing three months.
  • Unusual items are questioned: a cheque number outside your cheque book, or a NACH mandate nobody knows.

Common mistakes

  • Using a statement for different dates than the books.
  • Passing entries for deposits in transit or outstanding cheques.
  • Passing an entry for the bank’s error.
  • Treating a dishonoured cheque as an expense instead of putting it back on the customer.
  • Plugging a small gap to “miscellaneous”.
  • Mixing up signs between the two sheets in Excel.

Quick recap

  • A bank reconciliation explains every difference between the cash book and the statement on one date.
  • Timing differences need no entry, bank-first items do, and errors need one only if they are yours.
  • Adjust both balances until they agree. That figure goes into the balance sheet.
  • Every adjusting entry balances, debits equal to credits.
  • In Excel, COUNTIFS finds unmatched lines, XLOOKUP finds amount differences, conditional formatting shows them and SUMIFS proves you found them all.

Try it yourself

Krishna Foods Pvt Ltd has a cash book balance of ₹1,48,600 on 31 October 2026. The bank statement shows ₹1,46,576. You find:

  1. Cheque deposited on 31 October, not yet credited: ₹22,000
  2. Cheque 002210 issued on 29 October, not yet presented: ₹15,500
  3. Bank charges ₹354 (₹300 plus 18% GST of ₹54), not in the books
  4. A customer paid ₹9,000 by NEFT, not in the books
  5. A NACH loan EMI debit of ₹4,800, not in the books (treat it all as loan repayment)
  6. Cheque 002205 for ₹7,290 was entered in the cash book as ₹7,920

Prepare both adjusted balances and the journal entries.

Answers

Item 6: the books took off ₹7,920 but only ₹7,290 left the bank, so add back ₹630.

Adjusted cash book balance₹
Balance as per cash book1,48,600
Add: NEFT from customer9,000
Add: Cheque 002205 entered ₹630 too high630
Less: Bank charges354
Less: NACH loan EMI4,800
Adjusted cash book balance1,53,076
Adjusted bank balance₹
Balance as per bank statement1,46,576
Add: Deposit in transit22,000
Less: Outstanding cheque 00221015,500
Adjusted bank balance1,53,076

Check: 1,48,600 + 9,000 + 630 − 354 − 4,800 = 1,53,076, and 1,46,576 + 22,000 − 15,500 = 1,53,076. They agree.

EntryAccountDebit (₹)Credit (₹)
aBank account9,000
aCustomer (trade receivable)9,000
bBank account630
bVendor of cheque 002205 (trade payable)630
cBank charges expense300
cInput GST receivable54
cBank account354
dLoan account4,800
dBank account4,800
Totals14,78414,784

Entry b credits the vendor because the vendor was debited ₹7,920 when the payment was booked, but was paid only ₹7,290.

Where to go next

Keep going

102 free lessons across 6 topics

All articles