LedgerDrop

How to import a bank statement CSV into QuickBooks, Xero or Excel

Published 7 October 2026 · by Tekiba

Short answer: each program wants its own shape. QuickBooks Online takes 3 or 4 columns, recommends day-first dates, and stops at 1,000 lines and 350 KB a file. Xero needs only a date and a signed amount, will not take a year-first date written with hyphens, and stops at 100,000 rows. Excel opens any of them, but decides what each column is unless you tell it.

Everything below is quoted from Intuit's, Xero's and Microsoft's own help pages, read on 7 October 2026. Their exact words matter here, because the mistakes are small ones: a column called Credit amount instead of Credit, or a date with hyphens where Xero expects slashes.

What each one asks for

QuickBooks OnlineXeroExcel
Columns3 or 4: Date, Description, Amount — or Date, Description, Credit, DebitDate and Amount required; payee, description and reference optionalWhatever the file has
DatesOne format throughout; dd/mm/yyyy recommendedDD/MM/YYYY, MM/DD/YYYY or YYYY/MM/DD (and a few short forms)Converted on opening, in the computer's own date order
Money outNegative in the Amount column, or under Credit in the four-column formNegative, in the same column as money inAs written
Limit1,000 lines per upload, 350 KB, in English100,000 rows—

QuickBooks Online

Intuit's “Manually upload transactions into QuickBooks Online” sets the shape: “Each file needs either 3 (Date, Description, Amount) or 4 (Date, Description, Credit, and Debit) columns.” A fifth column — a running balance, a check number, the name of the file — makes it neither, so take it out first.

The three-column form carries the direction in the sign: money out negative, money in positive. The four-column form carries it in which column is filled, and this is the one that catches people out. In Intuit's own worked example on “Format CSV files in Excel to get bank transactions into QuickBooks”, a payment of 100.00 sits under Credit and a deposit of 200.00 under Debit. That is the bank's side of the account, and the opposite of how most people read the two words. Should debits be negative in a bank CSV? goes through why.

The same page asks for three more things. “Make sure the dates are in one format. We recommend you use: dd/mm/yyyy.” “Remove any zeroes (0) from the file. Leave those cells blank.” And the two headings must say only Credit and Debit: “Remove the word 'amount' if it appears in the Credit or Debit column header.”

The limits are on the upload page: “You can include up to 1,000 lines per upload. Each line contains one transaction”, and “Your upload file must be in English and 350 KB or less.” A year of a busy account can pass 1,000 rows; split it by quarter rather than cutting rows off the end.

To upload, the same page gives the path as All apps › Accounting › Bank transactions, then Link account › Upload from file. QuickBooks then asks you to “Match the columns in the file with the correct fields in QuickBooks”, and to “Select the transactions you would like to import” before it adds them. Intuit's list of common import errors starts with incorrect mapping and formatting — currency symbols and commas inside the amounts among them — so a refused file is worth checking against both before anything else.

Xero

Xero's “Import a bank statement in CSV format” asks for less: “You only need the Date and Amount fields to create bank statement lines, but reconciling your transactions is easier if you include more detail.” The amount is one signed column: “Both income and expense amounts must be in the same column. Show income as positive amounts” — and expenses as negative ones.

The dates are where a file most often fails. Xero's list is DD/MM/YYYY, MM/DD/YYYY and YYYY/MM/DD, with a few two-digit-year and month-name forms after them. A year-first date written with hyphens — 2026-10-07, the form a spreadsheet often exports — is not on it. Change the hyphens to slashes, or export the date in one of the listed forms.

Three things have to come out of the file before it goes in: “Columns containing opening and closing balances, as Xero calculates the bank balance from the transactions”, the bank account number if it appears, and empty rows. The header row must be row 1, with a different name for every column. And “You can’t import a CSV file with more than 100,000 rows.”

The import is under Accounting › Bank accounts; on the account, open its menu and choose Import a Statement. The same place offers Xero's own template; its column headings follow the language set in your web browser. The first time, Xero asks you to “assign the columns in your import file to the matching bank statement fields”, and remembers the assignment for later imports — so the headings in your file do not have to match its names, though Xero notes that named columns are easier to map. You then review the rows and can untick any you do not want before completing the import.

