All projects

Project 02 · Bank reconciliation

Bank reconciliation & month-end close

Match a month of bank statement lines against the cash book, explain every difference down to 0.00, and get the adjusting entries the books still need. Then carry the result into the month-end close checklist.

Demo data · fictional figures Northwind Trading LLC · SAR Period: September 2026 Auto-match with manual review

Reconciliation workspace

Reconcile September in one pass

The engine pairs bank lines with cash-book lines, then sorts whatever is left into timing items, entries to post and book errors. Select one line on each side to match them yourself, or a matched line to undo it. Every figure recalculates.

Northwind Trading LLC

Sandline Bank · current account ending 4417 · GL 1020 · 1–30 Sep 2026 · SAR

Date tolerance

Bank statement

As issued by Sandline Bank · credit = money in, debit = money out

Opening balance · 1 Sep
    Closing balance · 30 Sep

    Cash book

    GL 1020 · receipt = Dr bank, payment = Cr bank

    Opening balance · 1 Sep
      Closing balance · 30 Sep

      Bank reconciliation statement

      Northwind Trading LLC · as at 30 Sep 2026 · SAR

      Reconciliation bridge

      Both balances walk to the same adjusted figure.

      Reconciling items

      Everything left after matching, grouped by how it is treated.

      Proposed adjusting entries

      Book-side items only. Timing items clear on next month's statement without an entry.

      Month-end close

      September close checklist

      The bank reconciliation is one step of the close. Tick the rest as you go. Bank reconciliations ticks itself once the difference is 0.00 with nothing left unexplained.

      Close progress

        Your ticks are saved in this browser only.

        How it works

        The accounting behind the screen

        Every figure on this page comes from a few plain rules. They are the same checks a reviewer expects to see behind a signed-off reconciliation.

        01

        Matching rules

        • A bank credit pairs with a cash-book receipt (Dr bank). A bank debit pairs with a payment (Cr bank).
        • Amounts must agree to the halala, and dates must fall within the tolerance: the same day, or ±3 days for clearing lags.
        • When several lines qualify, a matching reference (invoice, cheque or transfer number) wins, then the closest date.
        • Matching is one-to-one, and two different cheque numbers never match.
        • A second pass pairs lines with the same reference but a different amount. That is a recording error, not a timing item.
        02

        Classifying what is left

        ItemFound inTreatment
        Deposit in transitBooksAdd to the bank balance. Clears next month.
        Outstanding chequeBooksDeduct from the bank balance. Clears when presented.
        Bank credit not recordedBankAdd to the book balance and post an entry.
        Bank debit not recordedBankDeduct from the book balance and post an entry.
        Error in the booksBothCorrect the book balance by the difference.
        Anything elseEitherUnexplained. Kept out of the statement, so it shows up as a difference.

        Only receipts recorded in the last 3 days of the month count as in transit, and only cheques can be outstanding. An unmatched bank transfer is never a timing item. A line whose reference or amount is still open on the other side is flagged as a possible match. It is never posted or treated as timing.

        03

        The formulas

        Adjusted bank = balance per bank + deposits in transit − outstanding cheques

        139,054.90 + 41,830.00 − 20,125.00 = 160,759.90

        Adjusted books = balance per books + bank credits not recorded − bank debits not recorded ± book errors

        157,685.00 + 10,087.40 − 6,652.50 − 360.00 = 160,759.90

        Difference = adjusted bank − adjusted books

        160,759.90 − 160,759.90 = 0.00

        04

        Entries and controls

        • Only book-side items get a journal entry. Deposits in transit and outstanding cheques are timing differences.
        • Bank fees carry 15% VAT, so the bank charges entry splits the gross: net = gross ÷ 1.15 and VAT = gross − net (172.50 = 150.00 + 22.50).
        • Transposition test: a difference divisible by 9 usually means swapped digits: 1,845.00 − 1,485.00 = 360.00 = 9 × 40.
        • Control: unexplained items stay out of the statement, so the difference always equals any opening difference plus unexplained bank items minus unexplained book items.
        • Before matching starts, the statement's running balances are re-added line by line.

        Where I apply this

        Where this experience comes from

        The figures here are fictional. The experience behind the tool is below.

        Daily bank reconciliations

        I ran daily bank reconciliations across multiple branches: matching statement lines to the books, following up unexplained items and recording what the bank had already booked.

        Month-end close across 7 countries

        I manage a general ledger across 7 countries: month-end close, GL reconciliations, and the fixed asset register with its depreciation schedules.

        Saudi VAT and IFRS

        I handled Saudi VAT (ZATCA) and IFRS compliance for 5+ Saudi client companies. The input VAT split on the bank charges entry follows the same rules.

        Next project

        Saudi VAT & depreciation toolkit

        Open the tool