Pular para o conteúdo principal
Formato de erro A API do SPI retorna erros como problem details da RFC 9457, com o media type application/problem+json:
Definições de campo
  • type – Um URI que identifica o erro no catálogo de erros da Lerian, construído como https://errors.lerian.studio/v1/<code>.
  • title – O texto do status HTTP (por exemplo, Unprocessable Entity).
  • status – O código de status HTTP.
  • detail – Uma explicação legível para essa ocorrência. O texto varia conforme a ocorrência, então decida com base em code.
  • code – Um identificador estável para a condição. Essa API usa dois vocabulários aqui: os próprios códigos SPI-NNNN do trilho, e os tokens do diretório de chaves Pix descritos mais adiante.
  • errors – Lista opcional de detalhes de validação por campo, cada um com uma message, uma location e o value responsável.
  • correlationId – O identificador de correlação da requisição. Cite esse valor em uma solicitação de suporte.
Para respostas 5xx, o trilho substitui detail por internal error, então as causas internas ficam de fora. Use code para decidir de forma programática.

Códigos do trilho


Os códigos SPI-NNNN nomeiam condições que o próprio trilho SPI julga. O dígito após o prefixo os agrupa: 0 entrada, 1 transporte do trilho, 2 autorização, 3 processamento, 4 taxa e cota, 9 fallback. Um código pode carregar mais de um status quando a condição que ele nomeia tem mais de uma forma nesse trilho. SPI-1002 significa que o BACEN recusou a mensagem quando o trilho a enviou. Um pagamento recusado vai para REJECTED. O BACEN também pode recusar um pagamento depois, na sua resposta de status (pacs.002). Essa recusa não é um erro HTTP, e o pagamento vai para REJECTED. Para descobrir quais pagamentos a rede recusou, leia o relatório de pagamentos rejeitados. Ele lista cada um por status e end-to-end id.

400: Requisição inválida


401: Não autenticado


403: Proibido


404: Não encontrado


409: Conflito


413: Payload muito grande


422: Não processável


429: Muitas requisições


500: Erro do servidor


501: Não implementado


502: Gateway inválido


503: Serviço indisponível


Esses códigos nomeiam condições de dependência. Recue e tente novamente.

504: Timeout do gateway


Tokens do diretório de chaves Pix


O diretório de chaves Pix mantém seu próprio vocabulário de erro, e o trilho o repassa. Uma recusa do diretório chega até você com o próprio token do diretório em code e o próprio status HTTP do diretório em status. O URI type carrega o mesmo token como seu último segmento. Esse vocabulário pertence ao diretório, então trate-o como aberto. Trate um token que você não reconhece pelo seu status, e leia o próprio token como o motivo. As tabelas abaixo listam tokens do diretório para registro de chave, consulta de chave, exclusão de chave e as operações de reivindicação.
Uma recusa de limitação de taxa do diretório chega até você como SPI-4001 com HTTP 429. Quando o diretório prescreveu uma espera, a resposta a carrega em Retry-After. Veja os códigos do trilho acima.

Geral


Registro de chave


Reivindicações de chave


Rejeições de arquivo BR Code


O canal de arquivo em lote do BR Code responde a uma remessa enviada em um arquivo de retorno. Uma linha recusada carrega um código de rejeição de três dígitos. Ela também carrega o nome do campo e a descrição que o esquema Pix publica para esse código. Um arquivo recusado carrega um código, e nenhuma linha dele é julgada. Sua conciliação mapeia a resposta contra a própria planilha de erros do esquema. 063 (Cadastro, Cliente nao cadastrado) recusa o arquivo inteiro: o header do arquivo nomeia um recebedor para o qual esse deploy não tem um perfil registrado. 096 (Registro, Inválido) diz que o esquema não publica um código mais específico para o campo responsável. Um registro de tamanho errado é um desses casos. Mais quatro cobrem os dois identificadores que a maioria das linhas carrega. 012 (Chave pix, Chave inválida) diz que a linha cobra em uma chave Pix para a qual esse deploy não tem um recebedor registrado. 014 (Chave pix, Não é compatível com o cnpj ou agência e conta informada) nomeia uma chave registrada para outro recebedor. O header do arquivo resolve para um diferente. 016 (Identificador (txid), Em duplicidade) diz que o txid se repete. 017 (Identificador (txid), Inválido ou não encontrado) diz que o txid está malformado ou nomeia uma cobrança que esse trilho não possui. A planilha de erros do esquema publica muito mais códigos. O canal renderiza o subconjunto sobre o qual suas próprias recusas mapeiam. Cada linha recusada nomeia seu campo, então leia o nome do campo primeiro e o código depois.