Excel

Excel will open a CSV by double-clicking it, and that is where the trouble starts: it guesses every column's type, and turns anything that looks like a date into a date in your computer's order. 04/03/2026 from a UK statement becomes the 3rd of April on a US-set computer. Why Excel changes the dates in your bank CSV has the detail and three ways round it.

Importing gives you a look before it decides. Microsoft's “Import or export text (.txt or .csv) files”: “On the Data tab, in the Get & Transform Data group, click From Text/CSV”, pick the file, and in the preview either load it as it is or transform it first. If a column still comes out wrong, the same page says to convert it afterwards: “If Excel doesn't convert a particular column of data to the format that you want, then you can convert the data after you import it.”

The separator matters too. The same page says that when Excel saves a CSV, “the default list separator (delimiter) is a comma”, that it can be changed in Windows' Region settings, and it pairs a semicolon separator with a comma for the decimal point. If your Excel is set up that way, a semicolon file with decimal commas is the one it expects.

Convert a statement → The free CSV is five columns — Date, Description, Amount, Balance, Check# — with ISO dates, which Excel reads the same way in every region. Under “CSV separator” you can choose a semicolon with decimal commas, or a tab, for an Excel set up that way. LedgerDrop Pro ($39 once) writes the QuickBooks three- and four-column layouts and Xero's layout directly, with the column names and date forms above. The PDF stays in your browser.

Before you import anything

Each of the three will take a file whose rows are wrong. Neither QuickBooks nor Xero checks your file against the statement it came from, and Excel does not know there was one. So check first: the opening balance plus every row should come to the closing balance the statement printed. How to check a converted bank statement CSV for errors takes about a minute.

If you are importing more than one month, look at where the months meet as well. A statement period that overlaps the next one puts the same rows in twice; merge 12 months of bank statements into one CSV covers finding them.

Wave asks for something different again — year-first dates only, and credit card purchases positive: see Wave bank statement CSV format. What else differs on a card statement is in credit card statement PDF to CSV.

For the fixes themselves — one date format, one signed column, plain numbers, UTF-8 and duplicate rows — see clean up a bank statement CSV before you import it. If the CSV came from a long PDF statement, look first at where multi-page statements break.

freee, used widely in Japan, has its own rules — the year in every date and whole-number amounts: see freee bank statement CSV upload, and, for a Japanese tax return, bank statements for kakutei shinkoku.

If a file has already gone in wrong, take it out before trying again: undo a bank statement CSV upload in QuickBooks Online, or delete an imported bank statement in Xero. Once it is in, reconcile it with your accounting software. If an accountant will do the importing, handing bank statement CSVs to your accountant lists what to give them.

What this will not tell you

These are the rules each company publishes, read on one day. None of them was tested here by importing a file into QuickBooks or Xero, and both companies change their import screens from time to time. If what you see differs from what is quoted above, their page is the one to follow.

Questions

QuickBooks says my file is too big. What do I do?

Split it. Intuit's limits are 1,000 lines per upload and 350 KB per file, so a long statement or a year of statements may have to go in as two or more files. Split by date rather than by row count, so that each file covers whole days and nothing is imported twice.

In QuickBooks' four-column layout, which column is money out?

Credit. In Intuit's own example, a payment of 100.00 is under Credit and a deposit of 200.00 under Debit. If every row came in the wrong way round, the two columns were swapped.

Why does Xero reject my dates?

Most often because they are year-first with hyphens, such as 2026-10-07. Xero lists DD/MM/YYYY, MM/DD/YYYY and YYYY/MM/DD, with slashes, and a few short forms. Rewrite the dates in one of those and import again.

Why did Excel change my dates when I opened the CSV?

Because opening a CSV directly lets Excel decide each column's type, and it reads dates in your computer's own order. Import it from the Data tab instead, or use a CSV whose dates are year-first (YYYY-MM-DD), which no region reads two ways.