Banki
API Reference123 endpoints · v16

BankiPay HTTP API

Every endpoint that powers the agent portal, the admin console, and the public catalog. The same surface the dashboard talks to — so what you see here is exactly what ships. All endpoints accept application/json and return JSON.

MethodAuth123 / 123 endpoints
§1

Getting started

4 endpoints

Base URL, auth, idempotency, rate limits, and how errors are returned.

§2

Auth

9 endpoints

Merchant / admin / platform sign-in. Returns a JWT you send in `Authorization: Bearer …`.

§3

User (BankiPay agent portal)

35 endpoints

Endpoints the signed-in agent calls. All require `Authorization: Bearer <banki_jwt>`.

§4

Admin (back-office)

55 endpoints

Merchant scoping enforced via `x-admin-merchant-id`. Super-admins (`admin_users.role = "platform"`) can cross merchants.

§5

KYC / KYB

9 endpoints

Identity verification flows. Users submit; admins approve; KYB is per-merchant.

§6

Merchant (business banking)

9 endpoints

Per-merchant endpoints for the business banking portal (KYB-verified businesses).

§7

Webhooks

1 endpoint

Outbound webhooks. HMAC-SHA256 signed. Replayable from the admin audit log.

§8

Errors

1 endpoint

All error responses follow a consistent shape. HTTP status is also set correctly.

Auth examples

User JWT
Authorization: Bearer eyJ…
# banki_jwt = base64(<userId>:<merchantId>)
Admin
Authorization: Bearer <jwt>
# AND/OR x-admin-token: <token>
Merchant (KYB)
Authorization: Bearer <jwt>
# banki_jwt = base64(<userId>:<merchantId>)