Skip to main content
Skip to article
TablefoldExcel you can still check

job

How do you turn a bank statement PDF into Excel you can reconcile?

Convert the transaction table into four working columns — date, description, debit or credit, running balance — and make the balance itself your verification: every row must satisfy previous balance minus debits plus credits equaling this row's balance before the sheet earns a place in reconciliation.

What this job actually asks for

The person asking usually closes books or answers a query and needs statements they can filter, tag, and match against a ledger. The hard part is rarely getting rows into a sheet; it is trusting them. Statements punish silent errors more than most documents, because the balance column cross-examines every row for free.

One status note: you can open these pages and sign in to the workspace today, but that does not mean external platform accounts are connected, and it does not mean the product has formally launched. Everything below runs on statement PDFs you supply.

What you need before you start

The statement PDFs and the opening and closing balances as printed on them. Those two figures bracket the whole exercise: the first row must start at one, the last row must end at the other.

The ledger or records you will reconcile against, and a note of the statement's column convention. Some banks print separate debit and credit columns; others print one amount column where direction is a sign or inferred. Knowing the convention prevents mapping money-out into money-in.

Step 1: Confirm the statement has a text layer

Try selecting text on the page. Downloaded statements usually select; posted scans often do not. An image-only page is refused here rather than guessed at; recognising the text is a separate job you would run elsewhere — and statement scans deserve that pass before any conversion attempt.

Step 2: Map the columns once per bank format

Decide which extracted column is date, description, money out, money in, and balance, and write the mapping down. Banks reuse formats month to month, so one careful mapping covers every future statement from the same account.

Step 3: Convert one statement before the batch

Run the messiest statement first and compare the extracted shape against the page: transaction count, column count, where fees and interest landed. Batch-converting before one file passes is how a systematic misreading replicates across a year of statements.

Step 4: Enforce the running-balance rule with a formula

Add a check column computing previous balance minus debit plus credit against the row's stated balance, and flag every mismatch. Mismatches cluster where a row was dropped, duplicated, or misread — the balance column localizes the fault to a neighborhood instead of leaving you auditing blind.

Step 5: Tie both endpoints to the printed figures

Confirm the first row's opening balance and the last row's closing balance match the statement exactly. Endpoints tying while interior checks fail points at a specific span to inspect; neither tying means restart from the mapping step.

Step 6: Only then sort, tag, and reconcile

With balances proving internal consistency, sort by date or amount, tag categories, and match against the ledger. Sorting earlier shuffles away the evidence; sorting after verification loses nothing.

Verification

The sheet holds when every running-balance check passes, both endpoint balances match the printed statement, and the transaction count matches what the page shows. At that point the file reconciles like a bank feed, with a source PDF to arbitrate any dispute.

Limits worth stating plainly

Tables are not cell-perfect. Check every number against the source page before you rely on it. A whole multi-page report converted in one pass is not reliable today. Rows from different periods can land in one cell and a column can be dropped. Work one table at a time. Audit-style statements with dollar signs, em-dash blanks, and parenthesised negatives are not handled. Data rows can be lost. Scanned PDFs with no text layer are refused rather than guessed at. There is no OCR path you can rely on here today. A document with no printed table is not something to convert. If you are handed a sheet built out of running prose, discard it and tell us.

Tablefold produces the table and flags suspect cells — including gaps where a balance failed to extract — and a missing balance stays a gap rather than being invented to make the column look complete. Internal consistency proves the sheet hangs together; it does not certify the underlying transactions against your bank, which only the statement itself does.

What Tablefold does in this workflow

Tablefold converts the statement into a table that preserves the balance column alongside transactions, flags the cells where extraction was unsure, and leaves the running-balance check to a formula you control in the downloaded file.

Judgment stays with you: resolving flags against the page, ruling on mismatch neighborhoods, and deciding when the sheet is fit to reconcile. The product's role is delivering checkable structure quickly, not certifying the numbers.

FAQ

Questions this guide is for

My statement prints one amount column, not debit and credit. Now what?

Map it as-is with direction carried by the sign or the balance movement, and derive the debit and credit split afterward if your ledger needs it. The running-balance check works unchanged either way.

The balance checks fail on exactly one row. What is that?

Usually a digit misread on that row or a transaction split across a page boundary. Open that row against the source PDF and settle it there; adjusting the balance to force agreement hides whichever fault is real.

Can I reconcile straight from the PDF without converting?

For one or two transactions, maybe. For filtering a quarter of activity, matching against a ledger, or tagging categories, a checked sheet repays its setup on the first pass.

Start in the workspace

Turn a statement into a checkable sheet

Sign in or create an account and you return to the Tablefold conversation. Upload the statement, download a table with its balance column intact, and run the running-balance check yourself.

Tablefold

Signing in and billing happen in the conversation. This page uses PostHog for product analytics (anonymous, optional). See Privacy.