Guide June 20, 2026 16 min read

How to fix QuickBooks bank import errors

Almost every QuickBooks bank import error comes from the same handful of file problems — a malformed CSV, mixed dates, symbol-laden amounts, un-normalised debits and credits, duplicates, or the row limit. This guide names each error, explains the cause, and gives the exact fix — plus the one move that prevents nearly all of them: importing a clean, balance-validated file.

FlowParse
flowparse.io

Overview: why imports fail

QuickBooks is strict about the files it imports, and for good reason — it's posting money to your books. When an import fails or imports wrong data, the problem is almost always the file, not QuickBooks: a CSV that doesn't match the shape it expects, dates it can't read, amounts it can't parse, or transactions it's seen before. The errors look varied but trace back to a short list of causes, and each has a clean fix.

The fastest way through all of them is to stop hand-building CSVs and start from a clean, validated file. FlowParse converts a PDF statement into a QuickBooks-ready CSV or a real .QBO file — normalising headers, dates, amounts and signs and checking the balance — which removes most of the errors below before they can happen. If you want the methods in full first, see the QuickBooks import guide.

The five-step fix process

Whatever the specific error, this sequence resolves it:

1 — Read the exact error

CSV formatting, date, amount, duplicate or row limit — the message points to the cause.

2 — Check the file shape

One clean header row, Date / Description / Amount, no blank or extra columns, comma-delimited.

3 — Normalise the data

One date format, plain numbers (no symbols), a single signed amount column or correct debit/credit.

4 — Match the file to your edition

CSV for QuickBooks Online; QBO/Web Connect for Desktop or to avoid duplicates.

5 — Import once, then reconcile

Import each period a single time, categorise, and reconcile against the statement balance.

FlowParse
flowparse.io

“CSV is not formatted correctly”

Cause: Extra header rows, blank rows, more columns than QuickBooks expects, merged cells, or text where a number belongs. QuickBooks wants one header row then Date, Description and Amount.

Fix: Remove everything but a single clean header row and the three columns. Don't leave summary rows, opening-balance rows or notes in the file. The reliable shortcut is to convert the PDF with FlowParse, which outputs exactly the shape QuickBooks expects.

Dates not recognised or imported wrong

Cause: Mixed date formats in one file, or an ambiguous format QuickBooks reads the wrong way (e.g. 03/04 as March 4 vs 3 April).

Fix: Use one consistent format for every row and select that format in the import wizard. FlowParse normalises all dates to a single, unambiguous format, so the import doesn't misread a day as a month.

Amounts rejected or showing as zero

Cause: Currency symbols (£, $, €), thousands separators, parentheses for negatives, or stray text in the amount column — QuickBooks wants plain numbers.

Fix: Strip symbols and separators so amounts are plain decimals, and use a minus sign (not parentheses) for money out. FlowParse outputs clean numeric amounts, so nothing in the amount column trips the import.

Everything imports as the same sign (debits & credits)

Cause: The statement had separate debit and credit columns that weren't mapped, or a single column where signs weren't applied — so money out and money in look the same.

Fix: Use a single signed amount column (money out negative, money in positive), or map the debit and credit columns correctly in the 4-column format. FlowParse normalises debits and credits into one signed column automatically, so the balance reconciles. See 3-column vs 4-column.

Duplicate transactions after import

Cause: Importing the same period twice, or overlapping a CSV import with the live bank feed — and a CSV has no transaction ID for QuickBooks to de-duplicate.

Fix: Exclude the duplicates from the For Review tab (Online) or Bank Feeds Center (Desktop) before they post. To prevent them, use a QBO file — its FITID IDs let QuickBooks skip duplicates — and import each period once, avoiding feed dates.

Import stops at the row limit

Cause: QuickBooks Online caps a CSV import at about 1,000 rows; a busy account or a consolidated year exceeds it.

Fix: Split the statement and import by month, or use a QBO file, which isn't bound by the CSV row cap. To bring a year in cleanly, consolidate first and import per period.

QuickBooks Desktop won't take the CSV

