Atendimento

Erros

Formato Problem Details, códigos HTTP e X-Request-Id.

Todo erro da API sai no formato Problem Details (RFC 9457, sucessora da RFC 7807), com Content-Type: application/problem+json:

{
  "title": "Bad Request",
  "status": 400,
  "detail": "Invalid request content.",
  "instance": "/payments",
  "errors": [
    { "field": "dueDate", "message": "deve ser uma data no presente ou no futuro" },
    { "field": "payer.document", "message": "deve ser um CPF ou CNPJ só com dígitos" }
  ]
}
  • detail explica o erro em texto. Não faça parse dele: use o status e, em erros de validação, a lista errors (field e message).
  • Em erro de validação, as mensagens não repetem o valor enviado, para não ecoar dados pessoais.

Códigos HTTP

StatusSignificadoO que fazer
400Requisição inválida: campo faltando, formato errado, JSON malformado ou Idempotency-Key ausenteCorrija a requisição; não repita igual.
401Token ausente, inválido ou expiradoGere um token novo. Veja Autenticação.
403Token sem o escopo da operaçãoPeça o escopo pelo Atendimento.
409Requisição com a mesma Idempotency-Key ainda em andamentoAguarde e repita com a mesma chave.
422Dados recusados pelo provedor de pagamento, ou Idempotency-Key reutilizada com outro corpoCorrija os dados; veja o detail.
429Limite de requisições excedidoAguarde o Retry-After. Veja Rate limit.
502Falha ao falar com o provedor de pagamentoVeja Depois de um erro 5xx.
503Forma de pagamento indisponível no momentoTente mais tarde.
500Erro inesperadoAbra um chamado com o X-Request-Id.

X-Request-Id

Toda resposta, de sucesso ou de erro, traz o header X-Request-Id, que identifica a chamada nos nossos logs. Registre-o no seu sistema e informe-o ao abrir um chamado no Atendimento.

Você também pode enviar o seu próprio id no header X-Request-Id (até 64 caracteres: letras, números, ., _ e -). A API usa o seu valor e o devolve na resposta, o que ajuda a cruzar os logs dos dois lados. Fora desse formato, a API gera um id novo.

Nesta página