Your bank statement PDF, reconciled and QuickBooks-ready in 60 seconds.

Upload a statement PDF or a bank CSV. Get back a clean transaction file for QuickBooks, Xero, OFX or CSV, with every row checked against the statement's running balance. If the numbers don't tie, you see exactly where, before you import.

Join the private beta Reserve founding spot

The part of month-end that still hurts

How it works

  1. Upload. Statement PDF (text layer or scanned) or the bank's own CSV export.
  2. Parse. Layout detection per bank, then deterministic extraction. No guessing at amounts.
  3. Balance check. We recompute the running balance from the opening balance. Every row must tie to the statement's closing balance or it is flagged with the page it came from.
  4. Export. QBO, OFX, Xero CSV or plain CSV in the exact shape the importer accepts.

The balance check is the product. A conversion you cannot verify is a conversion you have to redo by hand.

Pricing (planned)

Free

$0

10 pages / month
Try it on a real statement.

Join waitlist

Bookkeeper (Pro)

$29/mo

300 pages / month
A handful of clients.

Join waitlist

Firm

$79/mo

2,000 pages / month
Month-end for the whole book.

Join waitlist

API

$30 per 1k pages

Metered, no seat
For your own tooling or agents.

Join waitlist

A page is one statement page. Prices are a hypothesis we are testing with the waitlist; early members lock in whatever we launch at.

Become a founding member

Pre-order Ledger at the founding price, locked in for as long as you stay subscribed. Fully refundable until launch: one reply and you get your money back.

Founding members get access first and decide which banks and exports we build first. Payment is handled by Polar (merchant of record). Refundable in full until launch.

Reserve founding spot

You'll create a free account first so the pre-order is linked to you.

API

POST /api/v1/transform
Authorization: Bearer sk_live_...
{ "input": "<statement csv or text>", "bank_hint": "chase", "output": "qbo" }

-> { "transactions": [...], "opening_balance": ..., "closing_balance": ...,
     "reconciled": true, "discrepancies": [], "source_pages": [...] }

Same engine as the app. Over quota returns HTTP 402 with upgrade options in the body, so scripts and AI agents can pay per page without a seat.

FAQ

What happens to my files?

Files are processed in memory and purged as soon as the export is generated. We never store card numbers or account numbers; only the transaction rows you export, and only if you ask us to keep a copy.

Which banks are supported?

Launch set is driven by the waitlist. Tell us your bank in the form above; the layouts that break your current tool are the ones we build first.

Scanned statements?

Yes, with OCR, and the same balance check applies. Scanned pages are flagged so you know which rows came from OCR.

Does it replace my bank feed?

No. It covers the statements your bank feed never delivered: closed accounts, historical months, clients who only send PDFs, and banks that do not connect.

Get early access

Free tier at launch. No spam, one email when it is ready.

Would you pay $29/month for this?