Developer API · v1

One endpoint. Every bank.

Ship bank statement parsing into your product in under an hour. REST, async jobs, webhooks — priced the same as the dashboard.

curl https://api.statementify.co/v1/convert \
  -H "Authorization: Bearer sk_live_..." \
  -F "file=@chase_october.pdf" \
  -F "format=xlsx"

# → { "id": "job_9f2...", "status": "processing" }

Async jobs

Fire and poll, or await webhooks.

Webhooks

Signed HMAC events for job.completed.

Scoped keys

Publishable & secret keys, live/test.

Rate limits

100 req/min shared, burstable to 500.

Endpoints

MethodPathDescription
POST/v1/convertUpload a PDF, start a conversion job.
GET/v1/jobs/:idPoll status: queued, processing, done, failed.
GET/v1/jobs/:id/downloadSigned URL to XLSX / CSV / JSON output.
GET/v1/jobsList recent jobs, filter by status.
POST/v1/webhooksRegister a webhook to receive job.completed events.

Response shape

Every job resolves to a structured JSON payload with per-transaction fields.

{
  "id": "job_9f2a...",
  "status": "done",
  "bank": "chase",
  "account": "****4421",
  "period": { "start": "2024-10-01", "end": "2024-10-31" },
  "opening_balance": 12448.00,
  "closing_balance": 6828.76,
  "transactions": [
    {
      "date": "2024-10-02",
      "description": "STARBUCKS #4421",
      "category": "Meals",
      "debit": 6.80,
      "credit": null,
      "balance": 12441.20
    }
  ],
  "download_url": "https://api.statementify.co/f/..."
}