Integration errors
During integration with Checkout Pro through the Orders API, errors may occur in requests to the different endpoints. Below are the error codes organized by endpoint, along with their cause and solution.
Errors creating an Order (POST /v1/orders)
| HTTP Code | Error code | Message | Cause and solution |
400 | empty_required_header | Missing HTTP header: X-Idempotency-Key | Include the X-Idempotency-Key header with a unique UUID in the request. |
400 | invalid_idempotency_key_length | X-Idempotency-Key length exceeds 128 characters | Reduce the idempotency key length to a maximum of 128 characters. |
400 | required_properties | required property 'email' is missing | Verify that all required fields are present in the request body. |
400 | invalid_total_amount | total_amount is not equivalent to sum... | Verify that the total_amount value equals the sum of the transaction amounts. |
400 | maximum_items | maximum 1 items required, but found 2 | Send only 1 transaction per Order in the transactions.payments array. |
400 | property_value | invalid value 'X', expected one of: online, point, qr | Use the value online in the type field for Checkout Pro integrations. |
400 | property_type | expected string, but got number | Check the data types for each field. See the API reference for more details. |
400 | json_syntax_error | An incorrect JSON was sent | Validate the JSON syntax in the request body. |
400 | invalid_email_for_sandbox | Email must contain '@testuser.com' | Use email addresses with the @testuser.com domain in the sandbox environment. |
401 | invalid_credentials | Test credentials are not supported | Use production credentials from test users. Test credentials are not compatible with the Orders API. |
402 | status_detail | The following transactions failed | Check the payment method data sent in the transaction. |
409 | idempotency_key_already_used | X-Idempotency-Key already used... | Generate a new idempotency key. The key sent was already used in a previous request. |
410 | pseudotoken_payment_method_gone | Payment method unavailable | The payment method has expired. Ask the buyer to re-enter their payment method data. |
423 | resource_locked | Idempotency Key Locked... | The resource is being processed with the same idempotency key. Wait a few seconds and try again. |
500 | internal_error | Some error occurred on our side | Internal server error. Retry the request later. |
Errors checking an Order (GET /v1/orders/{id})
| HTTP Code | Error code | Message | Cause and solution |
400 | invalid_path_param | Path param Order id is invalid | Verify that the Order ID has the correct format (ULID). |
404 | order_not_found | Order not found | Verify that the Access Token corresponds to the Order creator. |
Errors canceling an Order (POST /v1/orders/{id}/cancel)
| HTTP Code | Error code | Message | Cause and solution |
400 | invalid_path_param | Path param Order id is invalid | Verify that the Order ID has the correct format (ULID). |
400 | empty_required_header | Missing HTTP header: X-Idempotency-Key | Include the X-Idempotency-Key header with a unique UUID. |
404 | order_not_found | Order not found | Verify that the Access Token corresponds to the Order creator. |
409 | cannot_cancel_order | Only orders with status 'action_required' or 'created'... | The Order is in an incompatible state for cancellation. Only Orders with status created or action_required can be canceled. |
409 | order_already_cancelled | The order has already been canceled | The Order has already been canceled. There is no need to send the request again. |
Errors refunding an Order (POST /v1/orders/{id}/refund)
| HTTP Code | Error code | Message | Cause and solution |
400 | refund_amount_exceeds | Refund amount exceeds the available amount | The refund amount exceeds the available amount. Check the available amount for refund. |
400 | order_refund_already_in_process | There is already a full refund request in process | There is already a full refund request in process. Wait for it to complete before submitting a new request. |
404 | transaction_not_found | Transaction not found | Verify that the transaction ID is correct. |
409 | cannot_refund_order | Cannot refund order... | The Order must be in processed status for a refund to be requested. |