Ir para conteúdo
  • Cadastre-se

dev botao

ACBRBOLETO : DÚVIDAS : Atributo : Observacao e Informação de : NossoNúmero


Ver Solução Respondido por Carmo,

Recommended Posts

  • Membros Pro
Postado

Companheiros

Boa Tarde!

Gostaria de propor 2 novas questões sobre implementação com o AcbrBoleto da rotina de envio das Duplicatas à API do Banco para Cobrança.

1)-Atributo : OBSERVAÇÃO :
Notei que no Arquivo-Retorno existe um Atributo chamado "Observacao" e que pode retornar com informação bem importante para entendimento das condições em que Duplicata foi registrada no Banco.
Exemplo :
  "observacao":"Boleto registrado com sucesso, porém o campo e-mail está com formato inválido e o boleto não será enviado ao pagador."

Como posso acessar este ATributo : Observacao utilizando as propriedades do AcbrBoleto ?

2)-Propriedade : Titulo.NossoNumero :
Constatei que esta propriedade : Titulo.NossoNumero é String e aceita somente 10 caracteres.
Assim, estou preenchendo ela com um campo numérico que corresponde a um Sequencial do Boleto na Conta Bancária e informando zeros à esquerda.
Isto ocorre no momento da transmissão da Duplicata!

Depois da transmissão da Duplicata, toda vez que eu quizer imprimir o Boleto, devo sempre proceder desta forma : informando o Número Sequencial do Boleto de forma alfanumérica ?
( Pergunto isto porque após a transmissão o Banco já enviou o Nosso Número completo calculado ).

Grato pela ajuda

  • Consultores
Postado

@Carmo
Boa tarde !
Você está utilizando Componentes (delphi/lazarus) , Acbrlib ou AcbrmonitorPlus ?

1 hora atrás, Carmo disse:

Notei que no Arquivo-Retorno existe um Atributo chamado "Observacao"

Qual arquivo de retorno, pode anexar este arquivo q consta a Observação ?

1 hora atrás, Carmo disse:

Constatei que esta propriedade : Titulo.NossoNumero é String e aceita somente 10 caracteres.

Por padrao, funciona da seguinte forma:
vc informa a sequencia 1..2..3..4 e ele concatena conforme cada banco.
Exemplo BB API:

00234300001-6  (Cedente + NossoNumero + DV)


Sicredi

25200001 -6 (Ano+Byte+NossoNumero+DV)


Sendo assim, ele concatena e envia , na inclusão, na consulta, etc.
Caso tenha problema para localizar o titulo devolvido, preencha tb o campo SeuNumero.
No retorno ele vai devolver o SeuNumero para que vc possa identifica-lo

 

Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

  • Membros Pro
Postado

Este Atributo "observacao" vem na seguinte estrutura do Log :

29/01/25 16:53:15:443 - Retorno Envio: {"beneficiario":{"agencia":452,"contaCorrente":123873,"tipoEndereco":1,"logradouro":"Rua Teste 10","bairro":"TAGUATINGA NORTE","cidade":"BRASILIA","codigoCidade":2000,"uf":"DF","cep":72145760,"indicadorComprovacao":"0"},"qrCode":{"url":"Erro ao gerar QRCODE Pix: O campo Data vencimento não é válido.","txId":"Pix não registrado","emv":""},"numero":"00031285570000041877","numeroCarteira":17,"numeroVariacaoCarteira":35,"codigoCliente":704950857,"linhaDigitavel":"00190000090312855700000041877176199260000061000","codigoBarraNumerico":"00191992600000610000000003128557000004187717","numeroContratoCobranca":19581316,"observacao":"Boleto registrado com sucesso, porém o campo e-mail está com formato inválido e o boleto não será enviado ao pagador."}
 

 

  • Consultores
Postado
16 horas atrás, Carmo disse:

Perdão, esqueci de mencionar : Estou utilizando Delphi com o componente AcbrBoleto.

Q isso, qual o banco que está trabalhando?
A principio no Delphi , se observar no exemplo temos:
 

        //Ler todos os campos da classe Retorno
        SLRemessa.Add('Cod_Retorno='+ Boleto.ListaRetornoWeb[i].CodRetorno + sLineBreak +
                      'Msg_Retorno='+ Boleto.ListaRetornoWeb[i].MsgRetorno + sLineBreak +
                      'Ori_Retorno='+ Boleto.ListaRetornoWeb[i].OriRetorno + sLineBreak +
                      'HTTP_Result='+ IntToStr(Boleto.ListaRetornoWeb[i].HTTPResultCode) + sLineBreak +
                      'JSON='+ Boleto.ListaRetornoWeb[i].JSON);
         for j:= 0 to Pred(Boleto.ListaRetornoWeb[i].ListaRejeicao.Count) do
         begin
           SLRemessa.Add('[Rejeicao'   +IntToStr(j)+']' + sLineBreak +
                         'Campo='      + Boleto.ListaRetornoWeb[i].ListaRejeicao[j].Campo + sLineBreak +
                         'Codigo='     + Boleto.ListaRetornoWeb[i].ListaRejeicao[j].Codigo + sLineBreak +
                         'Versao='     + Boleto.ListaRetornoWeb[i].ListaRejeicao[j].Versao + sLineBreak +
                         'Mensagem='   + Boleto.ListaRetornoWeb[i].ListaRejeicao[j].Mensagem + sLineBreak +
                         'Ocorrencia=' + Boleto.ListaRetornoWeb[i].ListaRejeicao[j].Ocorrencia + sLineBreak +
                         'Valor='      + Boleto.ListaRetornoWeb[i].ListaRejeicao[j].Valor + sLineBreak );
         end;

Era p devolver na lista de retorno.
Consegue testar com o programa exemplo, observe que apos a inclusao, ele gera um arquivo TXT de retorno dos campos para fim de exemplo.
Se abrir este retorno, a propriedade mensagem nao está preenchida com esta obs?
Pode realizar o teste com o programa exemplo por favor

 

Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

  • Membros Pro
  • Solution
Postado

Sr.Daniel

Desculpe pela demora em responder.
Eu tive alguns contratempos aqui .

Eu efetuei diversos testes em homologação e constatei que no Arquivo JSon de Retorno sempre vem este Atributo "observacao" sempre é informado.
Acredito que é interessante ter esta informação no Banco de Dados.
Assim eu consegui recuperar esta informação diretamente do Arquivo JSon.

Por favor, podem fechar este tópico.

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...