Bank statement extraction just got a major overhaul

Account coding, double-entry, multi-level validation, and a direct Xero connection, built into the feature you already use.
Last updated:
July 8, 2026

If you've used bank statement extraction in Tofu, you know it could already pull transactions out of a PDF. What it couldn't do was finish the job: split multiple accounts and currencies, assign account codes and tax rates, preserve double-entry structure, and prove the numbers tied out before you trusted them.

That's the overhaul. Extraction was never really the bottleneck, everything downstream of it was.

The problem with "just extraction"

Pulling dates, descriptions, and amounts off a statement gets you raw data. It doesn't get you a postable entry. In most firms, closing that gap still meant:

  • Manually separating accounts and currencies within a single statement
  • Coding each line after the fact, account code, tax rate, tags
  • Exporting to CSV, reformatting, and re-importing into the accounting system
  • Discovering a balance mismatch only once reconciliation failed

None of that is extraction. All of it used to be your job anyway.

What's new in bank statement extraction

Native multi-account, multi-currency handling. A statement with several accounts or currencies is split and matched correctly inside a single upload, no manual separation beforehand.

Tofu extracting USD, SGD, EUR, and JPY accounts from a single bank statement, each balanced independently

Line-level coding. Tofu now assigns account code, tax rate, and tags to each transaction as it's extracted, not just amounts and descriptions.

Tofu extraction settings showing account code, tax rate, and per-line field configuration

Double-entry, with child transactions. Parent and child lines keep their relationship, so the structure you need for proper bookkeeping is there from the start, not rebuilt afterward.

Journal entry review in Tofu showing debit and credit lines with child transactions

Multi-level validation. Opening and closing balances, transaction dates, credit and debit totals, and per-line running balances are all checked. If something doesn't reconcile, Tofu re-extracts before handing anything back, rather than passing the problem to you.

Tofu validation summary comparing extracted and calculated balances with per-line checks

Direct Xero integration. Validated entries post straight into Xero. No CSV export, no reformatting, no re-import.

Bank statement published to Xero from Tofu with a View in Xero button

Click any field and the document jumps to the exact spot it came from, so review is a confirmation, not a re-check.

Why this matters more than the original feature

Extraction alone answers "what happened." Coding, double-entry structure, and validation answer "is this ready to post." That second question is the one that used to cost hours, and it's the one this overhaul is built around.

Now live in Tofu

If you've used bank statement extraction before, the upload hasn't changed. What comes out the other side has: coded, validated, and postable, with a direct line into Xero.

Want to see it in action? Book a demo or talk to the Tofu team. For a step-by-step walkthrough, read our Help Centre guide on importing bank statements into Xero.

FAQ

What's different about the rebuilt bank statement extraction?

It now handles multi-account and multi-currency statements natively, extracts account code, tax rate, and tags per transaction, supports double-entry with child transactions, and posts directly to Xero without a CSV step.

Can it handle multiple accounts or currencies in one statement?

Yes. A single upload can contain several accounts and currencies, correctly split and converted.

Does it just extract, or does it code the transactions too?

It codes each line, account code, tax rate, and tags, so the output is postable, not just readable.

How does validation work?

Tofu checks opening and closing balances, transaction dates, credit and debit totals, and per-line running balances before anything is handed back. If it doesn't reconcile, it re-extracts.

Do I still need to export to CSV?

No. Validated entries post directly to Xero.

Can Tofu handle multi-page statements?

Yes, tested past 1,000 pages in a single upload, with no page limits.

How much does it cost?

Included in all plans from $79/month. No per-document or per-page fees, no volume limits, unlimited users on every plan.

Last updated:
July 8, 2026

Latest blog posts

Stay up to date on new Tofu features, automation workflows, and the emerging tech shaping the future of bookkeeping.
View all
Product

Bank statement extraction just got a major overhaul

Account coding, double-entry, multi-level validation, and a direct Xero connection, built into the feature you already use.
Koki Fujiwara
July 8, 2026
Guides

Best HubDoc Alternative UK Practices Use in July 2026

Explore the top HubDoc alternatives UK accounting firms rely on in July 2026, from full line-item extraction to AI coding and multilingual support across all document types.
Jay Sen Lon
July 6, 2026
Guides

Best HubDoc Alternatives for Accountants in Canada July 2026

HubDoc only captures header-level data. Discover the best Canadian alternatives in July 2026 that extract every line item, support TPS/TVQ, and work across Xero and QuickBooks.
Jay Sen Lon
July 6, 2026

Start Saving Hours Each Week With AI Bookkeeping

Discover how Tofu automates bookkeeping workflows from invoice to ledger. Schedule your demo today.