A converter should prove its numbers
Getting transactions out of a PDF is the easy part. Knowing you got all of them is the part that's easy to skip, and the part that costs you later.
How one missing row gets into your books
Picture a 14-page statement. The converter handles the first 13 pages cleanly, but page 9 has a table that runs over a page break, and three transactions fall between the cracks. The output looks tidy. Nothing is flagged.
You import it. The bank account in your software is now out by the value of those three rows, and you find out at reconciliation, if you're lucky, or at year end if you're not. Then you go back through 14 pages looking for an amount that doesn't match anything, because it's the sum of three things you can't see.
Every bank statement already contains the answer to “did I get everything?”. The opening balance, plus everything paid in, minus everything paid out, must equal the closing balance the bank printed. If it doesn't, something is missing or misread.
So that's the check we run on every statement, before you download anything. When it balances, you're told. When it doesn't, you're told by how much, and you can fix a misread figure in the results table and watch the check re-run.
Ways people get transactions out of PDFs
| Checks the totals | The catch | |
|---|---|---|
| Retyping by hand | Only if you add it up yourself | Slow, and typos are easy |
| Copy and paste | remove_circleNo | Columns scramble; scans can't be copied at all |
| Free online converters | Varies | Some drop rows without warning |
| Asking an AI chatbot | remove_circleNo | Can invent or skip transactions |
| General document AI | Varies by setup | Built for many documents; often priced per step |
| Export Bank Statement | check_circleYes | Bank statements only; English-language layouts |
A summary of common approaches, not a review of any one product. See the compare pages for specific tools.
Decisions that come from the same idea
We don't push transactions into your ledger
Xero and QuickBooks both let apps post transactions directly. Those arrive already coded to an account, which means guessing and skipping the step where you check each line. We give you a statement file to import and reconcile instead, and our connections are read-only.
We read layouts, not a list of banks
A converter that relies on templates per bank works until a bank changes its layout. Reading the table on the page means a bank we've never seen still converts, and the balance check tells you whether it worked.
We keep as little as possible
Statements are converted in memory and discarded. Passwords for locked PDFs never leave your browser. There's nothing to leak if we never keep it.
