Status Codes
HTTP and transaction status codes returned by the Cloud Middleware API.
Standard HTTP and application-specific status codes used throughout the Cloud Middleware API.
Two different layers — don't conflate them
The codes on this page are the Cloud API's own envelope: the HTTP status of the API call, and the transaction lifecycle status (PROCESS / SUCCESS / FAILED / EXPIRED). The actual terminal result of a transaction — the approval or specific decline reason — arrives separately in the webhook's
responseCodefield and follows the canonical Transaction Response Codes (mada scheme + Nami ECR codes). For example, a call can be HTTP200and lifecycleSUCCESSwhile the terminalresponseCodeis116(Not sufficient funds).
HTTP status codes
| Code | Status | Description |
|---|---|---|
| 200 | OK | Request successful |
| 400 | Bad Request | Invalid request parameters |
| 401 | Unauthorized | Authentication failed or token expired |
| 404 | Not Found | Resource not found |
| 500 | Server Error | Internal server error |
Transaction status codes
| Code | Status | Description |
|---|---|---|
| 1 | FAILED | Transaction failed (e.g. timeout, no ACK from terminal) |
| 100 | PROCESS | Transaction is being processed |
| 200 | SUCCESS | Transaction completed successfully |
| 400 | FAILED | Transaction failed |
| 401 | EXPIRED | Session or token expired |
Terminal result codes live in the canonical reference
These five lifecycle values are the API's transaction states, not the terminal's result. To interpret why a transaction succeeded or declined, read the webhook
responseCodeagainst Transaction Response Codes. Note400and401mean different things as HTTP codes vs lifecycle codes here, so always read them in context.
