Back to Blog

How to Convert a Bank Statement PDF to CSV (for Xero, QuickBooks or Excel)

Converting a PDF to CSV is easy when the PDF is a simple table. Bank statements aren't simple. They have running balances, debits and credits in separate columns, descriptions that wrap onto two lines, and page headers repeated on every page. A CSV that "looks fine" can still fail to import, or import with the wrong signs.

This guide explains what a good bank statement CSV looks like, how to make one, and the mistakes that most often break an import into Xero or QuickBooks.

Converting a general PDF table rather than a statement? Start with our complete guide to converting PDF to CSV.

Why CSV and not Excel?

Accounting software imports CSV (comma-separated values), not Excel workbooks. A CSV is plain text: one row per transaction, columns separated by commas. Xero, QuickBooks Online and most other bookkeeping tools accept it, which is why it's the format you need when a client's bank feed is missing or incomplete.

What a good bank statement CSV looks like

DateDescriptionAmount
06/03/2026Card payment, Sample Hardware Store-84.20
06/04/2026Transfer from Acme Plumbing LLC1250.00
06/05/2026Monthly account fee-12.00

(Fictional example.)

Rules that keep imports working:

  • One row per transaction. No page totals, no "balance brought forward", no blank rows between pages.
  • One consistent date format for every row, in the order your accounting software expects (for example MM/DD/YYYY in the US, DD/MM/YYYY in the UK, Malawi or Australia).
  • Signed amounts in one column: positive for money in, negative for money out. No currency symbols, and no thousands separators (1250.00, not $1,250.00).
  • Descriptions on one line. A description containing a comma is fine as long as it's wrapped in quotes, which spreadsheet programs do automatically when they save a CSV.
  • UTF-8 encoding, so accented names and special characters survive.

Step by step: bank statement PDF to CSV with PDFDrill

  1. Go to the bank statement converter and upload the statement. You can upload a batch of statements for one client, digital or scanned.
  2. PDFDrill extracts the transactions. It checks each statement balances: opening balance plus transactions equals closing balance, to the cent.
  3. Review any flagged rows. Duplicates from overlapping statements are marked rather than silently removed.
  4. Choose your export:
    • Generic CSV: for Excel, Google Sheets or other software.
    • Xero bank statement CSV: Date, Amount, Payee, Description, Reference.
    • QuickBooks-ready CSV: 3-column (Date, Description, Amount) or 4-column layouts.

Xero and QuickBooks exports and the printable reconciliation summary are on the Pro plan. Generic CSV and Excel are on every plan, including the free 10 pages a month.

The manual route: PDF to Excel, then Save as CSV

If you've already got the statement into Excel (see how to convert a bank statement PDF to Excel):

  1. Clean the sheet: one header row, one row per transaction, a single signed Amount column, consistent dates.
  2. Go to File → Save As and choose CSV UTF-8 (Comma delimited).
  3. Close the file. Don't reopen and re-save it in Excel before importing. Excel can quietly reformat dates and strip leading zeros from reference numbers when it opens a CSV.

Which CSV layout for which software?

SoftwareLayout it expectsWatch out for
XeroDate and Amount required; Payee, Description and Reference optional. Money out as negative amounts in the same column.Date order must match what you pick on the import screen.
QuickBooks Online3 columns (Date, Description, Amount) or 4 columns (Date, Description, Credit, Debit). Files must be 350 KB or less.With 4 columns, confirm on the import screen which column is money in and which is money out. The 3-column signed layout avoids the question.
Excel / Google SheetsAny layout.Excel may change date formats when it opens a CSV; import via Data → From Text/CSV to control it.

Sources: Xero, Import a bank statement in CSV format; QuickBooks, Manually upload transactions.

Mistakes that break bank statement imports

  1. Two amount columns when the software wants one (or the reverse). Match the layout to the software, as in the table above.
  2. Money out shown as positive numbers. The import works, but every expense goes in as income. Spot-check a few withdrawals before you confirm.
  3. Mixed date formats. One row in DD/MM order among MM/DD rows means some dates import as the wrong month, and some fail completely.
  4. Totals and balance rows left in. They import as fake transactions.
  5. Overlapping periods. Importing two statements that share a few days creates duplicate transactions in your books. Trim the overlap first, or use a tool that flags duplicates.
  6. Skipping the balance check. Before importing, make sure opening balance plus transactions equals closing balance. If it doesn't, something is missing or misread, and it's much easier to fix in the CSV than in the ledger.

FAQ

How do I convert a PDF to CSV for free? PDFDrill's free plan converts 10 pages a month to CSV, Excel, JSON or text, including scanned PDFs. For a one-off simple table, copying it into a spreadsheet and saving as CSV also works.

Can I convert a scanned bank statement to CSV? Yes, with a converter that reads scans (OCR). Check the balance afterwards. A misread digit on a scan shows up immediately as a difference.

Can I get one CSV from several statements? Yes. PDFDrill merges a batch into one ledger per account in date order, with overlaps marked as duplicates and gaps between months flagged.


Turn statement PDFs into import-ready CSVs. Try PDFDrill free, or see plans for bookkeepers.

Share this article:

Ready to Try PDFDrill?

Start converting PDFs to Excel, Text, and JSON with our AI-powered tools.

Start Free Trial