The All-in-One Payments Platform for SMEs
Omnispay helps small businesses manage their cash flow effectively by simplifying how they collect, pay, and borrow. With a robust payment infrastructure, Omnispay enables seamless transactions while ensuring security, scalability, and reliability. 🔗 Visit our website: OmnispayCustom Response Codes
| Code | Message |
|---|---|
| 00 | SUCCESS |
| 90 | Blocked user |
| 91 | Empty Request Body |
| 92 | Bad Request |
| 93 | Data not found |
| 96 | Not Acceptable |
| 97 | Payment Gateway Failure |
| 99 | Unable to process the request. |
Transaction Limits
| Code | Message |
|---|---|
| 90 | Account Blocked |
| 99 | Monthly transaction limit exceeded |
| 99 | Per transaction limit exceeded |
Standard HTTP Response Codes
| Code | Message | Description |
|---|---|---|
| 200 | OK | Everything worked as expected. |
| 201 | Created | The request has been fulfilled, and a new resource has been created. |
| 204 | No Content | The request was successful, but there is no response body. |
| 400 | Bad Request | The request was unacceptable, often due to missing a required parameter. |
| 401 | Unauthorized | No valid API key provided. |
| 402 | Request Failed | The parameters were valid, but the request failed. |
| 403 | Forbidden | The API key doesn’t have permissions to perform the request. |
| 404 | Not Found | The requested resource doesn’t exist. |
| 405 | Method Not Allowed | The requested HTTP method is not supported. |
| 409 | Conflict | The request conflicts with another request (perhaps due to using the same idempotent key). |
| 415 | Unsupported Media Type | The media format of the requested data is not supported. |
| 422 | Unprocessable Entity | The request was well-formed but contains semantic errors. |
| 429 | Too Many Requests | Too many requests hit the API too quickly. We recommend an exponential backoff. |
| 500 | Internal Server Error | Something went wrong on the server’s end. |
| 502 | Bad Gateway | The server received an invalid response from an upstream server. |
| 503 | Service Unavailable | The server is temporarily unavailable. |
| 504 | Gateway Timeout | The server did not receive a timely response from an upstream server. |
Card Types
| Type | Description |
|---|---|
| Visa | Popular global payment card |
| MasterCard | Widely accepted credit card |
| American Express | Premium credit card service |
| Discover | U.S.-based payment network |
| JCB | Japanese payment card |
| Diners Club | Travel-focused credit card |
Supported Currency
The available currency codes on your account are determined by the merchant accounts you have with your acquiring bank. You can only process transactions in those currencies. Submitting a transaction request in a currency that is not available on your account will result in the request being rejected.Available Currencies
| Code | Description |
|---|---|
| AED | United Arab Emirates Dirham |
🧾 Documenting Parent-Child Merchant Relationship Flow
This document explains how parent-level API keys work to authenticate merchants usingapikey and accountId.
🔑 How Parent-Level API Keys Work
-
Parent-Level API Key Usage
- A payment aggregator holds a parent API key that is used to process payments on behalf of multiple merchants (sub-merchants).
-
Why Passing
accountIdis Recommended- Helps track which merchant initiated the transaction (auditability).
- Avoids mistakes where a request for one merchant goes to another.
- Enables specific rate limits and security policies for each merchant.
❓ Which accountId Should Be Passed in the Header?
- If the parent (API key owner) is acting on behalf of a child merchant, send the child’s
accountIdin the request. - If a merchant is calling on their own, use their own
accountId. - If
accountIdis missing:- Reject the request.

