Ir para conteúdo
  • Cadastre-se

dev botao

Contribuição: Integração com banco BTG Pactual


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

Recommended Posts

  • Membros Pro

Precisei adicionar o banco BTG Pactual e estou enviando todos os arquivos que foram alterados para ficar compatível. Já está em produção, foi homologado arquivo remessa/retorno padrão CNAB240.

Para os testes de homologação utilizei o próprio demo do ACBrBoleto, porém, notei que quando ele carrega as configurações que estão salvas no arquivo .ini os componentes em tela referente aos dados do Beneficiário não tinham os seus valores atualizados, e, sempre que gerava um novo .ini acabava perdendo todas essas configurações. Aproveitei e ajustei o demo em Delphi para recuperar essas informações do .ini também.

O arquivo .zip está compactado com a estrutura de pastas que o ACBr utiliza e contém o kit de homologação que a BTG disponibiliza.

Demo_ACBrBoleto.zip FontesBTGPactual.zip Manual_2.zip

Manual fornecido pelo banco

Manual_1.7z

  • Curtir 1
  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

  • Administradores

Obrigado pela contribuição, em breve será validada para possível inclusão ao svn

TK-3050

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Consultores

Boa noite @Luishbr
Foi feito alterações na implementação que foi feita a contribuição.
Pode por favor testar geração dos boletos, arquivos de remessa e tratar o retorno.
Gostariamos de saber se esta tudo ok.
Muito obrigado por ter contribuído.
Fico no aguardo.

ACBrBancoBTGPactual.pas ACBrBoleto.pas

  • Curtir 2
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

Link para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution

Por favor atualize seus fontes, pelo SVN do ACBr... 

Já subimos para o nosso repositório de fontes, modificações que podem corrigir algum dos itens referentes a esse tópico...

Por favor atualize seus fontes, faça testes, e se possível comente em uma nova resposta, se o problema foi resolvido...

Dúvidas, sobre o uso do SVN ?  Clique aqui e veja um vídeo

  • Curtir 1
Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Boa tarde @Daniel InfoCotidiano e @Victor H. Gonzales - Panda

Atualizei os fontes aqui e identifiquei alguns pontos com problemas. Segue o fonte com as correções.

Resumo das alterações que fiz:
1-No arquivo retorno, o layout é praticamente o padrão do Febraban e que está implementado na classe "pai", mas, o BTG retorna na posição 158 do registro "U" a data da liberação e na posição 158 a data real em que foi feito o pagamento do boleto. Então, a única forma que encontrei de tratar isso foi fazendo o override do LerRetorno240.
2-Na geração do código de barras, é necessário considerar o dígito da conta no campo livre
3-No cálculo do dígito do nosso número há uma condição que deve ser utilizada a letra "P" como dígito, nesse caso, fiz um override da CalcularDigitoVerificador
4-No arquivo remessa estava ficando errado o sequencial do lote e a quantidade de registros ao final do lote/trailler tb, pois o registro tipo "S" é opcional. Não é possível usar a fórmula de "QtdTitulos * 2"

As orientações para cálculo do dígito do nosso número não consta no manual que a BTG enviou, mas solicitei ao suporte e enviaram apenas uma planilha excel explicando e exemplificando o cálculo do nosso número. A planilha está em anexo, caso queira colocar junto com o manual no svn.

Obrigado!

ACBrBancoBTGPactual.pas BTG - Calculadora Código de Barras e Digito Nosso Numero.xlsx

Link para o comentário
Compartilhar em outros sites

  • Consultores

Obrigado @Luishbr!
vamos analisar isso. Eles só mandaram esta planilha ou alguma outra documentação além daquela que vc forneceu na postagem anterior??
Abraços !

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

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia,

Enviei na revisão 26983 algumas mudanças referente ao código de barras / linha digitavel, nosso número e remessa.

por favor faça os teste e verifique.

 

Referente a leitura do campo de data, acredito que está havendo um equivoco, o campo está sendo lido conforme a leitura, nesse retorno seu o boleto foi pago no dia 12/09/2022, conforme a leitura da classe, você está tendo algo diferente disto?

 

056 é o dia do fato ocorrido, dia em que o boleto foi liquidado.

C057 é o dia do fato em que o crédito é liberado, D+1, D+2, depende do convenio.

C058 é opcional pela grande maioria dos bancos, principalmente pelos grandes, isso é o dia em que o pagador fez a instrução de pagamento, seja agendamento ou tentativa, mas não é o dia do pagamento, você querer utilizar o C058 vai gerar mais confusão que solução.

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Bom dia @Victor H. Gonzales - Panda

