Fulla presenting a bank statement whose ruled rows flow into an organized ledger

Turn bank statements into clean rows.

Upload a PDF, check each row against the source, then export CSV, XLSX, or JSON.

One anonymous page is free. Files and exports expire after 24 hours.

Private by default

Source files and downloads stay behind authorized access.

One-day lifetime

Files, rows, review events, and exports share one deadline.

Review before export

Exports use the approved revision, not an unsaved draft.

Fulla placing a statement into a locked ledger coffer beneath a sun and moon

Your statement gets one day here.

The source, extracted rows, review history, and exports inherit the same expiry. Access closes at the deadline, even when a deletion needs another attempt.

Rendered pages go only to model routes named in the active evaluated provider policy.

Read the privacy details

Three steps, with the source still in view.

Start with a PDF
Fulla guiding a statement through review into organized export files
  1. 01

    Upload the PDFs you have

    Text, scanned, mixed, and password-protected statements are accepted up to 50 MiB and 250 pages.

  2. 02

    Check the draft row by row

    Select a row to see its source page and evidence box. Correct, split, merge, undo, and reconcile.

  3. 03

    Approve the version you want

    CSV, XLSX, JSON, and API results use the same approved revision.

Fulla matching a highlighted statement line to its ledger row

Every row points back to its source.

Focus a transaction to see the page and evidence box that produced it. Dates, amounts, totals, and approval state remain visible while you work.

Statement · August 2026 08/15   Market purchase   −42.18
2026-08-15Market purchase−42.18
Fulla balancing source coverage with reconciled ledger rows

Approval stays with you.

Fulla recalculates confidence from row integrity, dates, amounts, balance reconciliation, and page coverage. An exact 0.80 stops the promoted chain; a lower result advances or stays in review.

Manual inspection uses the same provider policy, and re-extraction does not consume a second page.

See how Fulla works

Same product. Pick a page allowance.

Paid plans include every feature and unlimited workspace seats. There is no trial, rollover, or overage.

starter $30 / month 400 pages
professional $60 / month 1,000 pages
business $99 / month 4,000 pages
Compare monthly and annual plans

A few useful answers.

Does Fulla keep my statement?

Files and related financial content expire 24 hours after presign. If a delete fails, access is fenced and deletion is retried.

Which PDF statements can I upload?

Fulla accepts text, scanned, mixed, and password-protected PDF statements up to 50 MiB and 250 pages. You can choose up to 10 files in one upload.

Which providers can see rendered statement pages?

Rendered pages go only through the active benchmark-qualified chain: eligible GLM through DeepInfra, Mistral ZDR, and Gemini through Google Vertex routes. The Gemini caveat is documented in the Privacy notice.

Are extraction results guaranteed?

No. Extraction creates a draft. Deterministic checks score it, and you review and approve the final rows against the source.

Which export formats are available?

An approved revision can be exported as CSV, XLSX, or JSON. API results use that same approved revision.

How does source-linked review work?

Selecting a row shows the source page and evidence box that produced it. You can correct, split, merge, undo, and reconcile rows before approval.

Does manual re-extraction consume another page?

No. Manual inspection and re-extraction use the same provider policy without consuming a second page.

Can I try Fulla without an account?

Yes. One anonymous page is available per address in a rolling 24-hour window. A registered workspace receives five shared pages in the same rolling window.

View all questions
Fulla beside an open ledger coffer filled with organized spreadsheet pages

Bring the statement and leave with the rows.

One anonymous page is free, and no account is needed to start.