API Documentation
Integrate bank-statement conversion into your workflow
Live. The REST API is available on paid plans. Generate an API key from your Account page (API Access section), then authenticate with the X-Api-Key header.
Authentication
Every request must include your secret key in the X-Api-Key header. Keep it secret; treat it like a password. You can create and revoke keys on your Account page.
X-Api-Key: bc_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Endpoints
Upload one bank-statement PDF (or CSV) and receive structured transactions as JSON, or a file in your accounting package's format.
# JSON response
curl -X POST https://bankconverter.co.uk/api/v1/convert -H "X-Api-Key: bc_live_YOUR_KEY" -F "file=@statement.pdf"
# Download as Xero / QuickBooks / Sage / Excel CSV instead
curl -X POST "https://bankconverter.co.uk/api/v1/convert?format=xero" -H "X-Api-Key: bc_live_YOUR_KEY" -F "file=@statement.pdf" -OJ
Optional form field bank (default auto). Query format: json (default), csv, xlsx, xero, quickbooks, sage. Max 50 MB. Rate limit 120 requests/hour.
List your 100 most recent conversions (metadata only).
curl https://bankconverter.co.uk/api/v1/conversions -H "X-Api-Key: bc_live_YOUR_KEY"
JSON response
{
"bank": "barclays",
"reconcile_status": "PASS",
"reconcile_diff": 0.0,
"transaction_count": 42,
"warnings": [],
"transactions": [
{
"Date": "15/01/2026",
"Description": "TESCO STORES 1234",
"Type": "debit",
"Debit": "45.67",
"Credit": "",
"Amount": "-45.67",
"Balance": "1234.56",
"Reference": "",
"Currency": "GBP"
}
]
}
Always check reconcile_status and warnings. RECONCILE_WARN means the parsed totals did not match the statement balance — verify those rows before relying on the data. NO_BAL means the statement had no running-balance column to verify against.
Errors
401 Missing or invalid API key
403 API access requires a paid plan
422 No transactions found / unsupported bank
429 Monthly limit reached or rate limit exceeded
400 Bad file (wrong type, failed security check, too large)
Supported banks
See the full, up-to-date list on the Supported Banks page.