Idea+Cash Developers
Login
Operação

Erros e códigos HTTP

Toda resposta de erro segue o contrato único ErrorResponse. Registre o header X-Request-ID de cada requisição — ele é a chave para investigação com o suporte.

Contrato ErrorResponse

{
  "error": "validation_error",
  "options": {
    "message": "account, wallet or tax-identifier header is required"
  }
}

Códigos

HTTPerrorComo tratar
401unauthorizedToken ausente, expirado ou inválido. Renove o access_token e repita.
403forbiddenIntegração não vinculada à conta referenciada nos headers de conta (account-id/wallet-id/tax-identifier), ou autorizador indisponível — nesse caso a resposta é fail-closed, por segurança.
404not_foundRecurso não encontrado — txId, endToEndId, chave ou id inexistentes.
409conflictConflito de negócio (ex.: cobrança já liquidada, chave duplicada, remoteId de transação já usado com dados diferentes). Não repita cegamente — inspecione.
422validation_errorPayload inválido ou header de conta ausente — a mensagem real é 'account, wallet or tax-identifier header is required'. options.message aponta o campo problemático.
500internal_errorErro inesperado. Registre o X-Request-ID e contate o suporte.
409 nunca é retry silencioso
Um 409 sinaliza estado incompatível — cobrança já paga, chave duplicada, idempotência divergente. Inspecione a mensagem antes de tentar de novo.
403 x 422: como diferenciar
  • 422: você não enviou nenhum header de conta (account-id/wallet-id/tax-identifier) ou o payload está inválido.
  • 403: a referência veio, mas a sua integração não está vinculada àquela conta — ou o autorizador está indisponível (fail-closed). Ver Autorização por conta.

Rastreabilidade

Toda resposta traz X-Request-ID. Guarde-o em logs junto do seu account-id. Ao abrir chamado, envie os dois — a investigação é imediata.