How to Upload Manual Bank Transactions From CSV or Excel in QuickBooks Online Easily 2026
By Impran M NLast checked against official docs
When a bank feed isn't available, or you'd rather control exactly what gets imported, QuickBooks Online lets you bring transactions in from a file instead of typing each one by hand. The importer's fine print catches people out: it accepts CSV, QBO or QFX files, not a raw Excel workbook, and it caps both the file size and the number of transaction lines per upload.
This guide covers turning an Excel sheet into a file QuickBooks will accept, how the column-mapping step works, and how to check the results once they land in your account. It's aimed at business owners and accountants managing books for one company or several clients without a direct bank connection.
Before you start
- A bank or credit card account already set up in Bank transactions
- Transaction data in a spreadsheet, saved as CSV before upload — QuickBooks Online's importer doesn't read .xlsx directly
01Build the file, then save it as CSV, not Excel
QuickBooks Online's importer accepts CSV, QBO or QFX files. An Excel workbook (.xlsx) has to be saved as CSV before it will upload: keep the data in Excel while you build it, then use File, Save As, CSV once it's ready.
The file needs one row per transaction and either three columns (Date, Description, Amount) or four (Date, Description, Credit, Debit). Use a single, consistent date format throughout the whole file; QuickBooks recommends dd/mm/yyyy.
Strip currency symbols and stray text from amount cells, drop the word "Amount" from Credit or Debit headers, and leave any cell that's genuinely zero blank instead of filled with a 0. QuickBooks also caps the file itself: 350KB and 1,000 transaction lines per upload. Split a larger export into smaller date ranges instead of pushing it through in one file.
02Open Bank transactions and start the upload
From the left-hand menu, open Accounting, then Bank transactions. Each connected or manually tracked account shows as its own tile, with a running pending and posted transaction count.
Select the account you're uploading into, then use the Link account dropdown in the top right and choose Upload from file. Alongside the option to connect a live bank feed, this is the entry point into the import wizard, and it also accepts a PDF or image of a statement if that's what you have instead of a spreadsheet.

03Map your file's columns to QuickBooks fields
After selecting your file, the wizard first confirms basic details: whether the first row is a header, and what date format the file uses. Step 2 is the important part: match each QuickBooks field (Date, Description, Amount and an optional Check number, or Credit and Debit if you built a four-column file) to the correct column from your file using the dropdowns provided.
QuickBooks usually guesses correctly when headers are named sensibly, but check every row in this table before clicking Continue. A swapped Date and Amount mapping is hard to spot until transactions land with nonsense values.

04Review what came in
Once the import finishes, the transactions land in the Bank transactions list for that account, sitting under a Pending tab alongside anything already there from a connected feed. Each row shows the date, description and amount as imported, with columns for assigning a customer or vendor and a category before you post it.
Scroll through the full batch and compare the count against your source file. A mismatch usually means a formatting issue skipped a row, not QuickBooks silently dropping data.

05Categorize and post each transaction
For each row, use the Select customer or Select vendor field and the category dropdown to classify the transaction, then click Post. Batch-select several rows with matching categories using the checkboxes on the left when you can; posting one at a time gets slow once you're working through a file with dozens of rows. Transactions left sitting in Pending won't show up correctly in reports, so don't treat the import itself as the finish line.
06Reconcile once everything looks right
After posting a clean batch, run a reconciliation for that account against your actual statement to confirm the ending balance matches. This is the real check: a smooth-looking import can still hide an error that only shows up once the account's balance is checked against reality.
| Format | Columns required | Best for |
|---|---|---|
| 3-column | Date, Description, Amount | A source where deposits and withdrawals already share one signed amount column |
| 4-column | Date, Description, Credit, Debit | A source where deposits and withdrawals are already split into separate columns |
QuickBooks Online reads one of these two layouts per file, decided during the mapping step, not both at once.
When it doesn't work
The file won't upload at all
Why: It's an .xlsx workbook (QuickBooks Online's importer doesn't read Excel files directly), or it's over the 350KB / 1,000-line limit.
Fix: Save the file as CSV from Excel, and split anything larger by date range so each upload stays under both limits.
Amounts or dates come in wrong
Why: A mismatched column mapping, more than one date format in the same file, or leftover currency symbols and letters in a numeric column.
Fix: Recheck the mapping table field by field, use one consistent date format throughout, and clear symbols and text from amount cells before re-uploading.
The same transactions show up twice
Why: The same file, or an overlapping date range, got uploaded more than once.
Fix: Check the Excluded tab in Bank transactions, since QuickBooks often flags likely duplicates there instead of posting them outright; delete the duplicate batch from Pending instead of fixing rows individually.
A four-column file's Credit or Debit values get ignored
Why: The column headers still contain the word "Amount" (for example, "Credit Amount"), which the four-column mapping doesn't parse correctly.
Fix: Rename the headers to just Credit and Debit before uploading.
Frequently asked questions
Can I upload an Excel file directly to QuickBooks Online?
No. QuickBooks Online's importer accepts CSV, QBO or QFX files. Build the data in Excel if that's easiest, then save it as CSV (File, Save As, CSV) before uploading.
Why would I need to manually upload bank transactions?
This is useful when a direct bank feed isn't available, when a connection has lapsed, or when managing accounts for multiple clients and needing more control over what gets imported and when.
What should I do if the import brings in the wrong amounts or dates?
Check the field mapping and date format first. Most import errors trace back to a mismatched column or an inconsistent date format in the source file, not a QuickBooks bug.
Is there a size limit on the file I upload?
Yes: 350KB per file and up to 1,000 transaction lines. For a longer export, split it into smaller date ranges and upload each one separately.
What if the same transactions get imported twice?
Check the Excluded tab in Bank transactions; QuickBooks often flags likely duplicates there instead of posting them automatically. If a whole batch was uploaded twice, delete the duplicate set from Pending instead of sorting it out row by row.
Sources and last check
Screens and click path come from a walkthrough recorded in July 2025. Re-checked against Intuit's official QuickBooks Online support articles in September 2026, which corrected the file-format claim this guide previously made: the importer takes CSV, QBO or QFX, not an .xlsx file directly, and applies a 350KB / 1,000-line cap this guide didn't previously mention.
About the author

Impran M N
I've been hooked on technology for as long as I can remember — especially the new tools and AI apps that seem to land every other week. Easy Tech Tuts is where I write up whatever I've just worked out: I do the task in the real product, record the screen, and turn it into the guide I wish I'd found first.



