This guide explains why daily works better, the routine step by step, what causes differences, a worked example with figures, and how to get bank data in without a spreadsheet.
What is bank reconciliation, and why do it daily?
Bank reconciliation is matching every line on the bank statement to an entry in your books, and explaining every difference. When it is done, the bank balance in your ledger is one you can trust.
Most small and mid-sized companies still do it once a month in a spreadsheet. By then, a receipt with no reference is three weeks old, and nobody remembers which customer sent it. A daily routine fixes that:
- Problems are found while they are fresh. An unknown receipt from yesterday is one phone call; one from last month is an afternoon.
- The cash position is right every morning. Payment decisions are made on real balances, not last month's.
- Fraud and errors surface sooner. A duplicate payment or an unexpected debit is caught in a day, not weeks later.
- Month-end is faster. The last reconciliation of the month covers one day, not thirty.
What is the daily bank reconciliation routine?
Six steps, done first thing each morning for the previous day. Allow 10 to 15 minutes per account once matching rules are set up.
- Bring in yesterday's statement. Through a bank feed, or by importing the statement file from online banking. No retyping.
- Run automatic matching. The ERP matches statement lines to receipts, payments and transfers already in the books, by amount, date and reference.
- Check the suggested matches. Approve the ones the system is unsure of, such as a receipt that matches two open invoices of the same amount.
- Post what only the bank knows. Bank charges, interest, card fees and direct debits are posted from the statement line, using saved rules.
- Look into what is left. Unknown receipts go to a suspense account and a named person follows up the same day. Unknown debits are raised with the bank.
- Confirm the balance. The ledger balance, adjusted for items in transit, equals the bank balance. Record who reconciled and when.
If a step takes much longer than usual, that is the signal something is wrong, which is the point of doing it daily.
What causes differences between the bank and the books?
Timing, missing entries or mistakes. Timing differences clear on their own; the other two need an entry.
| Cause | Type | Shows in | What to do |
|---|---|---|---|
| Cheque issued, not yet presented | Timing | Books only | Nothing; it clears when presented. Follow up if older than six months |
| Deposit made late in the day | Timing | Books only | Nothing; it appears on the next statement |
| Bank charges, interest, card fees | Missing entry | Bank only | Post from the statement line with a saved rule |
| Customer transfer with no reference | Missing entry | Bank only | Post to suspense; identify the customer the same day |
| Direct debit not recorded | Missing entry | Bank only | Post it and set up a rule for next time |
| Amount keyed wrongly | Error | Both, different amounts | Correct the entry in the books |
| Payment recorded twice | Error | Books only | Reverse the duplicate |
| Bounced cheque | Missing entry | Bank only | Reverse the receipt and reopen the customer's invoice |
What does a daily reconciliation look like? A worked example
A Dubai trading company reconciles its main AED current account on the morning of 15 October, for the statement of 14 October. The statement has eight lines.
| Statement line | Amount (AED) | Result |
|---|---|---|
| Transfer from customer, reference INV-2291 | +36,750 | Matched automatically to the invoice |
| Transfer from customer, reference INV-2288 | +12,600 | Matched automatically |
| Card settlement from the payment provider | +8,940 | Matched to the day's card sales by rule |
| Supplier payment, bank transfer | −44,100 | Matched to the payment run |
| Cheque 004509 presented | −9,450 | Matched to the cheque issued on 2 October |
| Salary transfer for one employee | −6,200 | Matched to the payroll payment |
| Transfer charge | −105 | Posted by rule: AED 100 charge plus AED 5 VAT |
| Transfer, reference "PAYMENT" | +2,100 | No match; posted to suspense |
Six lines matched, one was posted by rule, and one needs a person. The credit controller called the two customers with AED 2,100 open and found the payer within the hour.
The reconciliation at the end of the routine:
| AED | |
|---|---|
| Balance per bank statement, 14 October | 412,350 |
| Add: cash deposited late on 14 October, not yet on the statement | 25,000 |
| Less: cheque 004512 issued, not yet presented | −18,000 |
| Adjusted bank balance | 419,350 |
| Balance per books before the routine | 417,355 |
| Add: unidentified receipt, posted to suspense | 2,100 |
| Less: transfer charge | −105 |
| Adjusted book balance | 419,350 |
The two adjusted balances agree, so the account is reconciled. The VAT on the bank charge can be recovered if you hold a tax invoice for it, so ask your bank how it issues them.
How do you get bank data into the ERP without spreadsheets?
Through a statement file or a direct connection, never by retyping. Retyping is where most keying errors and missing lines come from.
| Method | How it works | Best for |
|---|---|---|
| Statement file | Download yesterday's statement from online banking as CSV, MT940 or camt.053, and import it | Any bank, any company size; a good place to start |
| Host-to-host connection | The bank sends statement files automatically to a secure folder the ERP reads | Companies with several accounts at one bank |
| API or open finance feed | The ERP fetches transactions directly from the bank | Where your bank offers it; the UAE Central Bank's Open Finance Regulation provides for this kind of consented data sharing |
MT940 is the long-standing SWIFT statement format; camt.053 is its ISO 20022 replacement, with more room for references. Either is better than CSV, because the layout is standard and the remittance details come through. SWIFT plans to end the overlap between MT940 and the ISO 20022 statement messages in November 2028, though it has said it will confirm the timeline by December 2026, so choose an ERP that reads both.
Then set up matching rules once and let them do the daily work:
- Match by exact amount plus the invoice number in the transfer reference.
- Match card settlements to card sales by date, allowing for the provider's fee.
- Post recurring bank charges and direct debits to fixed accounts automatically.
- Ask customers to quote the invoice number on every transfer; it makes most other rules unnecessary.
What is left to do at month-end?
Very little, if the daily routine has run. Month-end becomes a final check:
The last item matters. Separating who reconciles from who approves is a basic control auditors look for, and it is simple to set up as an approval step in the ERP.
What does HYP see when companies move reconciliation into the ERP?
The biggest gain is not speed but certainty. At customers who move from a monthly spreadsheet to a daily routine, the suspense account stops growing, and finance can answer "how much cash do we have?" without a phone call to the bank.
The main obstacle is unclear transfer references. Where customers pay without an invoice number, matching drops to amount and date alone, and someone has to check every line. A short note on every invoice asking customers to quote its number fixes most of it.
HYP's banking module imports statement files, applies matching rules and posts charges from the statement line. See our Banking, Fixed Assets & Cash Visibility page. Once your balances are right every morning, the next step is a forward view: our guide to a 13-week cash flow forecast shows how to build one.