Bank of America statement to Excel. The ledger rebuilt, the balance chain re-added, the break named.
Long statements repeat themselves: a header on every page, a summary box at the top, an interest and fees block that is not a transaction. Take any of those as rows and the register gains lines that were never spent. The useful output is not a pretty sheet — it is a sheet whose totals you can defend. Every figure keeps its page and line, and anything that does not add up is listed with the exact difference.
Drop a Bank of America 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.
Two pages that look identical and are not
The summary box on page one and the transaction register below it often disagree, because one is a period summary and the other is a running account. Read as one table, they double-count. The workspace separates them: summary lines are recognised as claims to be checked, not as money moving, and the register underneath is what becomes rows.
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.
Summary vs register
The totals block is read as a separate claim and compared with the register. If they disagree, both numbers are shown and neither is adopted.
Running balance, line by line
Every printed balance is re-added against the previous one. The first failure is named with its page and the exact gap in cents.
Fees and interest keep their own line
Interest charges and fee summaries are not folded into deposits. They stay where the statement prints them and are checked as their own arithmetic.
Multi-month gaps
Upload several months and the seam between them is checked. A month that is missing is reported as missing, not as a shorter ledger.
Where a Bank of America statement goes wrong quietly
None of these announce themselves. Each one produces a file that looks correct.
The summary period is not the statement period
A 'year to date' box on a monthly statement will not match the monthly maths. It is labelled rather than silently compared.
Parentheses and trailing minus signs
(1,200.00) and 1,200.00- are both negative. The printed text is preserved exactly as printed; the numeric reading is a separate, labelled field.
Scan pages with a stamp across them
Bank stamps and typed annotations land in the middle of the table. Cells that cannot be read cleanly are flagged, not smoothed over.
What we will not claim
There is no Bank of America layout in this product. When a page does not read, the reader says which page and marks what it could not place — you get an honest hole, not an invented 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 Bank of America 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 Excel 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
Will the sheet still have a balance column I can trust?+
The balance column is the figure printed on the statement, untouched. Whether the chain of those figures holds is a separate, checkable claim shown on the page — and when it fails, the row is flagged with the size of the gap.
Can I compare the result against the original while I work?+
Yes. The original pages sit beside the table. Click a cell and the source page opens at that spot, so you are never comparing from memory.
What if the statement is a scan or a phone photo?+
It is read the same way. Scans are the case where a figure is most likely to be misread, so they are the case where the yellow flags matter most — they tell you which cells to look at first instead of asking you to re-check all of them.
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 file that has to import cleanly somewhere else.
For the import where QuickBooks decides whether a row is already there.
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.