Skip to main content

Bank Statement to CSV and Excel: The Complete Guide

Getting bank statement data into a spreadsheet or accounting tool sounds like it should be simple. Download the file, open it, done. In practice, there are several decision points along the way, from choosing the right download format to fixing date and amount columns that do not behave as expected after import.

This guide covers the full workflow, from finding and downloading your statement to importing clean data into Excel, QuickBooks, or Xero.

Step 1: Download your statement in the right format

Before converting anything, check whether your bank already offers a direct data export. Several major US banks let you download transaction activity as CSV or OFX directly from their online portal, without needing a PDF at all.

BankNative data export
ChaseCSV, OFX, QuickBooks (QBO) from transaction activity
Bank of AmericaCSV, OFX from transaction activity
American ExpressCSV, Excel, OFX, QFX, QIF from statements
CitiCSV, Excel from transaction activity
Capital OnePDF only (as of early 2026)
TruistPDF only

If your bank offers native CSV or OFX export, that is usually the fastest path. If it does not, or if you need to work with a specific statement period that the native export does not cover well, converting the PDF is your next option.

Step 2: Convert PDF statements to CSV

If you are working with a PDF, the cleanest results come from a dedicated bank statement parser. Generic PDF-to-Excel tools can extract text, but they do not know that Chase puts the running balance in a third column or that Bank of America wraps long descriptions differently than Wells Fargo does.

Statement Pro auto-detects the bank from the PDF and applies a parser built specifically for that institution's layout. You upload the file, it extracts the transactions, and you download a clean CSV.

For a full breakdown of the PDF conversion process, see How to Convert PDF to CSV. For bank-specific instructions, see the guides for Chase, Bank of America, Capital One, and Citibank.

Step 3: Understand the CSV format

A standard bank statement CSV has these columns: Date, Description, Amount (and sometimes separate Debit and Credit columns). Some exporters add a Running Balance column. Here is what a few rows typically look like:

Date,Description,Amount
2025-01-03,WHOLEFDS #0123 SEATTLE WA,-87.42
2025-01-05,DIRECT DEPOSIT EMPLOYER,3200.00
2025-01-07,AMAZON.COM*123AB4CD5 AMZN.COM,-34.99

The exact date format, whether amounts use a separate debit/credit column, and whether negative numbers represent debits or credits all vary by bank and tool. Knowing your source format before you try to import avoids most of the common errors.

Step 4: Import into Excel

Do not double-click the CSV file to open it directly. That works most of the time, but Excel sometimes misreads date formats or treats amount columns as text when you open files this way.

The safer path: open a blank Excel workbook, then use Data > From Text/CSV. In the import wizard, set the delimiter to comma, preview the column types, and make sure dates are recognized as dates and amounts are recognized as numbers. If dates show up as text, set that column's data type to Date and specify the format (MDY for US bank statements).

Step 5: Import into QuickBooks Online

QuickBooks Online accepts CSV and OFX files through Transactions > Bank Transactions > File Upload. Select your bank account, upload the file, and QuickBooks will map the columns.

QuickBooks expects three columns at minimum: Date, Description, and Amount. If your CSV has separate Debit and Credit columns instead of a single Amount column, you can usually configure this in QuickBooks' column mapping step. Dates should be in MM/DD/YYYY or YYYY-MM-DD format.

OFX format is an alternative that skips the column mapping step entirely. If your conversion tool offers OFX export (Statement Pro does), that is often the cleaner import path for QuickBooks.

Step 6: Import into Xero

Xero imports bank statements through Accounting > Bank Accounts, then selecting the account and clicking Import a Statement. Xero accepts CSV, OFX, and several other formats.

For CSV imports, Xero expects four columns: Date, Payee, Description, and Amount. Positive amounts are credits (money in), negative amounts are debits (money out). Xero is strict about the date format, so use YYYY-MM-DD or DD/MM/YYYY depending on your Xero regional settings.

Common import problems and fixes

Duplicate transactions: If you import overlapping date ranges, you will get duplicates in your bank feed. Check the last imported date before uploading and make sure your file starts after that date.

Wrong currency: If you are importing statements from a multi-currency account, confirm the currency in Xero or QuickBooks matches the statement currency before importing.

Amount sign convention: QuickBooks typically expects debits as negative and credits as positive. Xero has the same convention. If your CSV has the opposite convention, add a column in Excel that multiplies Amount by -1 before importing.

Transactions not matching: If imported transactions do not match your existing bank feed entries, check whether you have a duplicate banking connection pulling the same account through an automatic bank feed. You may need to disconnect the feed before importing manually.

Ready to convert your bank statements?

Upload a PDF and get a clean CSV in seconds. No credit card required.

Get Started Free