For developers · REST API

Statement in. Verified JSON out.

One endpoint turns a bank statement PDF, scan or photo into clean, structured transactions — reconciled against the statement's own balances before you ever see them. Built for lending, bookkeeping, accounting and expense tools.

Balance-verified responses Scans & photos (OCR) Multi-currency 2,000+ layouts
Why this API

The parser that checks its own work

Verified

Reconciled, not guessed

Every response includes a verified flag — opening balance plus transactions must equal the closing balance, or the section is flagged. You know when to trust the data.

Universal

Any layout, no training

Digital PDFs, scans, and phone photos across 2,000+ bank formats — including European comma-decimals, multi-currency fintech statements, and payment references.

Simple

One call, structured out

POST a file, get transactions with date, description, reference, signed amount, running balance and currency. No webhooks to wire up for standard files.

Example

A request and its response

Request
# POST a statement (via RapidAPI)
curl -X POST \
  https://bank-statement-parser.p.rapidapi.com/api/v1/parse \
  -H "X-RapidAPI-Key: YOUR_KEY" \
  -H "content-type: application/json" \
  -d '{"pdf_url": "https://.../statement.pdf"}'

Send pdf_base64 for inline files, pdf_url for larger ones, or image_base64 for photos and scans.

Response
{
  "pages": 2,
  "currency_sections": [{
    "currency": "EUR",
    "opening_balance": 4720.43,
    "closing_balance": 4221.08,
    "verified": true,
    "transactions": [{
      "date": "2026-06-01",
      "description": "PLATBA KARTOU — SUNO.COM",
      "reference": "3005229585114",
      "category": "Subscriptions",
      "amount": -11.07,
      "balance": 4709.36
    }]
  }],
  "warnings": []
}
Good to know

Built for real integrations

Latency

Typically 10–15 seconds

A standard 1–4 page statement returns in about 10–15s — normal for AI-based extraction. Call it from a background job and show your user a processing state.

Signed amounts

No column guessing

Debits are negative, credits positive — separate debit/credit columns and regional formats are normalised for you into one signed amount.

Honest warnings

It tells you when unsure

Duplicate recap sections, balance-column corrections and unreconciled totals are surfaced in warnings — never hidden.

Start building

Subscribe on RapidAPI, grab your key, and make your first call in minutes. A free tier is available.

Get your API key