code– Um identificador estável e único para o erro (ex:BTF-0010). Rejeições do JD SPB propagam o código do fornecedor sem transformação (ex:AAC90); falhas em nível de transporte usam o marcador sintéticoTRANSPORT. Faça a correspondência por este valor em vez do status HTTP.service– O serviço ou domínio que produziu o erro (ex:plugin,crm,midaz,fees,jd_spb).category– Categoria de erro legível por máquina para decisões de retry:deterministic,transient,rate_limitouplugin.message– Orientação detalhada para ajudar você a resolver o erro.requestId– ID de correlação da requisição. Presente mesmo quando vazio; inclua-o em solicitações de suporte.fields– Opcional. Metadados estruturados de validação ou retry (erros em nível de campo, detalhes de limite e similares).
Nas tabelas abaixo, a coluna title é um rótulo legível para conveniência — não é um campo no envelope de resposta. O envelope retorna
code, service, category, message e requestId. Faça a correspondência por error.code.Erros do Bank Transfer
Os seguintes erros podem ocorrer ao interagir com os endpoints do Bank Transfer. Cada erro segue nossa estrutura padrão, facilitando a depuração e a resposta a problemas de forma programática. Consulte as tabelas abaixo para obter uma lista dos possíveis códigos de erro, o que eles significam e como resolvê-los.
400
401
403
404
409
410
422
Os erros retornados pela integração com o JD SPB não são envelopados em códigos
BTF-*. O código do fornecedor é propagado textualmente no campo error.code do envelope de erro HTTP (por exemplo, ACE95 para timeouts de requisição, AAC90 para rejeições por assinatura inválida, ALN01 para respostas de número de controle não encontrado). Consulte a documentação do fornecedor JD SPB para a lista completa e a política de retry correspondente a cada código.429
As respostas de rate limit usam a categoria
rate_limit e incluem um cabeçalho Retry-After. Faça backoff usando o status HTTP 429 e esse cabeçalho.