Cause: Desktop doesn't support plain CSV import — it reads QBO (Web Connect), QFX and OFX only.

Fix: Convert the statement to a .QBO file and import via Banking → Bank Feeds → Import Web Connect File. Full detail in Online vs Desktop import.

Everything imports into a single column

Cause: QuickBooks couldn't tell the columns apart — usually an unexpected delimiter (semicolon instead of comma, common in some European locales) or columns that weren't mapped in the import wizard.

Fix: Make sure the file is comma-delimited and re-map Date, Description and Amount in the import step. If your spreadsheet app saved a semicolon CSV, re-save as comma-separated. A clean FlowParse CSV uses commas and maps cleanly the first time.

QBO file imports to the wrong account or won't import

Cause: The QBO file's account type or ID doesn't match the QuickBooks account you're importing into — for example importing a credit-card file into a bank account, or a stale Intuit tag.

Fix: Import the file into the matching account type (bank file → bank account, card file → credit-card account). FlowParse tags the QBO correctly for the document type, and you select the destination account at import; if QuickBooks prompts to set up a new account, point it at the existing one.

Some transactions didn't import

Cause: The file was truncated at a page break, exceeded the row limit, or had rows QuickBooks silently skipped for formatting — so the count in QuickBooks is lower than the statement.

Fix: Compare the imported count and closing balance to the statement. FlowParse stitches multi-page statements into one continuous list and balance-validates the total, so a dropped line is caught and flagged before import rather than going missing in QuickBooks.

Quick error reference

The whole list at a glance — symptom, cause and the one-line fix:

SymptomCauseFix
“Not formatted correctly”Extra/blank rows, wrong columnsClean header + Date/Description/Amount
Wrong or rejected datesMixed/ambiguous formatsOne format; set it in the wizard
Amounts rejected / zeroSymbols, separators, textPlain signed numbers
All one signDebits/credits un-normalisedSingle signed column
DuplicatesRe-import or feed overlapQBO (FITID); import once
Stops at ~1,000 rowsOnline CSV row capSplit by month or use QBO
Desktop rejects CSVDesktop has no CSV importConvert to .QBO
All in one columnWrong delimiter / mappingComma CSV; re-map columns
Won't reconcileMissing / duplicate / signImport validated data once
FlowParse
flowparse.io

The reconciliation won't balance after import

This is the error that shows up aftera seemingly successful import, and it's the most expensive to chase. It almost always traces to one of three things already covered: a missing transaction (the file was truncated or a row was skipped), a duplicate, or a wrong sign. The difference between QuickBooks' balance and the statement's closing balance is your clue: a single transaction's worth means a missing or duplicated line; double a transaction means a sign error on it.

The structural cure is to import data that was validated before it arrived. FlowParse runs a balance check — opening balance plus transactions equals closing balance — on every statement, so a missing or misread line is flagged and fixed in the editable preview beforeyou import, rather than surfacing as an unbalanced reconciliation later. That's the difference between hunting for a difference and never having one. See the validation engine and the reconciliation guide.

FlowParse
flowparse.io

Preventing import errors for good

Every fix above is reactive — but the errors are avoidable. Because they nearly all come from a hand-made or copied CSV, the prevention is to start from a clean file. Converting the PDF statement with FlowParse normalises the headers, dates, amounts and signs, validates the balance, and hands you the correct file for your edition (CSV for Online, QBO for Desktop or duplicate-safe imports). That single step removes essentially the whole list at once.

  • Convert the PDF rather than copy-pasting or hand-building a CSV.
  • Use one date format and let the wizard know which it is.
  • Keep amounts as plain signed numbers — no symbols, no parentheses.
  • Prefer a QBO file for repeat imports and for Desktop (FITID de-dupe).
  • Import each statement period exactly once; don't overlap the feed.
  • Validate the balance before importing so nothing is missing.

Bottom line: a clean, balance-validated file imports without errors and reconciles on the first pass. Convert the PDF properly and the troubleshooting mostly disappears.

