Skip to content
PDF → JSON

Convert a PDF bank statement to JSON

For anyone building on top of statement data, JSON is the export to reach for: a structured array of transactions you can pipe straight into code, a database or an API. Each row is an object with the date, description, amount, direction and running balance, and the reconciliation check runs before you export so downstream code can trust the figures. Prefer a bookkeeping-ready file? OFX is available too, and imports into Xero and QuickBooks Online. Convert the first 3 pages free, no sign-up, and download the JSON. A free account converts the whole statement.

Try it now

Live converterEncrypted · never shared

PDF or images · up to 50 MB, 400 pages

No sign-up · no card · your file stays yours · Privacy
Reconciled to the centEncrypted in transit + at restYour files, never sold or sharedDelete anytimeRead our security →
How it works

Three steps. Most statements take seconds.

No templates to set up, no mapping rules to configure. What used to be an afternoon of hand-keying becomes structured rows you can trust — and every balance is checked, so you catch a misread before it hits the books.

01

Upload your PDF

Drag in one bank statement PDF. Any bank, any layout — digital or scanned, single or multi-account.

02

We extract & check

Our engine reads every date, description, amount and balance, then cross-checks running totals so the numbers actually reconcile.

03

Export in one click

See every row and balance check instantly — the first 3 pages, no sign-up. Download it as Excel, CSV, JSON or OFX (QuickBooks & Xero) right away; a free account keeps every conversion so you can come back and re-export.

Proof, not promises

See a real conversion

Open the actual output from a real 6-page Northbridge Credit Union statement — 22 transactions, every running balance reconciled to the cent. No upload, no account.

sample-statement.xlsxReconciled
DATEDESCRIPTIONAMOUNT
05-01ACME PAYROLL DIRECT DEPOSIT+3,250.00
05-02BLUE BOTTLE COFFEE #418−6.75
05-03ADOBE CREATIVE CLOUD−54.99
05-04HYDRO ONE PRE-AUTH PAYMENT−128.40
05-05TRANSFER FROM SAVINGS+500.00
05-06LOBLAWS GROCERIES−143.28
Opening 4,820.55Closing 9,191.97 CAD
Computed closing matches the statement — difference $0.00
+ 16 more rows — open the full result
FAQ

Good questions, answered

What is the shape of each row in the JSON?

Each transaction is an object with its date, description, amount, direction (credit or debit) and the running balance. Transactions are grouped per statement, so a multi-account file keeps each account’s rows together.

Are amounts numbers or strings in the JSON?

Amounts are represented so they parse cleanly downstream — no currency symbols or thousands separators to strip. The direction field tells you whether a row is a credit or a debit, so you don’t have to infer sign from formatting.

Is the reconciliation status available in the JSON?

Yes. The running balance is included and is checked against the transactions before export, and uncertain rows are flagged — so a pipeline can gate on confidence rather than trusting every row blindly.

Can I automate this in a pipeline?

You can convert a statement and export JSON — or OFX, for QuickBooks, Xero and most bookkeeping tools — per document today. A programmatic API is on the roadmap; for now these exports give you clean structured data to work with.

Convert a statement — free

Free to try, no card, no sign-up. Most statements come back as a clean spreadsheet in a few seconds — even a big multi-month packet is typically done in about 30 seconds.

Live converterEncrypted · never shared

PDF or images · up to 50 MB, 400 pages