Ir para conteúdo
  • Cadastre-se

dev botao

API Cobrança Itaú - Consulta Detalhes


Ver Solução Respondido por Juliomar Marchetti,

Recommended Posts

Postado

1. O Json que o ACBr está retornando na consulta detalhes de um título não está trazendo as informações de liquidação do título (bloco abaixo)

 "pagamentos_cobranca": [
                    {
                        "numero_agencia_recebedora": "5749",
                        "data_inclusao_pagamento": "2024-08-23T09:42:28",
                        "valor_pago_total_cobranca": "336.35",
                        "codigo_instituicao_financeira_pagamento": "1",
                        "descricao_canal_pagamento": "3",
                        "descricao_meio_pagamento": "2",
                        "valor_pago_desconto_cobranca": "9.36",
                        "valor_pago_multa_cobranca": "0.00",
                        "valor_pago_juro_cobranca": "0.00",
                        "valor_pago_abatimento_cobranca": "0.00"
                    }
                ],

O Itaú explicou, testei e realmente o problema é que o parâmetro view tem de ser igual à "specific" e não "full" como está no ACBr (linha 339 de ACBrBoletoW_Itau_API).

Já fiz a modificação, segue o fonte (.pas) para sua análise e atualização.

2. Tem como verificar o tópico aberto em relação à movimentação da API do Itaú? 

 

 

 

ACBrBoletoW_Itau_API.pas

Postado

O ACBr já fez a atualização ontem mesmo (24/09/2024).

Uma última coisa em relação à esta pesquisa que não entendi.
Se informo IndicadorPix = true a consulta retorna retorna vazia com o erro "Não o foi possível processar essa requisição. Por favor, procure a documentação da API.". Log em anexo.
Se informo IndicadorPix = false a consulta retorna Ok. Log em anexo.

Mas o Get é o mesmo, independente do IndicadorPix. Eu achei que a informação de IndicadorPix só tinha influencia na hora de registrar o boleto, não na hora de consultar.
De qualquer forma mesmo consultando os boletos que foram registrados com Pix se informo IndicadorPix = true dá o erro na consulta.

dim - consulta com erro.txt dim - consulta Ok.txt

Postado (editado)

O que identifiquei é que quando informo IndicadorPix = true, o ACBr seta o x-itau-apikey e quando = false não seta, conforme imagem do fonte do ACBr abaixo.
Imagino que esse x-itau-apikey (que é o client_id) seja obrigatório na consulta, ao menos no postman é, independente de IndicadorPix.

procedure TBoletoW_Itau_API.DefinirKeyUser;
begin
  if Boleto.Cedente.CedenteWS.IndicadorPix and Assigned(ATitulo) then
      FPKeyUser := 'x-itau-correlationID: ' + Boleto.Cedente.CedenteWS.ClientID
  else
  begin
    FPHeaders.Add('x-itau-apikey: ' + Boleto.Cedente.CedenteWS.ClientID);
    FPHeaders.Add('x-itau-correlationID: ' + Boleto.Cedente.CedenteWS.ClientID);
  end;
end;

No Log da consulta Ok onde IndicadorPix = false -> 
x-itau-apikey: dcb6c030-717e-4af6-82f3-7ab80987deb4
x-itau-correlationID: dcb6c030-717e-4af6-82f3-7ab80987deb4

No Log da consulta com erro onde IndicadorPix = true ->
x-itau-correlationID: dcb6c030-717e-4af6-82f3-7ab80987deb4

Editado por Luciano Rodrigues Pereira
Postado

Aliás, é o contrário, quando IndicadorPix = true não seta o x-itau-apikey, só seta quando IndicadorPix = false
Outra coisa, não encontrei essa variável FPKeyUser em lugar nenhum no fonte, só mesmo nesta linha aí.

O fato é que o x-itau-apikey é obrigatório, independente do IndicadorPix. Ou não? Pelo ou menos quando seto IndicadorPix = false (é setado o x-itau-apikey) a consulta ocorre de boa e quando seto IndicadorPix = true (não é setado o x-itau-apikey) a consulta dá o erro mencionado.

  • Moderadores
Postado
18 horas atrás, Luciano Rodrigues Pereira disse:

Aliás, é o contrário, quando IndicadorPix = true não seta o x-itau-apikey, só seta quando IndicadorPix = false
Outra coisa, não encontrei essa variável FPKeyUser em lugar nenhum no fonte, só mesmo nesta linha aí.

