Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 149 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á 149 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.