Method: how we reconcile a bank statement

This page describes what “checked by a person” means in practice. It is deliberately plain; anyone passing our file into accounting, an audit or a proceeding should know what was checked and what was not.

1. Read

The PDF statement is split into rows: date, value date, description, debit, credit, balance. Text PDFs are read locally; scans manually or with local text recognition. An AI service outside Switzerland is used only if you allowed it at upload.

2. Establish the balances

Opening balance (carried forward) and closing balance are taken from the statement, not computed. The carry-forward line itself is removed from the transactions so it is not counted twice.

3. Compute

Opening balance + sum of credits − sum of debits must equal the closing balance. Tolerance: 0.01 in the account currency. Where the statement shows a running balance per row, each row is additionally checked against the previous one.

4. Check signs

The five largest amounts are checked individually for debit/credit, as are rows whose column is ambiguous in the PDF. A wrong sign usually shows up twice in the arithmetic and is found that way.

5. Record the result

Every statement gets a check note: opening balance, closing balance, transaction count, discrepancy, status. GREEN means it closes to the cent. NOT RECONCILED means a discrepancy remains that we cannot explain; you get the amount and suspected location, and the price of that statement back.

What we do not check

  • Whether the PDF is genuine. A manipulated statement can be internally consistent. We do no metadata, font or template analysis.
  • Whether the transactions are substantively correct. We check arithmetic, not content.
  • Whether statements follow each other without gaps. On request we note when one statement’s closing balance does not match the next one’s opening balance.

camt.053: what we populate

We produce a camt.053.001.08 file with account identification (IBAN if legible), currency, opening and closing balances (OPBD/CLBD), and per entry the amount (Amt), direction (CdtDbtInd), booking and value dates (BookgDt/ValDt) and the description (RmtInf/Ustrd). What the statement does not provide, such as counterparty IBAN or references, stays empty rather than invented. MT940 for DATEV on request.

Excel and CSV: columns

Date, value date, description, debit, credit, balance, currency. Amounts as numbers without thousands separators, dates in ISO format. CSV with semicolon, UTF-8.