Statement Mill turns PDF and scanned bank statements into accurate Excel, CSV, or JSON in seconds — and verifies every export against the statement's own balances, so the numbers always add up.
PDF/ SCANNED PDF/ PHOTO/ MT940/ CAMT.053/ → XLSX/ → CSV/ → JSON API
Drag in a PDF, a scan, or even a phone photo. Multi-page and multi-account files are fine. Batches too.
Every transaction is extracted, then checked against the statement's own math: opening balance + credits − debits must equal the closing balance. Mismatches get flagged, never hidden.
Excel or CSV with consistent columns: date, description, amount, balance, currency. Developers get the same rows as JSON.
Extraction without reconciliation is guesswork. We prove each export against the statement's own totals and show you the verification status.
Global banks plus the Central European formats US tools mangle: Tatra banka, Slovenská sporiteľňa, ČSOB, Fio, mBank, Raiffeisen and more.
Your statement is processed entirely in memory and never written to disk — there is nothing to delete because nothing is stored. Stronger than a retention policy.
Client sent a photographed statement from 2019? Our OCR pipeline handles scanned and photographed documents, not just digital PDFs.
Upload 12 months of statements at once and get one consistent, deduplicated spreadsheet back. Built for tax season.
One endpoint: statement in, structured JSON out, verification included. Clear docs, predictable pricing, no sales call.
Every client delivers statements differently: PDFs, scans, photos of paper. Statement Mill turns all of it into a spreadsheet you can work with — the same columns, every time.
Building lending, bookkeeping or expense software? Send us the file, get back transactions, balances and a verification flag.
# POST a statement, get clean JSON curl -X POST https://api.statementmill.com/v1/parse \ -H "Authorization: Bearer $API_KEY" \ -F "file=@statement.pdf" # → { "transactions": [...], # "opening_balance": 3120.50, # "closing_balance": 5794.03, # "verified": true }Read the API docs
No card required
For accountants & freelancers
For firms & product teams
For high-volume pipelines
Hit your limit mid-month? Paid plans continue at €0.05/page — no hard walls, no forced upgrades. Or buy top-up credits that never expire.
Each bank has its own statement quirks. We maintain dedicated parsing for every layout below — and 2,000 more.
Yes. Files are encrypted in transit, processed entirely in memory, and never written to disk — the moment your download is ready, nothing of your statement remains on our side. We never sell or share your data.
PDF statements (digital or scanned), photos of statements, and structured formats such as CSV, MT940 and CAMT.053. Output is Excel (.xlsx), CSV, or JSON via the API.
Every export is checked against the statement's own opening balance, credits, debits and closing balance. If the numbers do not reconcile, the export is flagged so you never silently receive wrong data.
Statements from over 2,000 banks worldwide, including full support for Central European banks such as Tatra banka, Slovenská sporiteľňa, ČSOB, Fio banka, mBank and Revolut. If your bank isn't recognised, send us one statement and we'll add the layout — usually within days.
Yes. The Statement Mill API accepts a statement file and returns structured JSON with transactions, balances and verification status. Metered pricing starts free — see the docs.
Nothing dramatic. On paid plans, processing simply continues at €0.05 per page — no hard walls, no forced mid-month upgrades. You can also buy top-up credit packs that never expire, so pages you pay for are never lost at the end of a billing cycle.
On Pro and Business plans you can upload a whole folder — for example twelve months of statements before tax season — and receive one consistent, deduplicated spreadsheet.
20 free pages every month. No card, no sales call.