How to convert a bank statement PDF to CSV
A complete bank-provided CSV is preferable when it covers the needed statement period and fields. If only a PDF is available, ExtractMint can produce a CSV for review; compare every extracted row with the source before using it.
When to use a bank CSV or a PDF conversion
Check the bank’s download options first. A bank CSV can avoid PDF layout extraction, but still check its period, required fields, dates, currency, and transaction signs against the statement. Use a PDF conversion when the bank export is unavailable or lacks information your workflow needs.
How to convert a PDF statement to CSV in ExtractMint
- Open the converter and upload the statement PDF. Text-based PDFs are the strongest input; scans rely on OCR and may need more correction.
- Review extracted rows beside the source PDF. Correct missing or split descriptions, amounts, debit and credit direction, and rows around page breaks.
- Confirm the statement’s date convention. If dates are ambiguous, choose DD/MM/YYYY or MM/DD/YYYY using evidence from the statement rather than guessing.
- Compare opening, running, and closing balances, investigate warnings, and check each amount against its source row.
- Choose the CSV download after review. Open the downloaded file with explicit date and text settings, then recheck it before spreadsheet use or accounting handoff.
ExtractMint is in beta. No bank-specific format has been independently validated against real statements. Results depend on document layout and scan quality; extraction and OCR can miss or misread transactions.
What each exported CSV column contains
| Group | Column | Contents and review notes |
|---|---|---|
| Transaction values | Date | Transaction date formatted using the selected statement date convention. |
| Description | Extracted transaction description; check wrapped text against the PDF. | |
| Reference | Transaction reference when available; otherwise blank. | |
| Withdrawal | Money leaving the account when identified; otherwise blank. | |
| Deposit | Money entering the account when identified; otherwise blank. | |
| Tax | Tax value when available; otherwise blank. | |
| Amount | Signed transaction amount derived from the row. | |
| Balance | Running balance when available; otherwise blank. | |
| Review status | Review Status | Row review status from validation checks. |
| Review Notes | Validation notes associated with the row. | |
| Category | Assigned transaction category; review before relying on it. | |
| Confidence | Extraction confidence shown as a percentage; not proof of correctness. | |
| Source and audit context | Source | Source information recorded for the row. |
| Source Lines | Source line numbers when available, separated by commas. | |
| Statement Warnings | Statement-level export warnings repeated on each row. | |
| Date Format | Selected statement date format, or Needs selection when ambiguous or conflicting; may be blank if unavailable. |
Use transaction values for spreadsheet calculations, review status fields to investigate extraction issues, and source and audit context to trace rows and interpret warnings. Keep the review and audit fields available when checking or handing off the file. Fields that are unavailable can be blank. The CSV contains review metadata as well as transaction data; inspect warnings and choose the fields your next workflow requires.
A synthetic example
These invented figures illustrate the existing synthetic sample, not a real bank statement. With a $1,000.00 opening balance, a $300.00 deposit and withdrawals of $125.50 and $62.00 give a $1,112.50 closing balance.
| Date | Description | Withdrawal ($) | Deposit ($) | Balance ($) |
|---|---|---|---|---|
| 03/04/2026 | Studio supplies | 125.50 | — | 874.50 |
| 05/04/2026 | Project credit | — | 300.00 | 1,174.50 |
| 07/04/2026 | Service charge | 62.00 | — | 1,112.50 |
$1,000.00 + $300.00 − $125.50 − $62.00 = $1,112.50. Net change is +$112.50, with zero discrepancy against the invented closing balance.
A matching balance does not prove completeness or correct dates: missing and extra rows can offset one another. In this invented example, 03/04/2026 means 3 April under DD/MM/YYYY; confirm the source convention before export. The example does not establish accuracy on real-bank formats.
What to check in the CSV before spreadsheet use or accounting handoff
- Compare the transaction row count in the downloaded CSV with the source statement. Exclude headers and opening or closing balance summaries; investigate missing or duplicate transactions even when the counts match.
- Confirm the account, currency, statement period, first date, and last date against the source.
- Compare every transaction with the PDF, including wrapped descriptions, references, and page-break rows. Investigate missing or duplicate rows.
- Check withdrawals, deposits, signed amounts, decimal separators, and negative signs. Do not count both a signed amount and debit/credit columns as separate transactions.
- Reconcile opening, running, and closing balances; investigate every discrepancy and warning even when the final balance matches.
- Import CSV through your spreadsheet’s import controls to preserve reference numbers and confirm date parsing. Recheck the file after opening it.
- Before accounting handoff, agree the required fields and column mapping with the recipient or target system. This review CSV is not guaranteed to match an accounting import template.
Related guides and privacy details
- Compare bank exports and PDF extraction methods
- Check the balance trail
- Resolve ambiguous statement dates
- Choose CSV, Excel, or QBO
- Review PDF rows and page breaks
Core conversion and OCR run in your browser. Read the privacy and data-flow details before processing sensitive material or sharing exports.