O fato é que o x-itau-apikey é obrigatório, independente do IndicadorPix. Ou não? Pelo ou menos quando seto IndicadorPix = false (é setado o x-itau-apikey) a consulta ocorre de boa e quando seto IndicadorPix = true (não é setado o x-itau-apikey) a consulta dá o erro mencionado.

faz a mudança pra testar

mas acho que deve consultar a documentação da API deles para verificar se é obrigatorio ou não

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

Já consultei o manual e falei com o suporte do Itaú, o parâmetro é obrigatório. Tanto que eu só consigo consultar se informar o mesmo.
Para fazer o teste eu só fiz IndicadorPix = true, aí desta forma ele não seta o x-itau-apikey e dá o erro na consulta. Quanto eu faço IndicadorPix = false, ele seta o x_itau_apikey e a consulta é realizada com sucesso. Entendeu?

Fiz conforme abaixo (retirei o else apenas). Mantive as 2 primeiras linhas, porque não sei para que serve este FPKeyUser, afinal ele não é usado em lugar nenhum no fonte, ele nem foi declarado neste fonte.

procedure TBoletoW_Itau_API.DefinirKeyUser;
begin
  if Boleto.Cedente.CedenteWS.IndicadorPix and Assigned(ATitulo) then
    FPKeyUser := 'x-itau-correlationID: ' + Boleto.Cedente.CedenteWS.ClientID;
  FPHeaders.Add('x-itau-apikey: ' + Boleto.Cedente.CedenteWS.ClientID);
  FPHeaders.Add('x-itau-correlationID: ' + Boleto.Cedente.CedenteWS.ClientID);
end;

Estou anexando o .pas, caso queiram aproveitar, caso contrário, vocês mesmos podem fazer a alteração. 

image.thumb.png.963ed85ea6f6d808eb038a91d2e10fb9.png

 

image.thumb.png.0bfbdea0a45c11dd1390d3a6d72944ba.png

 

ACBrBoletoW_Itau_API.pas

  • Moderadores
Postado
38 minutos atrás, Luciano Rodrigues Pereira disse:

porque não sei para que serve este FPKeyUser, afinal ele não é usado em lugar nenhum no fonte, ele nem foi declarado neste fonte.

nem nos demais arquivos que fazem a herança ali?

38 minutos atrás, Luciano Rodrigues Pereira disse:

Estou anexando o .pas, caso queiram aproveitar, caso contrário, vocês mesmos podem fazer a alteração. 

tá já testado em homologação e produção funcionando em ambos? com pix e sem pix?

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

1. O FPKeyUser está declarado e em uso em ACBrBoletoWS.Rest

procedure TBoletoWSREST.Executar;
    if FPKeyUser <> '' then
      LHeaders.Add(FPKeyUser);

Como está o ACBrBoletoWS_Itau_API vai definir o "x-itau-correlationID" 2 vezes, pois o FPKeyUser só vai mandar adicionar o x-itau-correlationID no header, o que jé está sendo adicionado logo abaixo na minha alteração, por isso vou alterar novamente. 
O IndicadorPix só importa no registro do boleto, em mais nada. Na própria documentação do Itaú, o que ele chama de BoleCode só tem a requisição de registro de boleto, todas as outras requisições: alteração, consulta, baixa, etc., está na outra documentação de cobrança.

2. Já testei em homologação e produção com e sem pix e está funcionando perfeitamente. Vou partir agora para os testes de baixa, alteração de vencimento e consulta de movimento. A consulta de movimento não está funcionando no ACBr (existe outro tópico com o assunto).
 

Postado

Eu me esqueci de anexar o fonte corrigido.
Se quiserem testar para verificarem que como está no ACBr se você for trabalhar com QRCode (IndicadorPix = true) vai ver que a consulta dá erro, posso fornecer as credenciais para seus testes.
Como já explicado esse IndicadorPix só interessa na hora de registrar o boleto e o x-itau-apikey é obrigatório também na consulta como mostra a documentação em anexo neste tópico.

ACBrBoletoW_Itau_API.pas

  • Moderadores
  • Solution
Postado
2 horas atrás, Luciano Rodrigues Pereira disse:

Eu me esqueci de anexar o fonte corrigido.
Se quiserem testar para verificarem que como está no ACBr se você for trabalhar com QRCode (IndicadorPix = true) vai ver que a consulta dá erro, posso fornecer as credenciais para seus testes.
Como já explicado esse IndicadorPix só interessa na hora de registrar o boleto e o x-itau-apikey é obrigatório também na consulta como mostra a documentação em anexo neste tópico.

ACBrBoletoW_Itau_API.pas 44.52 kB · 0 downloads

No svn

favor testar e reportar

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

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.