Pick the route before you open QuickBooks
The right route depends on what the bank gives you and how far back you need to go.
- Bank feed: best for ongoing months when the bank connects cleanly and you only need recent history.
- QBO file: best when you need older months, a closed account, or a bank that does not connect, because the file carries a unique ID per transaction and QuickBooks uses it to skip duplicates.
- CSV file: the most flexible route, since any spreadsheet can become a CSV, but it carries no transaction IDs, so you watch for duplicates yourself.
If the only thing you have is a PDF statement, none of the three routes accepts it directly. You first turn the PDF into a CSV or QBO file, which is covered further down.
Prepare a CSV that QuickBooks Online reads on the first try
QuickBooks Online reads two CSV layouts. Choose one and keep every row consistent.
- 3 column layout: Date, Description, Amount. Money in is a positive number, money out is a negative number.
- 4 column layout: Date, Description, Credit, Debit. Deposits go in one column, withdrawals in the other, and each row fills only one of the two.
Keep a single header row at the top and nothing else above it. Bank logos, account summaries and blank spacer rows make the upload fail or shift the columns.
Use one date format for the whole file, such as MM/DD/YYYY for US banks. During the upload you tell QuickBooks which format the file uses, so mixed formats in one file are the real problem.
Strip currency symbols and thousands separators from amounts. A value like 1,250.00 USD should read 1250.00.
Remove running balance columns or leave them unmapped. QuickBooks does not need them and they confuse the column mapping.
If a description contains commas, make sure the field is wrapped in quotes, otherwise the row splits into extra columns.
Upload the CSV step by step
Step 1. In QuickBooks Online, open the banking area (look for Banking or Transactions, then Bank transactions in the left menu).
Step 2. Look for the Upload from file option. On many accounts it sits under the arrow next to the Link account button.
Step 3. Drag in the CSV or browse to it, then click Continue.
Step 4. Choose the QuickBooks account the transactions belong to, such as the business checking account in the chart of accounts.
Step 5. Map the columns: tell QuickBooks which column is the date, which is the description, and whether amounts sit in one column or two.
Step 6. Pick the date format that matches the file and confirm the sign convention for the 3 column layout.
Step 7. Tick the rows to import, review the count, and finish the import.
Step 8. Open the For review tab and add, match or exclude each transaction, or let your bank rules handle the repetitive ones.
Upload a QBO Web Connect file
A QBO file is the format banks use for Web Connect downloads. It contains the account number, the date range, a closing balance and a unique transaction ID for every line.
Step 1. Download the QBO file from the bank, or produce one from a PDF statement with a pdf to qbo converter.
Step 2. In the banking area, choose Upload from file again and select the .qbo file.
Step 3. Link the file to the matching QuickBooks account. Map it to the same account every month, so QuickBooks keeps one history.
Step 4. Review the transactions under For review and accept them.
There is no column mapping with a QBO file, which removes the most common source of mistakes. Because each line carries an ID, uploading the same month twice is far less likely to create duplicates than with a CSV.
Connect a bank feed and know where it falls short
Step 1. In the banking area, choose Link account (or Connect account) and search for the bank.
Step 2. Sign in with the bank credentials and approve access.
Step 3. Pick which bank accounts to connect and map each one to an account in QuickBooks.
Step 4. Choose how far back to pull. The available history depends on the bank and is often around 90 days.
Feeds are convenient, but accountants run into the same gaps again and again.
- History stops at whatever the bank sends, so a client who joins in October with an empty year has nothing before July.
- Closed accounts and accounts at small banks or credit unions often do not connect at all.
- Feeds disconnect after password changes or security prompts and leave silent gaps of days or weeks.
- Credit cards issued by a different institution from the checking account need a second connection.
For every gap, fall back to a statement file for the missing date range and upload it with one of the two file routes above.
Common import errors and how to fix them
- The file will not upload: check the extension is .csv or .qbo, the file is not open in another program, and it is not a huge multi-year export. Split long ranges into months.
- Dates come in wrong or the import refuses them: the file mixes formats, or you picked DD/MM/YYYY for a US file. Fix the column in a spreadsheet and pick the matching format during upload.
- Every amount has the wrong sign: in the 3 column layout, withdrawals must be negative. Flip the sign or switch to the 4 column layout.
- Columns are shifted: a description with an unquoted comma split the row. Re-save the file from a spreadsheet so text fields are quoted.
- Duplicate transactions: a CSV overlapped a feed or an earlier upload. Exclude the duplicates in For review, then set clear start and end dates for each file.
- A QBO file is rejected: the file may be built for a different program, such as a QFX meant for Quicken, or its header is malformed. Generate a fresh QBO file for QuickBooks.
Check the import against the statement balance
An import is finished only when the numbers tie to the bank statement.
Step 1. Add or match every imported line for the period so nothing stays in For review.
Step 2. Open the reconcile screen (look for Reconcile under the gear icon or under the accounting menu).
Step 3. Enter the ending date and the ending balance printed on the statement.
Step 4. Tick the cleared transactions and confirm the difference shows 0.00.
If the difference is not zero, compare the count of deposits and withdrawals with the statement totals first. A single missing page or a skipped duplicate usually explains it.
Where a statement converter saves the most time
Most of the cleanup above exists because PDF statements are not data. StatementsConverter reads PDF, scanned and photographed statements and exports the transactions in the layout QuickBooks expects.
- Export a 3 column or 4 column CSV with one consistent date format through the bank statement to csv converter.
- Export a QBO file with transaction IDs for a clean Web Connect upload.
- Every statement goes through a balance check: opening balance plus deposits minus withdrawals must equal the closing balance, so a missed page shows up before you import.
For a fuller walkthrough of the QuickBooks workflow, see pdf bank statement to quickbooks.
Frequently asked questions
Can QuickBooks Online import a PDF bank statement directly?
No. The upload accepts CSV and Web Connect style files, so a PDF first needs to become a CSV or QBO file.
Should I use the 3 column or the 4 column CSV layout?
Use the layout that matches how the bank shows amounts. If the statement has separate deposit and withdrawal columns, the 4 column layout avoids sign mistakes.
Will uploading a file break my bank feed?
No. Uploaded transactions and feed transactions land in the same For review list. Just avoid overlapping date ranges between the two.
How far back can I import?
With file uploads, as far back as you have statements. The feed limit only applies to the live connection.