Skip the errors entirely

Convert a PDF statement into a clean, balance-validated CSV or .QBO QuickBooks imports without complaint — no formatting, no fixing. No signup to try.

Frequently asked questions

Why does QuickBooks say my CSV is not formatted correctly?

Almost always because of extra header rows, blank rows, more columns than QuickBooks expects, or text where it wants a number. QuickBooks needs a single clean header row, then Date, Description and Amount columns. Strip anything else, or convert the PDF with FlowParse, which outputs a clean QuickBooks-ready CSV.

How do I fix date format errors in a QuickBooks import?

Make every row use one consistent date format and tell QuickBooks which format it is during import (e.g. DD/MM/YYYY or MM/DD/YYYY). Mixed or ambiguous dates are the usual cause. FlowParse normalises all dates to one format so the import doesn't choke.

Why are my amounts wrong or rejected?

Currency symbols, thousands separators, or text in the amount column cause rejections, and split debit/credit columns that aren't mapped cause wrong figures. Use plain numbers in a single signed column. FlowParse normalises debits and credits into one signed amount automatically.

How do I remove duplicate transactions in QuickBooks?

Exclude or delete the duplicates from the For Review tab (Online) or the Bank Feeds Center (Desktop) before they're added to the register. To prevent them, use a QBO file — its FITID IDs let QuickBooks skip duplicates — and import each period once.

What is the QuickBooks 1,000-row import limit?

QuickBooks Online caps a CSV import at about 1,000 rows. Split a long statement by month, or use a QBO file which isn't bound by the CSV row cap. Desktop's QBO/QFX/OFX imports aren't affected.

Why won't QuickBooks Desktop import my CSV?

Because Desktop doesn't support plain CSV import — it imports QBO (Web Connect), QFX and OFX. Convert your statement to a .QBO file with FlowParse and import it via Banking → Bank Feeds → Import Web Connect File.

My reconciliation won't balance after importing — why?

Usually a missing transaction, a duplicate, or a wrong sign. Importing a balance-validated file prevents the missing-line case, a QBO file prevents duplicates, and checking that debits are negative and credits positive fixes signs. Start from validated data and most reconciliations balance first time.

Why did some transactions not import?

Often the file was truncated at a page break, exceeded the row limit, or had rows QuickBooks skipped due to formatting. FlowParse stitches multi-page statements into one list and balance-validates the total, so a dropped line is caught before import.

How do I fix transactions importing with the wrong sign?

Money out should be negative and money in positive (or correctly split across debit/credit columns). If everything came in as one sign, the source had debits and credits un-normalised. FlowParse signs amounts correctly so the balance reconciles.

Can I re-import a statement without creating duplicates?

With a QBO file, yes — QuickBooks uses the FITID to skip transactions it already has. With a CSV there's no ID, so re-importing the same period duplicates it; import each period once.

Why does QuickBooks import everything into one column?

The CSV columns weren't mapped correctly at import, or the file had an unexpected delimiter. Re-map Date, Description and Amount in the import wizard, and make sure the file is comma-delimited. A clean FlowParse CSV maps cleanly.

How do I import a PDF bank statement that won't go into QuickBooks?

QuickBooks can't read a PDF at all — that's why it 'won't import'. Convert the PDF to a CSV or QBO first; FlowParse extracts every transaction and outputs a QuickBooks-ready file in one step.

Does fixing the file help my reconciliation accuracy?

Yes. Most reconciliation differences trace back to an import problem — a missing line, a duplicate, a wrong sign. A clean, balance-validated import removes those at the source, so the reconciliation is accurate by construction.

What's the fastest way to avoid all these errors?

Convert the PDF statement with FlowParse rather than hand-building a CSV. It normalises headers, dates, amounts and signs, validates the balance, and outputs the right file for your edition — which removes essentially every error in this guide at once.

Do these fixes apply to credit-card imports too?

Yes. The same formatting, sign and duplicate rules apply to credit-card statements, imported against the matching card account. Charges should be money out and payments money in.

Related