Fiz os testes aqui com essa revisão:

Arquivo remessa: Continua tudo ok!
Linha digitável e código de barras: Continua tudo ok!

Nosso número: Dígito calculado corretamente, porém, na impressão do boleto/geração do PDF, a formatação do campo não está igual à formatação que o banco utiliza. O banco utiliza a formatação "CCC/NNNNNNNNNNN-D", com essa última revisão o componente gerou a formatação "CC/NNNNNNNNNNN-D". Mas essa diferença está apenas no visual do boleto, não gerou nenhum problema com o código de barras ou linha digitável. Acho que pode continuar assim, sem maiores problemas.

Arquivo retorno: Aqui tem o problema da data do pagamento que comentei antes, naquele arquivo retorno que eu tinha enviado por email, o boleto foi pago pelo cliente no dia 09/09/2022 mesmo (confirmei com ele via comprovante) e não no dia 12/09/2022. A única posição que consta essa data de 09/09/2022 no retorno é a C058. Em todas as outras veio como 12/09/2022, que é o dia que o crédito foi liberado na conta. Porém, importar o retorno dessa forma vai gerar vários problemas de pagamentos ocorridos após o vencimento, que não é o caso.

Ex: No caso desse boleto específico que estava no arquivo retorno, o vencimento era dia 10/09, foi pago no dia 09/09 (antecipado), mas se importar usando o C056 como data do pagamento, vai registrar no sistema que o pagamento ocorreu em 12/09 (após o vencimento).

Abraços!

Editado por Luishbr
Link para o comentário
Compartilhar em outros sites

  • Consultores
3 minutos atrás, Luishbr disse:

Bom dia @Victor H. Gonzales - Panda

Fiz os testes aqui com essa revisão:

Arquivo remessa: Continua tudo ok!
Linha digitável e código de barras: Continua tudo ok!

Nosso número: Dígito calculado corretamente, porém, na impressão do boleto/geração do PDF, a formatação do campo não está igual à formatação que o banco utiliza. O banco utiliza a formatação "CCC/NNNNNNNNNNN-D", com essa última revisão o componente gerou a formatação "CC/NNNNNNNNNNN-D". Mas essa diferença está apenas no visual do boleto, não gerou nenhum problema com o código de barras ou linha digitável. Mas, acredito que isso não tem nenhum problema, pois é só a representação visual do campo.

Arquivo retorno: Aqui tem o problema da data do pagamento que comentei antes, naquele arquivo retorno que eu tinha enviado por email, o boleto foi pago pelo cliente no dia 09/09/2022 mesmo (confirmei com ele via comprovante) e não no dia 12/09/2022. A única posição que consta essa data de 09/09/2022 no retorno é a C058. Em todas as outras veio como 12/09/2022, que é o dia que o crédito foi liberado na conta. Porém, importar o retorno dessa forma vai gerar vários problemas de pagamentos ocorridos após o vencimento, que não é o caso.

Ex: No caso desse boleto específico que estava no arquivo retorno, o vencimento era dia 10/09, foi pago no dia 09/09 (antecipado), mas se importar usando o C056 como data do pagamento, vai registrar no sistema que o pagamento ocorreu em 12/09 (após o vencimento).

Abraços!

Bom dia,

envie o comprovante para [email protected] por favor.

pois o que o arquivo de retorno está informando, é que o pagamento foi agendado em 09/09 e só foi debitado (fato consumado) em 12/09. E de outra forma tu chegou entrar em contato com o banco para verificar essa questão deste boleto como está no sistema deles?

10/09 foi sábado, então 12/09 é o primeiro dia útil, está correto o dia que rodou a liquidação bancária se for olhar por esse prisma, e o boleto não estaria vencido, me envie o comprovante do pagamento por favor, e se conseguir as fotos do sistema desse lançamento da compensação desse boleto em questão. (não da ficha, mas do dia que ele caiu na conta do seu cliente, se ele consegue um cadastro detalhado desse boleto no sistema do banco, algo assim)

referente ao nosso número, me envie os 2 arquivos em pdf também por email por favor

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Link para o comentário
Compartilhar em outros sites

  • 4 semanas depois ...
  • Consultores

Por favor atualize seus fontes, pelo SVN do ACBr... 

Já subimos para o nosso repositório de fontes, modificações que podem corrigir algum dos itens referentes a esse tópico...

Por favor atualize seus fontes, faça testes, e se possível comente em uma nova resposta, se o problema foi resolvido...

