Tratamento de erros
Você receberá um HTTP Status 400
, 401
, 403
, 404
ou 409
como resposta quando não conseguirmos prosseguir com a operação devido há um parâmetro mal formatado ou valor inesperado. Nesse caso você deve verificar o conteúdo enviado e corrigir o erro para realizar uma nova requisição, para te ajudar no corpo da resposta vamos informar qual o erro encontrado e o tipo de erro.
Existem dois modelos diferentes de retorno:
{
"code": "CODIGO_IDENTIFICADOR_DO_ERRO",
"description": "descrição detalhada do erro",
"parameter_name": "nome_do_parameto_que_gerou_o_erro_(opcional)"
}
{
"error_messages": [
{
"code": "40001",
"description": "required_parameter",
"parameter_name": "payment_method.capture"
}
]
}
Lista de erros
Código | Descrição | Cenário | HTTP Status |
---|---|---|---|
40001 | required_parameter | Parâmetro obrigatório não foi informado | 400 |
40002 | invalid_parameter | Valor informado no parâmetro é inválido ou não corresponde ao formato esperado | 400 |
40003 | parameter_unknow | Parâmetro desconhecido ou não esperado | 400 |
40004 | rate_limit | Limite de uso da API excedido | 400 |
40005 | idempotency_key_in_use | Chave de idempotência já em uso | 409 |
40006 | unabled_capture | Captura já realizada ou expirada | 400 |
40007 | unabled_refund | Reembolso já realizado, ou valor solicitado acima do permitido | 400 |
400 - Bad Request
Esses erros ocorrem quando algum parâmetro informado na request esta inválido.
Na API de Order esses erros são distinguidos em duas categorias:
Parâmetro obrigatório não informado -> ( code: “40001” )
Dado inválido -> ( code: “40002” )
401 - Unauthorized
Esses erros são decorrentes de problemas na identificação do cliente que está utilizando a API. Seja um problema por falta do header Authorization ou por um valor inválido informado nesse header.
403 - Forbidden
Esses erros são retornados quando o cliente ou integrador tenta acessar uma API ou recurso que ainda não possui acesso. Vale lembrar que os acessos em produção são habilitados após o processo de homologação que deve ser solicitado neste link.
404 - Not Found
Esse status é devolvido principalmente em operações de consulta, quando o identificador informado não existe ou em casos em que há problema de sincronização da transação em nossos serviços.
406 - Not Acceptable
Método usado na requisição está incorreto
409 - Conflict
Esses erros são retornados em duas situações:
1 - Request com idempotência e payload diferente da primeira requisição
2 - Request com idempotência e orderId diferente da primeira requisição
500 - Internal Server Error
Esse status acontece quando o o webservice não consegue identificar o erro real. Caso esteja recebendo esse erro abra um chamado com a gente clicando aqui.