Wells Fargo statement to QBO. A row split across a page break stays one transaction, not two half-rows.
A register that runs close to the page edge splits a long description across a line break, and that is where imports quietly gain rows. A transaction cut in half by a page break becomes two .QBO entries — one with the date, one with the amount — and neither is wrong enough for QuickBooks to reject. The row is stitched back together here, or flagged as unreadable, before the file is written.
Drop a Wells Fargo statement here
Or click to pick the file. It opens in the same page you would have used anyway — the balance chain starts re-adding on the next screen.
Three files free, 60 pages in total, no card needed. Paid plans are priced by the page — one page of the original is one page, up to 500 pages in a single file.
The page break is where the row count changes
On a long statement a single transaction can start at the foot of one page and finish at the top of the next, under a repeated column header. Read page by page, that is two fragments; written as two fragments, the ledger gains a transaction that never happened and loses the balance it belonged to. Continuation rows are joined back to the row they belong to, and a suspected continuation is flagged rather than silently merged.
What gets checked before you download
Every line below is arithmetic on the paper you sent — not a supplier's claim about how good its reading is. Where the arithmetic fails, you get the row and the exact difference, and the statement is not called balanced.
Rows printed vs rows written
The count is stated before you download. If a page could not be accounted for, the file says so instead of shipping a shorter ledger that looks complete.
The institution ID QuickBooks expects
Wells Fargo is written with Intuit bank ID 3000 and routing 00003000 when the statement does not print its own routing number — taken from our bank table, so the rows land in the right institution.
One FITID per row
A transaction ID built from date, amount and payee means a second import is refused rather than doubling the register.
The balance chain, re-added line by line
Each printed balance is compared with the previous one plus or minus that row's amount. The first row that fails is named with its page and the exact difference.
Where a Wells Fargo statement goes wrong quietly
None of these announce themselves. Each one produces a file that looks correct.
A description that wraps past the page edge
The second half arrives at the top of the next page and looks like a row with no date. It is either joined to its transaction or flagged — never written as its own entry.
Parentheses and dollar signs in the amount column
An amount printed as (1,240.05) is a withdrawal, but a reader that keeps the text writes a number QuickBooks cannot read. The printed form is preserved in the raw column and the numeric form is what goes into the file.
The repeated header above a continuation
A new page repeats the column headings. In a .QBO that becomes a transaction whose payee is the headings, which inflates the row count and the totals with it.
What we will not claim
We have no Wells Fargo template and we are not going to build one. If a layout defeats the reader, the page says so and marks the cells it could not place — and the export states how many rows it could not account for rather than closing the gap with a plausible number.
The same goes for the arithmetic: a clean run means the checks we ran found nothing to flag. It does not mean the document is correct — it means nothing in it failed the checks listed above.
How it runs
Upload the statement
A native PDF, a scan, or a phone photo of the Wells Fargo statement. No bank connection, no credentials, nothing to authorise.
The ledger is rebuilt and walked
Rows are put back in the order the statement prints them, page furniture is removed, and the balance chain is re-added line by line.
Check the flags, then export
Anything that did not add up is listed first, with its page and exact difference. Then take the QuickBooks (.QBO) file, the other export shapes, and the review sheet.
What lands on your disk
- The .XLSX register — one row per transaction, no merged cells, amounts as numbers
- A Review sheet: who confirmed or corrected which cell, and what it said before
- Plain CSV, Xero-shaped CSV, and QuickBooks .QBO with unique transaction IDs
- A check report stating the rows printed, the rows exported, and every difference found
- Every cell still clickable back to the page and region it was read from
- Files are read, then destroyed — a second upload is a second read
Questions
Can I import several months at once?+
Yes, and it is the better test: the seam between month N's closing balance and month N+1's opening balance is checked when the files are read together. A missing month shows up as a gap rather than a quietly shorter ledger.
What if a row was split across two pages?+
It is stitched back into one transaction. Where the join is uncertain the row is flagged as a suspected continuation, so you decide — we do not merge silently and we do not split silently.
Does the .QBO carry the running balance?+
It carries the closing balance when the statement prints one. The row-by-row balance stays in the workbook and the workspace, where you can walk it; a .QBO has no column for it.
What does it cost?+
Three files are free, 60 pages in total, with no card and no account needed to try. Paid plans are sold by the page — $19 a month buys 1,000 pages — and a page is one page of the original document.
For the working paper you have to be able to defend.
For the file that has to import cleanly somewhere else.
The same checks, without naming a bank — including the ones whose layouts we do not recognise.
A .QBO with the institution, the account and a transaction ID per row, so a re-import is refused.