Skip to main content
ConvertBank to Excel Logo
Bank Statement to CSV

Convert a bank statement to CSV you can check

Extract transactions from a bank statement PDF, download CSV, then check the rows before using them. This page shows the actual export layout and how to prepare it for a destination importer, not a promise of error-free extraction.

Sign in or create an account. Free plan: 7 pages and 7 uploads per day; maximum file size 10 MB. Page allowance is not an unlimited conversion offer. Check plans and allowances.

Start with the right source

Prefer your bank’s native CSV if it includes the correct account, currency and statement period. A live activity download may have different cutoff dates from a monthly statement. Keep the PDF as your control record. If your accounting software offers its own statement upload, check that option before paying for an external extraction.

Have only a PDF? Use the existing upload workflow below. For a comparison of local and native extraction methods, use the bank statement CSV methods guide. Keep separate accounts and currencies in separate files while checking them.

Upload, choose CSV, then review the download

  1. Use Upload a statement to open account access, or go to your dashboard if already signed in. Select the complete statement PDF, including pages with summary totals.
  2. Run extraction and review the Transaction Preview against the PDF. Correct uncertain rows from the source before exporting; scanned PDFs depend on legibility and layout.
  3. In the preview, open Export → CSV to download the reviewed transactions. The dashboard CSV includes Category as its third column even when values are blank. Check the full downloaded file against the PDF, not just a preview.
  4. Keep the original export unchanged. Make a separate import copy with the columns, date format and signs required by your destination.

There is no bank login connection in this workflow. Upload only documents you are authorized to process, and review the privacy policy before sending financial records.

Worked example: statement rows → exact CSV

These are illustrative checking-account rows, not a customer statement or an extraction benchmark. The opening balance is 1000.00. The rightmost column shows the reviewed signed Amount and Type supplied to the exporter: money in is positive; money out is negative. The output below is checked against the actual CSV serializer using these values.

Representative statement input and reviewed export mapping
DateStatement descriptionWithdrawalDepositStatement balanceCSV Amount / Type
2026-10-01ACME Payroll—2500.003500.002500 / credit
2026-10-02Market, "Corner"42.75—3457.25-42.75 / debit
2026-10-03Transfer to savings3457.25—0.00-3457.25 / debit

Dashboard download: six columns

The dashboard includes Category as the third column; it is empty here because no category was supplied. This example uses browser timezone UTC. The dashboard formats dates as US month/day/year through browser date handling, so check for a date shift in other timezones, particularly for date-only source values. Amount and Balance use two decimal places; Type does not change the amount sign.

Date,Description,Category,Amount,Type,Balance
10/1/2026,ACME Payroll,,2500.00,credit,3500.00
10/2/2026,"Market, ""Corner""",,-42.75,debit,3457.25
10/3/2026,Transfer to savings,,-3457.25,debit,0.00

Check: 1000 + 2500 − 42.75 − 3457.25 = 0 closing balance. The zero balance remains 0.00 in the dashboard CSV. Quoted descriptions keep embedded commas; an embedded double quote is doubled. Do not delete merchant punctuation to make a CSV parse.

Server API export: a different layout

The server API CSV is different from the dashboard download. With Category off, its header is Date,Description,Amount,Type,Balance. Category adds the sixth column when enabled. It quotes Date, Description and Type, preserves extracted date strings, and does not force two decimal places. The same reviewed values serialize as follows:

Date,Description,Amount,Type,Balance
"2026-10-01","ACME Payroll",2500,"credit",3500
"2026-10-02","Market, ""Corner""",-42.75,"debit",3457.25
"2026-10-03","Transfer to savings",-3457.25,"debit",0

There is no separate Reference or Payee column in either layout, or split Debit/Credit columns. A missing balance is blank; never fill it with zero. The server exporter does not normalize extracted dates and does not change amount signs: verify them even when Type says debit or credit. Both examples are serialization checks, not proof that an arbitrary PDF will extract these rows correctly.

