Ir para conteúdo
  • Cadastre-se

dev botao

API ITAÚ - Alterações necessárias


Eficaz Sistemas
Ver Solução Respondido por Victor H. Gonzales - Panda,

Recommended Posts

  • Membros Pro

Boa tarde, estou fazendo a homologação com o ITAU via API, e alguns detalhes precisaram ser alterados nas units do ACBR para que funcionasse.

 

Na unit ACBrBoletoW_Itau_API foi necessário alterar 2 constantes, sendo elas a URL de homologação e o tipo de Authorization, segundo o manual https://devportal.itau.com.br/nossas-apis/itau-ep9-gtw-cash-management-ext-v2

 

C_URL_HOM = 'https://devportal.itau.com.br/sandboxapi/cash_management_ext_v2/v2';

tem que ser

C_URL_HOM = 'https://sandbox.devportal.itau.com.br/itau-ep9-gtw-cash-management-ext-v2/v2';

 

C_AUTHORIZATION_HOM = 'x-sandbox-token';

tem que ser

C_AUTHORIZATION_HOM = 'Authorization';

 

Sem essas alterações, estava retornando o erro de "Token inválida ou expirada", mesmo a token sendo gerada corretamente.

Print da unit ACBrBoletoWS.Rest com as constantes erradas:

image.thumb.png.e43b4b0c214552eb10c405ccc96e2f40.png

Print da unit ACBrBoletoWS.Rest com as constantes corretas:

image.thumb.png.6bf45ab629d90c2f500dd80ef242f5cb.png

Obs: Todos esses dados são fictícios gera

Já na unit ACBrBoletoRet_Itau_API existe um erro de lógica na função "Ler Retorno", a atribuição da variável HTTPResultCode(Variável Global) para a variável ARetornoWS.HTTPResultCode está acontecendo dentro de um 'with' com o próprio ARetornoWS, então ele está atribuindo o valor dele à ele mesmo, em vez do valor da variável global.

image.thumb.png.e780215a24f125eb5b9a5ed6f5edf86c.png

apenas removi essa linha de dentro do 'with' e meu problema foi resolvido

image.thumb.png.0f1dcaaca224493174d83e3ded662a1f.png

 

Editado por Eficaz Sistemas
adicionas mais imagens
Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde,

Criada a TK-4887 para avaliação.

Obrigado pela contribuição.

Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

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

 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Como conversado, achei mais algumas alterações que foram necessárias na unit ACBrBoletoRet_Itau_API.

A função LerRetorno está aparentemente errada, porém a LerListaRetorno está certa, como o retorno do banco, independente se é tpConsulta ou tpConsultaDetalhe, o retorno é um array
Porém somente a função LerListaRetorno, tenta transformar em um array antes de começar a leitura.
Já a função LerRetorno, tenta passar diretamente o valor sem transformar em um array antes, o que faz com que nunca seja lido valor nenhum.

ACBrBoletoRet_Itau_API.pas

Segue anexo minha unit depois das alterações necessárias

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Boa tarde, mais um detalhe que eu encontrei, na linha 

ARetornoWS.DadosRet.TituloRet.ValorDocumento       := AJSonObject.Values['valor_titulo'].AsNumber;

AJSonObject seria o objeto pai, o que faz com que o valor não seja encontrado :

1.thumb.png.dde7aac4ba842d0e5250218bc13ed7aa.png

o correto seria:
ARetornoWS.DadosRet.TituloRet.ValorDocumento       := Values['valor_titulo'].AsNumber;

image.thumb.png.48f4d21bd340c9d3ef12965518773118.png

 

Segue anexo novamene a unit com a alteração:

ACBrBoletoRet_Itau_API.pas

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Mais um detalhe, as linhas 

ARetornoWS.DadosRet.TituloRet.ValorPago            := StrToFloatDef( Values['valor_pago_total_cobranca'].AsString, 0) / 100;

tem que ser

ARetornoWS.DadosRet.TituloRet.ValorPago            := Values['valor_pago_total_cobranca'].AsNumber;

A linha do jeito que está hoje, está fazendo com que o ValorPago fique zero.

 

Segue anexo Unit com todas alterações:

ACBrBoletoRet_Itau_API.pas

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

  • Consultores

@Eficaz Sistemas,

Se preferir fazer todos os ajustes e homologar com o banco primeiro. Depois você nos informa se está tudo ok e fazemos o ajustes com o arquivo com todas as alterações já homologadas pelo banco.

Pode ser? Você nos informa aqui no topico quando estiver tudo ok.

  • Curtir 1
Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

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

 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
26 minutos atrás, Alexandre de Paula disse:

@Eficaz Sistemas,

Se preferir fazer todos os ajustes e homologar com o banco primeiro. Depois você nos informa se está tudo ok e fazemos o ajustes com o arquivo com todas as alterações já homologadas pelo banco.

Pode ser? Você nos informa aqui no topico quando estiver tudo ok.

Essas foram todas as modificações que eu achei, fiz o teste em homologação assim e tudo parece OK, não tenho mais nenhuma alteração pendente e já encerrei a minha tarefa.

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

  • Consultores

Maravilha! Obrigado mais uma vez pela contribuição.

