Ir para conteúdo
  • Cadastre-se

dev botao

APi Boleto PIX Sicoob - Não esta tratando as mensagens de Erro corretamente


Ver Solução Respondido por danilozix,
  • Este tópico foi criado há 412 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Bom dia, 

utilizando a api do boleto do Sicoob na versão V2 não esta tratando os erros, praticamente esta ignorando, a lista de rejeição esta vindo vazia. Esta sendo retornado o código 207 quando na verdade deveria ser um 400. 

Segue abaixo um exemplo de erro que esta sendo ignorado.

Fonte atualizado 01-07-2024

{
   "resultado":[
      {
         "status":{
            "codigo":400,
            "mensagem":"J\u00e1 existe boleto cadastrado com n\u00famero 106418-0 para o benefici\u00e1rio."
         },
         "boleto":{
            "numeroContrato":151742,
            "modalidade":1,
            "numeroContaCorrente":37737,
            "nossoNumero":1064180,
            "seuNumero":"097976\/A",
            "especieDocumento":"DM",
            "dataEmissao":"2024-06-26T00:00:00-03:00",
            "valor":85,
            "dataVencimento":"2024-07-05T00:00:00-03:00",
            "tipoDesconto":0,
            "valorMulta":2,
            "valorJurosMora":0.02805,
            "numeroParcela":1,
            "aceite":false,
            "pagador":{
               "nome":"PREMIATTA CARNES E AGROPECUARIA LTDA",
               "numeroCpfCnpj":"07272815000179",
               "endereco":"RODOVIA BR 365 KM 470 SEM NUMERO",
               "bairro":"ZONA RURAL",
               "cidade":"PATROCINIO",
               "cep":"38740000",
               "uf":"MG"
            },
            "mensagensInstrucao":{
               "tipoInstrucao":1,
               "mensagens":[
                  "00",
                  "00",
                  "00"
               ]
            },
            "identificacaoBoletoEmpresa":"01064180",
            "tipoJurosMora":1,
            "dataJurosMora":"2024-07-06T00:00:00-03:00",
            "tipoMulta":2,
            "dataMulta":"2024-07-06T00:00:00-03:00",
            "identificacaoEmissaoBoleto":2,
            "identificacaoDistribuicaoBoleto":2,
            "gerarPdf":false,
            "codigoCadastrarPIX":1
         }
      }
   ]
}

 

Postado
12 minutos atrás, Juliomar Marchetti disse:

Se habilitar o log do componente vai notar que ele trás todas as mensagens pra ti

Habilitei para ver, veio dessa forma. Não informa qual o erro do boleto. Esta no modo completo do log.

 

02/07/24 10:02:32:323 - Autenticando Token... 
02/07/24 10:02:32:323 - Comando Enviar: TOAuth
02/07/24 10:02:32:323 - URL: [POST] https://auth.sicoob.com.br/auth/realms/cooperado/protocol/openid-connect/token
02/07/24 10:02:32:595 - Validade: 02/07/2024 10:07:32
02/07/24 10:02:32:596 - Comando Enviar: TBoletoW_Bancoob
02/07/24 10:02:32:596 - Comando Enviar: [{"numeroContrato":151742,"modalidade":1,"numeroContaCorrente":37737,"especieDocumento":"DM","dataEmissao":"2024-06-26T00:00:00-03:00","nossoNumero":1064180,"seuNumero":"097976\/A","identificacaoBoletoEmpresa":"01064180","identificacaoEmissaoBoleto":2,"identificacaoDistribuicaoBoleto":2,"valor":85,"dataVencimento":"2024-07-05T00:00:00-03:00","numeroParcela":1,"aceite":false,"tipoDesconto":0,"tipoJurosMora":1,"dataJurosMora":"2024-07-06T00:00:00-03:00","valorJurosMora":0.02805,"tipoMulta":2,"dataMulta":"2024-07-06T00:00:00-03:00","valorMulta":2,"pagador":{"numeroCpfCnpj":"07272815000179","nome":"PREMIATTA CARNES E AGROPECUARIA LTDA","endereco":"RODOVIA BR 365 KM 470 SEM NUMERO","bairro":"ZONA RURAL","cidade":"PATROCINIO","cep":"38740000","uf":"MG"},"mensagensInstrucao":{"tipoInstrucao":1,"mensagens":["00","00","00"]},"gerarPdf":false,"codigoCadastrarPIX":1}]
02/07/24 10:02:32:596 - URL: [POST] https://api.sicoob.com.br/cobranca-bancaria/v2/boletos
02/07/24 10:02:32:906 - Retorno Envio: TBoletoW_Bancoob
02/07/24 10:02:32:906 - Código do Envio: 207 1.1 Undefined

 

  • Solution
Postado

@Juliomar Marchetti Consegui resolver comentando a condição onde verificava o httpResultCode >=300

 

       // if HTTPResultCode >= 300 then
       // begin
          if LJson.IsJSONArray('resultado') then
          begin
            LJsonViolacoesArray := LJson.AsJSONArray['resultado'];
            for x := 0 to LJsonViolacoesArray.Count-1 do
            begin
              LJsonViolacao := LJsonViolacoesArray.ItemAsJSONObject[x];
              if (LJsonViolacao.AsJSONObject['status'].AsString['codigo'] <> '200') then
              begin
                LRejeicao            := ARetornoWS.CriarRejeicaoLista;
                LRejeicao.Codigo     := LJsonViolacao.AsJSONObject['status'].AsString['codigo'];
                LRejeicao.mensagem   := LJsonViolacao.AsJSONObject['status'].AsString['mensagem'];
              end;
            end;
          end;
        //end;

 

Postado
40 minutos atrás, Juliomar Marchetti disse:

Está configurado para a V3 a versão?

pois a V1 e V2 não servem mais

Estou usando na versão V2 ainda.

Fiz a alteração na unit ACBrBoletoRet_Bancoob

Postado

No caso para utilizar a versão V3 vai ter q fazer o credenciamento novamente no Sicoob certo ?

6 minutos atrás, danilozix disse:

Estou usando na versão V2 ainda.

Fiz a alteração na unit ACBrBoletoRet_Bancoob

 

47 minutos atrás, Juliomar Marchetti disse:

Está configurado para a V3 a versão?

pois a V1 e V2 não servem mais

 

Postado (editado)
3 minutos atrás, Juliomar Marchetti disse:

eu não lembro se precisa ou se já muda sozinho pois está descontinuado a V2

Eu fiz o teste aqui, se colocar como versão V3 da erro de autorização, no portal do Sicoob as URL estão com versão V2, então no caso vai ter que refazer o credenciamento para utilizar a V3. Por enquanto vou deixar na versão V2 mesmo. Com essa correção já deu certo, se aparecer mais algum cliente novo já faço o teste com a nova versão. Pode finalizar o tópico.

Obs: Fiz o teste direto em produção

Editado por danilozix
  • Este tópico foi criado há 412 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...