Home › PDF to CSV
Bank statement PDF to CSV
CSVLedger turns a PDF bank statement into a UTF-8 CSV in your browser, either a full layout (Date, Description, Amount, Debit, Credit, Balance, Check) or the 3-column Date, Description, Amount layout QuickBooks Online accepts. You choose MM/DD/YYYY, DD/MM/YYYY or YYYY-MM-DD dates, and the totals are reconciled to the statement balance first.
Updated October 29, 2026
CSV is what most bookkeeping tools, scripts and databases expect. CSVLedger writes a clean, predictable CSV from your PDF statement and lets you choose the date format.
Why the CSV format details matter
Most import errors come from small format differences: a date read as day-first instead of month-first, a "1,234.56" that becomes two columns, or a currency symbol that turns a number into text. CSVLedger normalises these before writing the file:
- Currency symbols and thousands separators are removed; brackets, trailing minus signs and CR/DR markers are converted into a sign.
- All dates in the file use the single format you choose.
- Descriptions with commas or quotes are quoted correctly.
Full CSV vs QuickBooks CSV
| File | Columns | Use it for |
|---|---|---|
| CSV | Date, Description, Amount, Debit, Credit, Balance, Check | Spreadsheets, scripts, audit work, other accounting software |
| QuickBooks CSV | Date, Description, Amount | QuickBooks Online "Upload from file" (Intuit documents a 3-column Date/Description/Amount format) |
For Xero, use the dedicated Xero CSV export, which uses Xero's field names.
Bank-specific download formats
Before converting, check whether your bank already offers the file you need and how far back: US bank statement format guide (Chase, Bank of America, Wells Fargo, Citi, Capital One, U.S. Bank, PNC, Truist, TD Bank (US), American Express, Discover, Chime, Ally Bank, SoFi).
Frequently asked questions
Which date format should I pick?
Pick the format your target software expects. For QuickBooks Online and Xero, use the format that matches your company's regional settings; both let you confirm the format during import. For databases and scripts, YYYY-MM-DD avoids ambiguity.
Why is money out negative?
A single signed column is the most widely accepted import format (QuickBooks' 3-column CSV and Xero both use it). The full CSV also includes separate positive Debit and Credit columns if you prefer those.
Does the CSV include the running balance?
The full CSV does, when the statement prints one. The QuickBooks CSV does not, because QuickBooks' 3-column format has no balance column.
Is my bank statement uploaded to a server?
No. The PDF is opened and converted by JavaScript running in your browser tab (using Mozilla's open-source pdf.js library). The file is not sent to CSVLedger or anyone else. You can confirm this in your browser's developer tools: the Network tab shows no request containing your file.
How do I know the conversion is correct?
Every conversion is checked against the statement itself: the opening balance plus credits minus debits must equal the closing balance printed on the statement, to the cent. If the statement prints a running balance, each row is checked too, and rows that do not match are highlighted in red. If the check fails you see it before you download anything.