Status codes

The Orbi Payments Gateway API uses standard HTTP status codes to indicate the result of an API request. Status codes help you determine whether a request was successful, failed due to client input, or failed due to a server-side issue.

Understanding these codes will allow your integration to handle errors gracefully and implement appropriate retry or fallback logic.


HTTP status codes

CodeStatusMeaning
200OKThe request was processed successfully and the response contains the requested data.
201CreatedA new resource was successfully created as a result of the request.
204No ContentThe request was successful, but there is no response body to return.
400Bad RequestThe request is malformed, contains invalid parameters, or fails validation.
401UnauthorizedAuthentication failed or the API key is missing or invalid.
403ForbiddenThe API key is authenticated but does not have permission to access the requested resource.
500Internal Server ErrorAn unexpected error occurred on Orbi’s servers.
503Service UnavailableThe service is temporarily unavailable or unable to handle the request.

Handling errors

For error responses (4xx and 5xx), the API returns a structured error payload describing the failure.

You should:

  • Treat 4xx errors as non-retryable unless the request is corrected
  • Retry 5xx errors with exponential backoff
  • Log error responses for observability and debugging
  • Avoid retrying requests that resulted in 401 or 403 errors without fixing authentication or permissions

Example error response

message property could be a string if only one message is provided or an array of strings if exist more than one message.

{
    "message": "Order total amount must not exceed $1000 USD",
    "error": "Bad Request",
    "statusCode": 400
}
{
    "message": [
        "enable_rails must contain at least 1 elements",
        "each value in enable_rails must be one of the following values: orbi_pay, crypto_deposit",
        "payment_currency must be one of the following values: USDT, USDC, USDG, BTC, ETH"
    ],
    "error": "Bad Request",
    "statusCode": 400
}

Did this page help you?