> ## Documentation Index
> Fetch the complete documentation index at: https://developers.pcibooking.net/llms.txt
> Use this file to discover all available pages before exploring further.

# Return Codes

> HTTP status codes and PCI Booking-specific error codes. Lookup table for API response troubleshooting.

PCI Booking API responses use standard HTTP status codes combined with application-specific return codes. Error responses include a numeric `returnCode` and a human-readable `description`.

## Success Codes

| HTTP Status   | Meaning                        |
| ------------- | ------------------------------ |
| `200 OK`      | Request completed successfully |
| `201 Created` | Resource created successfully  |

## Error Response Format

Error responses are returned in the same format as the request. For XML requests:

```xml theme={null}
<Response>
  <returnCode>-125</returnCode>
  <description>Invalid card number</description>
</Response>
```

For JSON requests:

```json theme={null}
{
  "returnCode": -125,
  "description": "Invalid card number"
}
```

## Application Error Codes

| Return Code | Name                 | Description                                                               |
| ----------- | -------------------- | ------------------------------------------------------------------------- |
| `-112`      | Bad Destination      | Destination URL is unreachable or invalid                                 |
| `-113`      | Disallowed Operation | Not authorized to perform this action on the resource                     |
| `-123`      | Bad Document         | Request body is not valid XML or is badly formatted                       |
| `-125`      | Bad Data             | Input data is invalid (e.g., invalid card number, missing required field) |
| `-126`      | Data Too Long        | Input data exceeds maximum allowed length                                 |
| `-150`      | System Error         | Internal server error                                                     |
| `-160`      | URI Not Found        | Requested resource (e.g., card token) does not exist                      |
| `-168`      | Data Conflict        | Action cannot be performed on the resource in its current state           |
| `-174`      | Too Many Items       | Request exceeds the maximum number of allowed items                       |
| `-175`      | Timeout              | Operation timed out (e.g., third-party server did not respond)            |
| `-176`      | Too Many Retries     | Maximum retry attempts exceeded                                           |
| `-179`      | Bad Parameter        | Request parameter is invalid or missing                                   |
| `-180`      | User Blocked         | User account is blocked                                                   |
| `-1002`     | Missing Auth Header  | The `Authorization` header is missing from the request                    |
| `-1003`     | Unauthorized         | Authentication failed (invalid API key or credentials)                    |
| `-1004`     | Password Expired     | User password must be changed before API access is allowed                |
| `-1005`     | User Suspended       | User account has been suspended                                           |
| `-1006`     | User Closed          | User account has been closed                                              |
| `-1010`     | Locked for Updates   | Resource is locked and cannot be modified                                 |

## HTTP Status Code Mapping

PCI Booking maps application errors to standard HTTP status codes:

| HTTP Status                 | When Returned                                                        |
| --------------------------- | -------------------------------------------------------------------- |
| `400 Bad Request`           | Bad data, bad document, bad parameter, data too long, too many items |
| `401 Unauthorized`          | Missing auth header, unauthorized, password expired                  |
| `403 Forbidden`             | Disallowed operation, user closed                                    |
| `417 Expectation Failed`    | User suspended                                                       |
| `426 Upgrade Required`      | User blocked                                                         |
| `404 Not Found`             | URI not found                                                        |
| `408 Request Timeout`       | Timeout                                                              |
| `409 Conflict`              | Data conflict, locked for updates                                    |
| `500 Internal Server Error` | System error                                                         |

## Related

* [API Conventions](/reference/api-conventions) - Request and response formats, headers, and common patterns
* [Authentication](/getting-started/authentication) - API key, session token, and access token setup