Assim que tivermos uma atualização da tarefa aqui do nosso lado será informado aqui no tópico!

Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

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

 

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

@Eficaz Sistemas
Boa tarde !
Primeiramente gostaria de agradecer pela grande colaboração. Isso é muito importante para a comunidade.
Vi que vc fez bastantes alterações e como Itau é um banco muito utilizado e preciso de algumas informações, espero que me entenda, pois não podemos quebrar quem  já está em produção.

Em produção você chegou a realizar testes os testes com as suas modificações ?
Como citei acima precisamos ter cautela para não quebrar quem já utiliza a ferramenta em produção.

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

  • Membros Pro
Em 26/12/2023 at 13:13, Daniel InfoCotidiano disse:

@Eficaz Sistemas
Boa tarde !
Primeiramente gostaria de agradecer pela grande colaboração. Isso é muito importante para a comunidade.
Vi que vc fez bastantes alterações e como Itau é um banco muito utilizado e preciso de algumas informações, espero que me entenda, pois não podemos quebrar quem  já está em produção.

Em produção você chegou a realizar testes os testes com as suas modificações ?
Como citei acima precisamos ter cautela para não quebrar quem já utiliza a ferramenta em produção.

Olá, infelizmente não testei em Produção pois não temos os dados para isso no momento, os testes foram feitos somente via Homologação

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Consultores

@Eficaz Sistemas Bom dia !
Minhas credenciais do Ítau pararam de funcionar estou aguardando a verificação do suporte.
Será que pode me passar as suas credenciais de homologação e dados utilizados para autenticação,  para que eu realize os testes necessários ?
Caso positivo, favor enviar para [email protected] no corpo do email, colar o link deste post.
Se testou com o programa exemplo, so me mandar o INI, acho q para testes nao precisa das keys do certificado. (se eles não mudaram)
 

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

  • Administradores

Tópico fechado por falta de retorno do usuário

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

  • Consultores

Para lhe posicionar.
Em produção é diferente o retorno da inclusão de títulos.
Ajustado consulta detalhe tbm.
Fizemos uma correção e enviamos para o SVN,  atualize e rode o instalador.
 

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

  • Membros Pro

Bom dia Daniel, tudo bem?

Após atualização do SVN e instalação do componente a consulta e consultaDetalhe passou a retornar erro 'Stream read error' (Itaú) conforme anexo.

Não esta gerando nenhuma informação no log.

O registro do boleto continua normal, apenas a consulta que passou a gerar essa mensagem de erro.

 

SegueErroConsulta.png.79d3892328ee2786d00de7780cc5ccc5.png

 

Acredito que possa ser em decorrencia das mudanças realizadas nesse tópico.

Caso precise de credencias para testes no Itau posso lhe enviar

 

Att

Ralty

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia @ralty
Envie por favor as credenciais, dados da conta e keys necessarias para [email protected]
No corpo da mensagem favor colocar o link desta postagem


acabei de realizar os testes aqui em ambientes homologacao e nao tive este erro.


Screenshot_78.png

 

 

Screenshot_77.png

 

Screenshot_76.png

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

  • 2 semanas depois ...
  • Consultores

@ralty
Bom dia !
Apos minha ultima postagem (acima) enviei um email sobre endpoint e scope do itau. vi que você entro em contato com eles.
Mas tem alguma posição sobre isso?
Teve retorno?

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

  • Membros Pro

Bom dia

Nenhum retorno ainda, reclamei via e-mail com todos os contatos do Itaú e recebi uma resposta padrão.

image.thumb.png.d6f7057b13a8e74c56c7c2013f6233c1.png

 

O Cliente já tentou contato porem sem sucesso até o momento, irá tentar contato novamente e caso não obtivermos sucesso infelizmente não será possível realizar a a consulta de boletos.

Ralty

Link para o comentário
Compartilhar em outros sites

  • Consultores

Será que não é só o escopo de consulta q nao esta habilitado na conta deste cliente?
manual diz:

"Scopes Para que o cliente consiga acessar nossa API de consulta de títulos, na hora do cadastro da aplicação consumidora no portal de certificados de parceiro, deve ser adicionado o scope/funcionalidade: boletoscash-boletos-consulta_titulo"

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

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
Agora, ralty disse:

Bom dia

@Daniel InfoCotidiano

O Itaú não confirmou ainda se o cliente possúe o scopo de consulta.

@Victor H. Gonzales - Panda

Atualizei o svn e a consulta continua com o mesmo erro (tpConsultaDetalhe)

 

image.thumb.png.b9bec506cc73f704f894f8a54ccc315e.png

Voce está com as credenciais corretas ?

Credenciais de emissão de PIX não consome consulta, como vice-versa como foi debatido em outros foruns.

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

@ralty
Bom dia !
Por favor, coloque um ponto de parada no ACBrBoleto1.Enviar para debug, veja se o problema esta nele ou em outra linha do tratamento do retorno por favor.
 

Por favor, teste com o programa exemplo para ver se este erro ocorre, assim como temos ele em comum, podemos debugar aqui.
mas lembrando, conforme enviamos o print anteriormente, este erro nao aconteceu em meus testes.

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

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.