Overview
What extractbankstatements.com does, what "reconciled" means, and the two ways to get transactions out of a statement.
extractbankstatements.com turns a bank statement into rows you can use: date, description, amount, running balance. The part other converters skip is that every figure is then checked against the statement's own arithmetic, so you know whether the numbers add up before you use them.
Two ways in#
The app. Sign in, drop a PDF on the upload area, and take CSV or Excel back when it finishes. Nothing to install. The free plan reads three statements a month and does not ask for a card.
The REST API. Upload from your own code, poll for completion, and pull the transactions back as JSON, CSV or Excel. Included in Pro and Business.
Both run the same extraction and return the same figures. The API exists so the result can land in your own product; it is not a different or better reader.
What "reconciled" means#
A statement is reconciled when two separate sums agree with what the bank printed:
- The opening balance plus every transaction equals the closing balance.
- The debits and credits sum to the totals the statement declares.
If both hold, the extraction is proved and marked reconciled. If either
fails, the statement is marked for review with a reason attached and the
offending rows flagged individually. It is never quietly presented as correct.
This matters because a wrong number looks exactly like a right one. Any tool can produce a table, and the table always looks fine; you find out it was wrong when a reconciliation fails three weeks later, or you never find out at all.
What can be read#
PDF, PNG, JPEG and WebP, up to 25MB per file.
A PDF the bank generated is read from its text layer, character by character, with no guessing. A scan or a photograph has no text layer, so it goes through OCR instead. Both are held to the same arithmetic, and OCR that produces a statement which does not reconcile is reported rather than returned.
There is no list of supported banks because there is no per-bank code: the layout is worked out from the page itself, so a bank we have never seen is read the same way as one we have. Monzo, Barclays, Revolut, Qonto and Fortuneo statements are in the test suite and have to keep reconciling for a change to ship.
Your data#
Statements are stored in the EU and are reachable only by the account that uploaded them. Deleting a statement deletes the stored file and every transaction read from it.
A statement we have already read is recognised on re-upload and returned as it stands, free, rather than being read and billed a second time.