Errors

In this guide, we will talk about what happens when something goes wrong while you work with the API. Let's look at some status codes and error types you might encounter.

You can tell if your request was successful by checking the status code when receiving an API response. If a response comes back unsuccessful, you can use the error type and error message to figure out what has gone wrong and do some rudimentary debugging (before contacting support).

Here is a list of the different categories of status codes returned by the CityPay API. Use these to understand if a request was successful.

    Attributes

  • A 2xx status code indicates a successful response.

  • A 4xx status code indicates a client or data error. A validation error for instance would return a 422 unprocessable entity response.

  • A 5xx status code indicates a server error.


Whenever a request is unsuccessful, the CityPay API will return an error response with an error type and message. You can use this information to understand better what has gone wrong and how to fix it. Most of the error messages are pretty helpful and actionable.

Here is a list of the two error types supported by the CityPay API — use these to understand what you have done wrong.

    Attributes

Error response

{
    "code": "D101",
    "context": "4DLbFC1VnnW",
    "message": "Data is not found",
    "response_dt": "2024-03-27T17:03:28.347805Z"
}

Most API error responses include a code value such as D101, P007, or C001. The full response and error code catalogue is maintained in the data types reference.

Important

If you are looking up a specific error code, start with the Response and Error Codes reference. That table contains the canonical list of CityPay response codes, decline codes, validation codes, Paylink codes, and gateway error codes.

Common code families include:

PrefixAreaExamples
000-098Transaction responses, approvals, declines, timeouts, verification and void/refund outcomes000, 044, 090, 098
BBatch processing errorsB001, B009
CCard validation errorsC001, C006, C026
DGateway, merchant, terminal, data and 3D Secure errorsD013, D041, D101
FSystem or upstream processing failuresF001, F006
LPaylink session states and security failuresL200, L401
PPaylink and payment request validation errorsP001, P007, P026