Dúvidas, sobre o uso do SVN ?  Clique aqui e veja um vídeo

  • Curtir 1
Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...
  • Membros Pro

Bom dia Victor!

Obrigado e desculpe pela demora no retorno.

Já atualizei aqui e pelos testes iniciais só está com algum problema ainda na leitura do nosso número no arquivo retorno, vou fazer novos testes com calma, mas pelo que entendi é pq no arquivo remessa o nosso número é enviado sem o dígito (e isso está correto), porém, no arquivo retorno o BTG retorna ele com o dígito de controle, daí quando o componente processa o arquivo retorno está sendo o nosso número lido está vindo com o dígito de controle.

Link para o comentário
Compartilhar em outros sites

  • 8 meses depois ...
Em 09/12/2022 at 10:23, Luishbr disse:

Bom dia Victor!

Obrigado e desculpe pela demora no retorno.

Já atualizei aqui e pelos testes iniciais só está com algum problema ainda na leitura do nosso número no arquivo retorno, vou fazer novos testes com calma, mas pelo que entendi é pq no arquivo remessa o nosso número é enviado sem o dígito (e isso está correto), porém, no arquivo retorno o BTG retorna ele com o dígito de controle, daí quando o componente processa o arquivo retorno está sendo o nosso número lido está vindo com o dígito de controle.

Boa tarde. Estou com o mesmo problema no nosso número, conseguiu alguma solução?

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Olá Fabiano, boa tarde!

A única solução que consegui foi sobrescrever o método "DefinePosicaoNossoNumeroRetorno" no arquivo referente ao BTG.

Vou anexar aqui o fonte que estou usando, não sei se é uma alteração válida para ser incluída no SVN do projeto @Victor H. Gonzales - Panda

 

ACBrBancoBTGPactual.pas

Link para o comentário
Compartilhar em outros sites

  • Consultores
35 minutos atrás, Luishbr disse:

Olá Fabiano, boa tarde!

A única solução que consegui foi sobrescrever o método "DefinePosicaoNossoNumeroRetorno" no arquivo referente ao BTG.

Vou anexar aqui o fonte que estou usando, não sei se é uma alteração válida para ser incluída no SVN do projeto @Victor H. Gonzales - Panda

 

ACBrBancoBTGPactual.pas 55.16 kB · 0 downloads

envie no email [email protected] a ficha de compensação e o arquivo txt de retorno e vincule ao topico por favor.

obrigado

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Link para o comentário
Compartilhar em outros sites

  • Consultores

Por favor atualize seus fontes, pelo SVN do ACBr... 

Já subimos para o nosso repositório de fontes, modificações que podem corrigir algum dos itens referentes a esse tópico...

Por favor atualize seus fontes, faça testes, e se possível comente em uma nova resposta, se o problema foi resolvido...

Dúvidas, sobre o uso do SVN ?  Clique aqui e veja um vídeo

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Link para o comentário
Compartilhar em outros sites

3 horas atrás, Victor H. Gonzales - Panda disse:

Por favor atualize seus fontes, pelo SVN do ACBr... 

Já subimos para o nosso repositório de fontes, modificações que podem corrigir algum dos itens referentes a esse tópico...

Por favor atualize seus fontes, faça testes, e se possível comente em uma nova resposta, se o problema foi resolvido...

Dúvidas, sobre o uso do SVN ?  Clique aqui e veja um vídeo

Boa tarde Victor.
Não utilizamos fontes aqui, trabalhamos com VB6 em nosso sistema e utilizamos DLLs. Essa alteração como seria possível?

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde,

As DLL são compiladas e disponibilizadas semanalmente para os assinantes (ACBrPRO)

Seja ACBr Pro | Clube de assinantes | Projeto ACBr

na próxima compilação para os assinantes essas modificações já estarão contempladas.

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Link para o comentário
Compartilhar em outros sites

4 minutos atrás, Victor H. Gonzales - Panda disse:

Boa tarde,

As DLL são compiladas e disponibilizadas semanalmente para os assinantes (ACBrPRO)

Seja ACBr Pro | Clube de assinantes | Projeto ACBr

na próxima compilação para os assinantes essas modificações já estarão contempladas.

Sabe me dizer quando será essa compilação? Somos Pro...

Link para o comentário
Compartilhar em outros sites

  • Consultores
2 minutos atrás, Fabiano Ruiz Rossi disse:

Sabe me dizer quando será essa compilação? Somos Pro...

previsão entre hoje / amanhã

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 249 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.