Changelog: what has shipped
A plain-language record of changes that are live, newest first. Dates from 2026-11-01 are the day a change went live; entries before that are grouped by commit date, not go-live date.
2026-11-05: checks, exports and intake
Prompted by feedback from bookkeepers: reconcile first, find where it breaks, and make sure warnings travel with the export.
Exports
- Every exported row carries a Status and a Review note column, in CSV, Excel, PDF and JSON.
- OFX, QuickBooks CSV and Xero CSV, for importing into accounting software (Day pass or Pro). See asking a client for a CSV or OFX statement.
- A reconciliation report as a PDF and as an Excel sheet. It shows the figures as read; edits made in the table are not reflected, and the report says so.
Checks
- The first row where the running balance breaks is marked, with a button to jump to it.
- A check of the printed transaction count against the number of rows read.
- Statements with exactly repeated rows have their status downgraded.
- Continuity across statements: missing periods, and closing balance against the next opening balance.
- A summary card for batches of three or more statements. Statements you mark as reviewed are counted separately from verified ones.
Intake
- Column mappings you set by hand can be saved and are applied only when automatic reading fails. Only the column roles and a hash of the header are stored in your browser.
- Hints about scan quality, shown when a scan looks hard to read.
- Your own categorisation rules (Settings, Categories), stored in your browser with no network use.
Pages
- New guide: ask a client for a CSV or OFX bank statement, with an email template and a checklist.
2026-11-01: site, languages and currency
- A rebuilt home page that mirrors the app, faster to load because heavier screens load only when needed.
- A security page describing local processing, optional AI sharing and the safeguards in place.
- Guides for reading statements in 16 languages, starting with German, and a buyer checklist for choosing a converter.
- Exports follow the reporting currency you choose.
- Optional exchange rates matched to each transaction’s date.
2026-10-28 to 2026-10-29: launch hardening
- The page you see before the app finishes loading now uses the same layout as the app’s empty state, so nothing jumps when the app takes over.
- The assistant’s requests are size-limited, and its daily usage caps are shared across visitors.
- Usage analytics became opt-in: product and error events are recorded only if you agree, and they exclude statement data, identifiers and free-form error text.
- The site moved to Cloudflare Workers, and the www and older addresses redirect to the main domain.
2026-10-19 to 2026-10-21: reading scans and many files at once
- Scanned pages are turned upright automatically, whether they are upside down, sideways or rotated inside the PDF.
- Pages are read by a pool of background workers with a watchdog for a page that stalls, and a page that fails is retried with different contrast and threshold settings.
- Numbers damaged by OCR, such as a lost decimal point or separator, are restored only when the repaired digits equal what the running balance requires. Those rows are tagged as repaired.
- Many files at once are read in parallel, and the screens that show every row were reworked so large batches stay responsive. The transactions table has a bounded height for the same reason.
- Tooltips explain each statement status, and a setting changes how dates are displayed.
How to read this page
Entries describe what a change does, not a promise about any particular bank or file. How the checks work and where they stop is on the methodology page. Something missing or wrong here? Tell us.