Documentation
Everything you need to call the gateway β one contract across all fintech integrations.
Getting Started
All endpoints live under one base URL and follow the same conventions:
Every app page has a live playground β fill in the parameters and hit Send request, no client setup needed. The full machine-readable spec is in the OpenAPI / Swagger UI.
A typical integration is three steps:
- Log in β call the app's login endpoint(s) with the account credentials / OTP.
- Save the token β a successful login returns a gateway
token. - Call endpoints β pass
token=on every authenticated request.
Authentication
Each app uses a login flow native to the underlying fintech (SMS OTP, username/password, PIN + OTP). On success the gateway issues its own session token:
Pass that token as a token= query parameter to every subsequent endpoint. The gateway resolves it to the upstream session server-side β you never handle upstream credentials again.
Tokens are bound to the account that logged in. If the upstream session expires, log in again to get a fresh token.
Response Format
Every response β success or error β is wrapped in the same envelope:
The data.upstream field always carries the original fintech response, so you can rely on the normalized fields for convenience and still audit or parse the raw payload when you need app-specific details.
Errors
| Status | Meaning |
|---|---|
400 | Validation error β a parameter is missing or malformed. |
401 | Invalid credentials, bad/expired token, or no active session. |
502 | The upstream fintech app could not be reached or errored. |
Credential and upstream errors still include data.upstream where available, so the upstream's own error body is never hidden from you.
Available APIs
Each integration ships with full endpoint docs and a live playground: