Bank statement API

Upload a PDF, get structured JSON back — transactions, categories, fraud signals, or an accounting-ready export file. One key, six endpoints, no infrastructure to run yourself.

Built for fintech, accounting, and lending platforms

Files never storedBearer key auth, no OAuth flow

Integration

One request, structured data back

request.sh
curl -X POST https://mybankstatementanalysis.com/api/extract-transactions \
  -H "Authorization: Bearer mbsa_YOUR_KEY" \
  -F "file=@statement.pdf"

// Response
{
  "transactions": [
    { "date": "2026-01-15", "description": "WHOLE FOODS", "amount": -87.32, "category": "Groceries" },
    { "date": "2026-01-14", "description": "PAYROLL DEPOSIT", "amount": 3200.00, "category": "Income" }
  ],
  "statementMonth": "2026-01",
  "fileName": "statement.pdf",
  "pageCount": 4
}

Endpoints

Six endpoints, one key

Not just transaction parsing — fraud detection and redaction are the same API, same auth header, same file upload pattern.

Extract transactions

POST /api/extract-transactions

The single-call endpoint most integrations start with — upload a PDF, get transactions back as JSON in the response body.

Full analysis

POST /api/analyze

Runs the same pipeline the web app uses — categorization, recurring-charge detection, income/spend summary — and returns an analysis ID.

Export transactions

POST /api/export/{format}

csv, excel, qif, ofx, qbo, or iif — upload once, get the file for whichever accounting format your pipeline needs.

Fraud detection

POST /api/detect-fake

Authenticity score plus explicit red/green flags — for underwriting or tenant-screening flows that need to catch edited PDFs.

Redact statement

POST /api/redact-statement

Strips account numbers, names, and addresses, returns a redacted PDF — for sharing statements without exposing account identity.

AI financial advisor

POST /api/chat

Streamed chat against a specific analysis — ask questions about the data instead of writing queries against it yourself.

Full request/response reference and copy-paste examples for each endpoint on /developers.

Authentication

Every endpoint reads the same header — no OAuth flow, no key rotation requirement.

Authorization: Bearer mbsa_...

Rate limits

Usage counts against your plan's page allowance per billing cycle.

Business ($49/mo)500 pages/cycle
Overage$0.08/page
Over limit402 or 429 + limitReached: true

Why teams build on this instead of their own pipeline

Parsing bank statements yourself means three separate systems: a PDF text-extraction layer, an OCR pipeline for scanned documents, and a classification model that actually understands financial transaction descriptions. Each one is its own maintenance burden before you've written a line of product code.

This API replaces all three with a single HTTP call. Send a PDF to /api/extract-transactions, get back structured JSON with every transaction extracted and categorized. Digital and scanned PDFs both work — OCR runs automatically when the document needs it.

The endpoints beyond parsing are the part a generic OCR API can't give you: fraud/tampering detection for underwriting and tenant screening, and redaction for sharing statements without exposing account identity. Building either from scratch is a project on its own — here it's the same auth header and file upload as everything else.

Integration fit

When the API is the right choice

Fintech apps

Categorize and surface spending insight inside your own product UI instead of asking users to leave it.

Loan & tenant underwriting

Pull income, cash flow, and NSF patterns from applicant statements — plus a fraud check on the same document.

Accounting platforms

Import client statements without manual data entry; export straight to your ledger's format.

One-off use

If you only need to check a single statement occasionally, the web app or the free converter pages are simpler than integrating an API.

Secure

Secure

Your PDF is processed in memory and never saved to disk. All data is encrypted in transit.

Private

Private

We never sell or share your financial data. Anonymous uploads are auto-deleted after 7 days.

Transparent

Transparent

No hidden fees, no account required. Try one statement without an account; the free upload is one-time, not monthly.

Statement analyzer pricing

Pro

$19/ month

For heavy files and repeat work

  • 200 PDF pages per billing cycle
  • Unlimited visible transactions per report
  • Subscription and recurring charge detection
  • Priority support
Most popular

Business

$49/ month

For lenders, accountants, and teams processing at volume

  • 500 PDF pages per billing cycle, then $0.08/page
  • REST API access with your own keys
  • Unlimited visible transactions per report
  • Priority support
Your file stays privateSecure checkoutCancel subscriptions anytime

FAQ

Bank statement API — FAQ

Ready?

Get an API key.
Ship the integration today.

Business plan, 500 pages/cycle. Create a key in your dashboard — no approval process, no sales call.

Get your API key →
No OAuth flowWorks with existing accounts6 endpoints, one key