QuickBooks Online accepts a bank CSV in one of only two shapes, and it rejects everything else without saying much about why. This page documents both layouts exactly, with the date rules, the size cap and the errors that stop an upload. The converter above turns statement PDFs straight into that shape.
Last updated August 2026
Upload your bank statement
Drop file here or click to upload
PDF, JPG, PNG, BMP, HEIC, TIFF, MT940
Uploading...
QuickBooks Online accepts a bank CSV in one of two layouts: a 3-column format of Date, Description, Amount, or a 4-column format of Date, Description, Credit, Debit. Row one holds the headers and nothing else. Amount fields carry no dollar signs or thousands commas, and in the 3-column layout money leaving the account is negative.
No US bank exports a file that already matches either accepted layout. These are the six mismatches that cause most failed uploads.
A Chase checking download arrives with seven columns and a Bank of America download with four plus a balance. QuickBooks wants three or four specific ones, so every extra column has to be deleted before the file will validate.
One file containing both 01/05/2026 and 2026-01-05 fails outright. The date format you pick in the upload wizard has to match every row in the column, with no exceptions and no day-of-week text.
An amount written as $1,250.00 is text, not a number. QuickBooks reads the comma as a field break and the import either fails or splits rows into the wrong columns.
In the 3-column layout money out must be negative. Banks that write withdrawals as positive numbers in a separate column produce a file that imports cleanly and then doubles your income.
Bank of America opens its download with a small balance summary. QuickBooks reads row one as the header row, picks up the wrong labels, and the mapping step offers nothing usable.
The upload is capped at roughly 350 KB, which lands somewhere near a thousand transactions. A full year of an active operating account has to be split into batches.
Rather than reshaping a bank export by hand every month, upload the statements and get a file already in the layout QuickBooks accepts.
Export as Date, Description, Amount, or split into Credit and Debit if you would rather keep the direction in the column than in the sign.
Withdrawals come out negative and deposits positive, which is exactly what the 3-column layout expects, so nothing needs a formula pass.
Dates land as MM/DD/YYYY across every row and every bank in the batch, so the format you choose in the wizard matches the whole column.
Amounts arrive as plain numbers with no dollar signs or thousands commas, and no balance summary sits above the header row.
A long period can be converted month by month so each file stays under the size cap instead of failing at the last step.
Online banking downloads run out after 90 days at some banks and 18 months at others. Statement PDFs go back years and all of them convert.
Nothing to install and no credit card to start.
Drag the PDF statements for the months you need into the box above. Several months and several banks in one batch are fine.
Tip: Keep each output file under the size cap.
Save as CSV in either the 3-column or 4-column shape. Amounts come out as plain signed numbers and dates in one consistent format.
Tip: The 3-column layout suits most bank feeds.
Go to Transactions, then Bank transactions, choose Upload from file, pick the account and map the three columns.
Tip: Check the balance ties before you categorize.
Anyone loading history into QuickBooks without a working bank feed runs into this format. The people below hit it repeatedly, across different clients and different banks, which is where a repeatable output layout pays for itself.
Load months of history for a new client whose bank feed only reaches back 90 days, without rebuilding a mapping per bank.
Rebuild a full year for a return when the feed was never connected or dropped partway through the period.
Bring two or three neglected years into QuickBooks in ordered batches that each clear the upload cap.
Cover the operating accounts at smaller banks and credit unions that QuickBooks has no feed for at all.
Import a closed account or an old card the feed cannot reach, so the books cover the whole year rather than most of it.
Push the same column layout into several QuickBooks companies instead of learning each bank export separately.
QuickBooks Online reads a bank CSV in one of two shapes and nothing else. Pick whichever matches the file you already hold. If your bank writes a single signed amount, use the 3-column layout. If it splits money out and money in across two fields, use the 4-column layout rather than collapsing them by hand.
| Layout | Columns in order | How the direction is carried | Use it when |
|---|---|---|---|
| 3-column | Date, Description, Amount | The sign on the Amount value. Money out is negative, money in is positive. | Your bank writes one signed Amount column, which most US banks do. |
| 4-column | Date, Description, Credit, Debit | Which of the two fields is populated. One is filled per row, both written as positives. | Your bank splits money out and money in, the way Citi does. |
Both layouts share the same rules. Row one holds the column headers and nothing above them. Every date in the column uses one format. Amount fields hold plain numbers with no dollar signs and no thousands commas. Blank rows and trailing empty columns cause validation failures, so strip them before you save.
This is the 3-column layout with the values written the way QuickBooks wants to see them. Note the negative withdrawals, the bare numbers and the single date format.
| Date | Description | Amount |
|---|---|---|
| 01/05/2026 | ACH DEPOSIT CLIENT PAYMENT | 4250.00 |
| 01/07/2026 | OFFICE SUPPLY CO CARD PURCHASE | -138.42 |
| 01/12/2026 | MONTHLY SERVICE FEE | -25.00 |
| 01/19/2026 | CHECK 1042 | -1200.00 |
The 4-column version keeps the same first two fields and replaces Amount with Credit and Debit. A deposit of 4250.00 goes in Credit with Debit left empty, and the card purchase goes in Debit as 138.42 with Credit left empty. Do not write the Debit figure as a negative in the 4-column layout, because the column already carries the direction and the two together cancel out.
Whichever one you select in the upload wizard, applied to every row without exception. QuickBooks asks you to declare the format rather than guessing it, so the column has to be internally consistent. US companies normally use MM/DD/YYYY. A file mixing 01/05/2026 with 2026-01-05, or carrying day-of-week text like Mon 01/05/2026, fails on the rows that do not match.
Excel causes most of this quietly. Open a bank CSV, let Excel reformat the date column, save it again, and the stored text can differ from what you see on screen. Format the column as text before you touch it, or convert the statement PDF directly so the dates are written once and never reinterpreted.
Almost always one of six things. QuickBooks reports these as generic validation messages, so working down this list is faster than reading the error.
| What is wrong | How to fix it |
|---|---|
| More than four columns | Delete everything except the accepted fields. Balance, Type, Details and check number columns all have to go. |
| The date format does not match the file | Normalize the whole column to one format and pick that same format in the wizard. Remove any day-of-week text. |
| Dollar signs or thousands commas in amounts | Strip them so 1,250.00 dollars becomes 1250.00. A comma inside a CSV field breaks the row into extra columns. |
| The header row is not on row one | Delete any summary block or blank rows sitting above the headers, which is the usual Bank of America problem. |
| No header row at all | Insert one and name the columns yourself. Wells Fargo comma delimited downloads ship unlabeled. |
| The file is over the size cap | Split it by month or quarter and upload the batches in date order. |
The practical limit is the file size rather than a published row count. QuickBooks Online caps a bank CSV upload at roughly 350 KB, which works out somewhere around a thousand transactions depending on how long your descriptions run. A busy operating account can pass that inside a single quarter.
Split by month when you are close. Uploading in date order keeps the register readable and makes it obvious where a batch failed if one does. If you are loading several years for a catch-up engagement, the catch-up bookkeeping converter covers sequencing longer periods, and combining bank statements in Excel helps you check the full span before you cut it into uploads.
Not for bank transactions. The 3-column and 4-column CSV upload belongs to QuickBooks Online. Desktop expects a Web Connect QBO file, or an IIF file, which is a tab separated text format Intuit uses for lists and transactions. Feeding Desktop a plain CSV of bank activity is the single most common wasted hour in this whole workflow.
| Product | Accepts for bank transactions | Does not accept |
|---|---|---|
| QuickBooks Online | CSV in the 3-column or 4-column layout, plus QBO, QFX and OFX | PDF, and any CSV with a different column count |
| QuickBooks Desktop | QBO Web Connect files and IIF | CSV of bank activity, and PDF |
If you are on Desktop, produce a QBO file instead. The bank statement QBO format reference explains what goes inside a Web Connect file and why Desktop trusts it, and importing bank transactions into QuickBooks Desktop walks the steps.
No US bank hands you a file that already fits. Here is what to do with the columns you actually receive.
| Column you have | What to do with it |
|---|---|
| Balance or Running Bal. | Use it to prove the file is complete, then delete it. QuickBooks has no field for it. |
| Details, Type or Category | Delete, or fold the useful part into Description before you cut the column. |
| Check or Slip number | Append it to the Description so the check number survives into the register. |
| Two dates, transaction and posted | Keep the posted date. That is the one the statement period and the reconciliation are built on. |
| Separate Debit and Credit, both positive | Keep them and use the 4-column layout, or build one signed column with =IF(Credit="",-Debit,Credit). |
| Pending rows mixed with posted | Filter them out. A pending amount that later changes leaves a duplicate to chase at reconciliation. |
The exact columns differ by institution. The bank CSV export columns reference documents what Chase, Bank of America, Wells Fargo, Citi and Capital One write in a checking download, and credit card CSV export columns by issuer does the same for card files, which carry two dates and a category but no balance.
All of the above assumes you are starting from a bank download. If you are starting from statement PDFs, which is the usual case for closed accounts, older periods and banks QuickBooks has no feed for, the reshaping step disappears. Upload the statements to the bank statement converter at the top of this page and export in the layout you need, already signed correctly and dated consistently.
From there, importing a bank statement into QuickBooks covers the upload wizard itself, importing credit card transactions into QuickBooks handles the card side where the sign convention flips, and reconciling bank statements proves the imported rows tie to the closing balance before you categorize anything. For a system other than QuickBooks, the Xero bank statement converter outputs the column order Xero expects.
QuickBooks Online accepts two layouts for bank transactions. The 3-column format is Date, Description, Amount. The 4-column format is Date, Description, Credit, Debit. Headers go on row one, amounts carry no dollar signs or thousands commas, and every date in the column uses one format.
Three or four, in a fixed order. Either Date, Description and Amount, or Date, Description, Credit and Debit. Anything else in the file, including balance, type, category and check number columns, has to be deleted or folded into the description before the upload will validate.
Yes. Go to Transactions, then Bank transactions, select Upload from file, choose the account and map your columns to the QuickBooks fields. The file has to use the 3-column or 4-column layout and stay under roughly 350 KB, which is around a thousand transactions.
Usually the column count, the dates or the amount formatting. Files fail when they carry more than four columns, mix date formats within the column, include dollar signs or thousands commas in amounts, have a summary block above the header row, or exceed the upload size cap.
The one you select in the upload wizard, applied consistently to every row. US companies normally use MM/DD/YYYY. Mixing formats in a single column, or leaving day-of-week text in the date field, causes the non-matching rows to fail validation.
The cap is on file size rather than row count. QuickBooks Online limits a bank CSV upload to roughly 350 KB, which lands near a thousand transactions depending on description length. Split longer periods by month or quarter and upload them in date order.
No. The CSV upload is a QuickBooks Online feature. Desktop expects a Web Connect QBO file or an IIF file, which is a tab separated text format. Convert your statements to QBO for Desktop rather than trying to force a CSV through.
In the 3-column layout, yes. Money leaving the account is negative and money arriving is positive. In the 4-column layout the direction comes from which field is populated, so both Credit and Debit values are written as positive numbers.
Convert statements straight into QuickBooks.
What each US bank writes in its CSV download.
The QBO Web Connect format for Desktop.
The card side, where the sign convention flips.
Cancel anytime from your account settings · refund policy
Get started converting bank statements to spreadsheets.
USD
per month
billed as
$288 yearly
Choose speed vs accuracy when extracting
| Base AI Faster | 2,500 pages |
| Pro AI Best accuracy | 500 pages |
Scale statement conversion across your team with automation.
USD
per month
billed as
$888 yearly
Choose speed vs accuracy when extracting
| Base AI Faster | 10,000 pages |
| Pro AI Best accuracy | 2,000 pages |
Enterprise-grade bank statement conversion and controls.
USD
per month
billed as
$ yearly
Choose speed vs accuracy when extracting
| Base AI Faster | pages |
| Pro AI Best accuracy | pages |