Skip to content
stmtai

Accounting software

How to import bank transactions into QuickBooks

Bank feeds, CSV upload, QBO Web Connect and IIF compared for QuickBooks Online and Desktop, with file limits, column rules and common errors.

8 min read · Last reviewed · by the stmtai team

If your bank connects to QuickBooks, use the bank feed. If it does not, or you need transactions from before the feed started, upload a file. QuickBooks Online takes CSV, QBO and QFX files (and, more recently, a PDF or image of the statement). QuickBooks Desktop takes QBO Web Connect files and IIF, but not CSV. Everything below is about picking the right one of those and getting the file into a shape QuickBooks will accept.

Details checked against Intuit's help pages in September 2026. Menu labels vary between regions and product tiers; a slightly different name is usually the same screen.

The four methods at a glance

MethodQuickBooks OnlineQuickBooks DesktopHistory availableEffort per month
Bank feed (direct connection)YesYes (Direct Connect)What the bank offers, often around 90 days at first connection, sometimes up to a year or twoNone once connected
CSV uploadYesNoAnything you can get into a CSVDownload, tidy, upload, map columns
QBO / QFX file (Web Connect)YesYesWhatever your bank lets you download, or whatever you convertDownload and import, no mapping
IIF fileNoYesAnythingBuild the file, import straight into the register

Method 1: connect the bank feed

This is the default and, when it works, the least work. In QuickBooks Online go to Transactions (labelled Accounting in some regions), then Bank transactions, and choose Link account. Search for your bank, sign in, pick the accounts and choose the date to start pulling transactions from. In Desktop the equivalent is Banking, then Bank Feeds, then Set Up Bank Feed for an Account.

Two things catch people out.

The first is history. When you connect, QuickBooks downloads as far back as the bank allows. Intuit's guidance says most banks provide roughly 90 days and some up to a year; its UK pages mention anywhere from 90 days to 24 months. If the business has been trading longer than that, the feed will not fill the gap. You need a file upload for the older months (methods 2 and 3).

The second is reliability. Feeds break when a bank changes its login flow or stops supporting the connection. Disconnecting and reconnecting usually fixes it, but you may lose a few days of transactions and have to upload those separately.

Method 2: upload a CSV (QuickBooks Online only)

Use this when the bank has no feed, the feed has stopped, or you need months that predate the connection. It is also the fallback for a statement you only have as a PDF, once you have converted it.

The file rules

QuickBooks Online is strict about the file. From Intuit's help article:

  • 350 KB or less per file, and at most 1,000 lines. Split larger periods into several files.
  • Exactly three columns (Date, Description, Amount) or exactly four (Date, Description, Credit, Debit). Delete anything else, including running balance, category and reference columns.
  • Header names in the four-column layout should be Credit and Debit, not Credit Amount and Debit Amount.
  • Cells that would contain only a zero should be blank.
  • Every date in the same format. You choose which format during the upload, so consistency matters more than the format itself.
  • No day-of-week text in the date cell. Some banks export 20/11/2025 THU. Split that into two columns and delete the second.
  • No currency symbols or thousands separators in amounts. 1,250.00 becomes 1250.00.

In the three-column layout, money out is negative and money in is positive. In the four-column layout both columns hold positive numbers. Pick whichever matches your bank's export more closely, because it means less editing.

The steps

  1. Download the CSV from your bank, or export one from a converted statement. Chase and Wells Fargo both have CSV downloads, though the window varies by bank and account type (Wells Fargo, for example, shows up to 18 months of activity online; older months mean going back to PDF statements). Our Chase and Wells Fargo guides cover the exact clicks.
  2. Open the file in a spreadsheet and trim it to three or four columns as above. Save as CSV again.
  3. In QuickBooks Online, go to Transactions, then Bank transactions. If the account already has a tile, select it. Open the Link account dropdown and choose Upload from file. If the account is not connected to anything yet, you will see Upload from file or a link to upload transactions manually instead.
  4. Drop the file in, choose the QuickBooks account it belongs to, and continue.
  5. Match your columns to Date, Description and Amount (or Credit and Debit). Tell QuickBooks which date format you used.
  6. Select the transactions to import, confirm, and they land in the For Review tab. Nothing is posted to the books until you categorize and add them.

Where CSV falls short

A CSV carries no transaction IDs, so QuickBooks can only spot duplicates by comparing date, amount and description. If an upload overlaps the bank feed or an earlier upload, expect duplicates in For Review. Exclude them there rather than deleting posted transactions later. Intuit also requires the file to be in English, which in practice means Latin characters in descriptions.

Method 3: import a QBO or QFX file (Web Connect)

A .qbo file is the format Intuit designed for this, and it is the one Intuit's help page recommends. Unlike CSV it carries an ID for each transaction, which is what lets QuickBooks recognise a transaction it has already seen. It also carries the bank's routing and account identifiers, so QuickBooks knows which account the file belongs to without you mapping anything.

