Erros de integração
Durante a integração com o Checkout Pro através da Orders API, podem ocorrer erros nas solicitações aos diferentes endpoints. Abaixo, detalhamos os códigos de erro organizados por endpoint, junto com sua causa e solução.
Erros ao criar uma Order (POST /v1/orders)
| Código HTTP | Código de erro | Mensagem | Causa e solução |
400 | empty_required_header | Missing HTTP header: X-Idempotency-Key | Inclua o header X-Idempotency-Key com um UUID único na solicitação. |
400 | invalid_idempotency_key_length | X-Idempotency-Key length exceeds 128 characters | Reduza o comprimento da chave de idempotência para no máximo 128 caracteres. |
400 | required_properties | required property 'email' is missing | Verifique se todos os campos obrigatórios estão presentes no corpo da solicitação. |
400 | invalid_total_amount | total_amount is not equivalent to sum... | Verifique se o valor de total_amount é igual à soma dos valores das transações. |
400 | maximum_items | maximum 1 items required, but found 2 | Envie apenas 1 transação por Order no array transactions.payments. |
400 | property_value | invalid value 'X', expected one of: online, point, qr | Utilize o valor online no campo type para integrações de Checkout Pro. |
400 | property_type | expected string, but got number | Verifique os tipos de dados de cada campo. Consulte a referência da API para mais detalhes. |
400 | json_syntax_error | An incorrect JSON was sent | Valide a sintaxe do JSON enviado no corpo da solicitação. |
400 | invalid_email_for_sandbox | Email must contain '@testuser.com' | Utilize e-mails com domínio @testuser.com no ambiente de testes (sandbox). |
401 | invalid_credentials | Test credentials are not supported | Utilize as credenciais de produção dos usuários de teste. As credenciais de teste não são compatíveis com a Orders API. |
402 | status_detail | The following transactions failed | Verifique os dados do meio de pagamento enviados na transação. |
409 | idempotency_key_already_used | X-Idempotency-Key already used... | Gere uma nova chave de idempotência. A chave enviada já foi utilizada em uma solicitação anterior. |
410 | pseudotoken_payment_method_gone | Payment method unavailable | O meio de pagamento expirou. Solicite ao comprador que insira novamente os dados do meio de pagamento. |
423 | resource_locked | Idempotency Key Locked... | O recurso está sendo processado com a mesma chave de idempotência. Aguarde alguns segundos e tente novamente. |
500 | internal_error | Some error occurred on our side | Erro interno do servidor. Tente novamente mais tarde. |
Erros ao consultar uma Order (GET /v1/orders/{id})
| Código HTTP | Código de erro | Mensagem | Causa e solução |
400 | invalid_path_param | Path param Order id is invalid | Verifique se o ID da Order está no formato correto (ULID). |
404 | order_not_found | Order not found | Verifique se o Access Token corresponde ao criador da Order. |
Erros ao cancelar uma Order (POST /v1/orders/{id}/cancel)
| Código HTTP | Código de erro | Mensagem | Causa e solução |
400 | invalid_path_param | Path param Order id is invalid | Verifique se o ID da Order está no formato correto (ULID). |
400 | empty_required_header | Missing HTTP header: X-Idempotency-Key | Inclua o header X-Idempotency-Key com um UUID único. |
404 | order_not_found | Order not found | Verifique se o Access Token corresponde ao criador da Order. |
409 | cannot_cancel_order | Only orders with status 'action_required' or 'created'... | A Order está em um status incompatível para cancelamento. Apenas Orders com status created ou action_required podem ser canceladas. |
409 | order_already_cancelled | The order has already been canceled | A Order já foi cancelada anteriormente. Não é necessário enviar a solicitação novamente. |
Erros ao reembolsar uma Order (POST /v1/orders/{id}/refund)
| Código HTTP | Código de erro | Mensagem | Causa e solução |
400 | refund_amount_exceeds | Refund amount exceeds the available amount | O valor do reembolso excede o valor disponível. Verifique o valor disponível para reembolso. |
400 | order_refund_already_in_process | There is already a full refund request in process | Já existe uma solicitação de reembolso total em processamento. Aguarde a conclusão antes de enviar uma nova solicitação. |
404 | transaction_not_found | Transaction not found | Verifique se o ID da transação está correto. |
409 | cannot_refund_order | Cannot refund order... | A Order deve estar com status processed para que um reembolso possa ser solicitado. |