Before import: a CSV acceptance checklist

  • Coverage: compare every transaction, page and account period. Match the row count to statement transaction lines, excluding headings and subtotals. Check the first and last dates and look for lost wrapped descriptions.
  • Signs and dates: confirm each deposit and withdrawal against its balance movement. Resolve ambiguous dates such as 01/02 before import. Credit-card liability conventions may differ from checking-account cash flow.
  • Control totals: compare deposits and withdrawals separately, then opening balance plus signed amounts against closing balance. A matching net balance is not proof of completeness: two missing opposite amounts can cancel out.
  • Overlap: check duplicates against earlier imports and bank-feed entries. Same date and amount alone do not prove duplication; compare descriptions and source records.
  • CSV integrity: preserve commas and quotes in descriptions with proper quoting. Check for shifted columns, blank amounts and unexpected characters. Treat untrusted descriptions as text and inspect formula-like prefixes before opening in a spreadsheet; CSV quoting alone is not formula-injection protection.
  • Stop on uncertainty: resolve missing rows, inconsistent signs and unreadable amounts from the PDF or bank record. Do not guess a value to force a reconciliation.

Prepare an import copy for Excel or QuickBooks Online

Neither CSV layout is a universal accounting template. These instructions follow the linked vendor documentation; imports into external software have not been tested for this example. Test a copy before importing into live books. Menus and requirements may vary by edition and country.

Excel: control parsing instead of double-clicking

Choose Data → From Text/CSV, select the download and check the comma delimiter in the preview. Choose Transform Data when you need to control column types before loading. Check Date interpretation and numeric Amount/Balance values; keep identifiers or formula-like descriptions as text. Save review work as XLSX so the CSV source stays unchanged.

Microsoft: import or export text and CSV files. Microsoft notes that opening CSV directly uses current default data-format settings.

QuickBooks Online: reduce to three mapped columns

In a separate copy, keep Date, Description, Amount; remove Type and Balance, and Category if present. For the checking example, map Date → Date, Description → Description, Amount → Amount. Confirm deposits are positive and withdrawals negative. Do not map Balance as Amount or use Type as a second amount field.

Go to All apps → Accounting → Bank transactions. Select the intended account, then Link account → Upload from file (or the manual-upload option if not connected). Upload the prepared CSV, select the correct account, match columns and date format, and review the selected transactions before completing the import. Then match/categorize and reconcile; uploading alone does not finish bookkeeping.

Intuit also documents a four-column Date, Description, Credit, Debit layout; do not mix that layout with this signed Amount copy. Its US guide specifies an English-language transaction file no larger than 350 KB, with up to 1,000 transaction lines per upload. Check its current cleanup rules and your account’s preview before proceeding.

Intuit: manually upload transactions into QuickBooks Online. That guide also describes native PDF/image statement upload, which may avoid an external conversion.

For destination-specific detail, use the existing QuickBooks statement upload guide or Xero import guide. Do not assume QuickBooks Desktop uses the Online CSV workflow.

Frequently asked CSV export questions

Should I convert a PDF if my bank already offers CSV?

Prefer the bank’s native CSV when it covers the right account and statement period. PDF extraction is a fallback when structured transaction data is unavailable. Check either source for date-range gaps and overlap before importing.

Which fields does the standard CSV export contain?

The dashboard CSV columns are Date, Description, Category, Amount, Type, Balance. Category is present even when empty. The server API uses a different layout: Date, Description, Amount, Type, Balance, with Category optional as a sixth column. Neither layout has a separate Reference, Payee, Debit or Credit column. A missing balance is blank, not zero.

Does exporting CSV fix dates, signs or extraction errors?

No. The dashboard formats dates in US month/day/year order using browser date handling and formats numbers to two decimal places; inspect for date shifts and rounding. Neither exporter changes an amount’s sign to match Type. The server API preserves extracted date strings. Review every transaction against the statement: a successful download is not evidence that extraction is complete or correct.

Do I need an account, and is conversion unlimited?

Sign in or create an account to use the dashboard upload workflow. The free plan is limited to 7 pages and 7 uploads per day, with a 10 MB file limit. Larger workloads need an appropriate paid allowance; check pricing and your dashboard before uploading.

Have a PDF but no usable bank CSV?

Extract one statement, check the complete download against the source, and prepare a destination-specific import copy before processing a larger history.

Explore by Topic

Tax & Compliance

Prepare statements for tax, audit, and visa applications

Business Management

Manage finances, bookkeeping, and reconciliation