Many US banks offer a QuickBooks or Web Connect download alongside CSV. If yours does not, the alternative is to convert a PDF or CSV statement into a .qbo file. That is one of the export options at /convert/bank-statement-to-quickbooks; stmtai reads the PDF, checks the rows against the printed opening and closing balances, and writes the .qbo. Before you import any .qbo you did not download directly from a bank, run it through the free checker at /tools/qbo-checker. It reads the file in your browser and tells you whether the header, dates and amounts are shaped the way QuickBooks expects, which saves a round of cryptic import errors.

QuickBooks Online

Same route as CSV: Transactions, Bank transactions, Link account dropdown, Upload from file. Pick the .qbo (or .qfx) file and the target account. There is no column-mapping step.

QuickBooks Desktop

Go to Banking, then Bank Feeds, then Import Web Connect Files. Some versions also expose it under File, Utilities, Import, Web Connect Files. Choose the file, then either link it to an existing QuickBooks account or create one. Transactions arrive in the Bank Feeds Center for review.

Desktop does not import CSV bank transactions natively. Intuit's community answers on this are consistent: convert to .qbo, or use IIF. A .qbo conversion is the safer of the two because the transactions still go through the review-and-match step. If the bank gave you a CSV, the free CSV to QBO tool turns it into a .qbo in your browser without an upload; you pick the date and amount columns and it checks the running balance before writing the file.

Common Web Connect errors

  • "We can't read the file you sent." The header is malformed or the file is not OFX-formatted underneath. Check it with the QBO checker or ask the bank for a fresh download.
  • The file asks to create a new account. The account number inside the file does not match the one QuickBooks has linked. Choose the existing account when prompted rather than creating another.
  • "This file has already been imported." QuickBooks recognises the transaction IDs. A fresh bank download carries the same IDs, so re-add the transactions from the Bank Feeds Center instead.

Method 4: IIF files (Desktop only)

IIF is a tab-delimited text format that writes transactions directly into QuickBooks Desktop. It skips the Bank Feeds Center: no review, no matching, no duplicate check. That makes it useful for bulk migrations where you already trust the data, and risky for ordinary monthly bank imports.

Import via File, Utilities, Import, IIF Files. Keep a backup first, because the only undo is restoring it. If you are a small-business owner rather than a migration consultant, you almost certainly want method 3 instead.

Uploading a PDF or image straight into QuickBooks Online

Intuit now lets you upload a statement as a PDF, JPG, PNG or HEIC through the same Upload from file screen. QuickBooks extracts the transactions and shows a side-by-side view to correct before saving. Some statements are held for review by Intuit's team, and only English-language statements are accepted. Worth trying for a one-off; for a stack of back months you will probably want to convert them yourself so you can check the totals first.

After the import: check before you accept

Whichever route you took, the transactions sit in For Review (Online) or the Bank Feeds Center (Desktop). Before accepting them:

  1. Compare the count. The statement says how many debits and credits it covers; the import should match.
  2. Compare the totals. Add up the imported deposits and withdrawals against the statement summary. If they disagree, a row is missing, doubled or has the wrong sign. The reconciliation guide walks through finding it.
  3. Look for duplicates against the previous period. They show up as pairs with identical amounts a day either side of the old import's boundary.
  4. Then categorize and add. Set up bank rules for recurring payees before uploading if you have a lot of history to bring in.

Finally, run QuickBooks' own reconciliation for the statement period so the ending balance is locked. An import that balances against the statement is far easier to defend later than one accepted line by line and never totalled.

Questions

Can QuickBooks Online import an OFX file?

Yes. Intuit's help page lists QBO, QFX and CSV as the suggested formats, but the upload steps also accept .ofx and .txt files. OFX and QFX are structurally the same as QBO minus some Intuit-specific header fields, so they usually import cleanly. If one is rejected, converting it to .qbo is the quickest fix.

Why does my CSV upload say "Error importing" when the columns look right?

The usual causes are a stray fourth or fifth column (running balance is the common one), a zero written in an Amount cell instead of leaving it blank, a currency symbol, or mixed date formats. Check the file is under 350 KB and 1,000 lines too. Trim it back to exactly three or four columns and try again.

Do I need a converted file if I have QuickBooks Desktop and my bank only gives PDFs?

Yes. Desktop has no PDF or CSV bank import, so the statement has to become a .qbo Web Connect file first. Once converted, import it through Banking, Bank Feeds, Import Web Connect Files. Check the converted file with a QBO checker before importing so a header problem does not cost you a failed import.

Will uploading a file create duplicates of transactions the bank feed already brought in?

It can. QBO files carry transaction IDs, so QuickBooks recognises repeats. CSV files do not, and QuickBooks matches on date, amount and description only. Keep upload date ranges from overlapping the feed, and if duplicates appear in For Review, exclude them there rather than accepting and deleting later.

Which method should a new business use to bring in the months before the bank feed started?

Download or convert each earlier month to a .qbo file and import it, oldest first. If your bank only offers CSV for that period, use CSV but keep each file to a single month so any total that does not match the statement is easy to trace. Reconcile each month in QuickBooks before moving to the next.

Related guides

All guides · All banks and formats