Ir para conteúdo
  • Cadastre-se

dev botao

http 400 na consulta API Itau


Recommended Posts

Boa tarde, estou com uma dificuldade na consulta do boleto pela API ITAU, estou conseguindo registrar normal, mas na colsulta só me retorno http 400

'{"error":{"codigo":"400","mensagem":"Erro na validação de Campos","campos":[{"campo":"view","mensagem":"View inválida","valor":"full"}]}}'

procedure TfrmFfat003a.RetornoAPIItau;
VAR
  vTitulo : TACBrTitulo;
  vDvAge  : String;
begin
  Try
    DmHfat003a.qAPI.First;
    UniProgressBarAPI.Visible  := True;
    UniProgressBarAPI.Min      := 0;
    UniProgressBarAPI.Max      := DmHfat003a.qAPI.RecordCount;
    UniSession.Synchronize;
    UniProgressBarAPI.Position := 0;
    Application.ProcessMessages;
    While DmHfat003a.qAPI.Eof = False do Begin
      ACBrBoleto.Banco.TipoCobranca                          := cobItau;
      ACBrBoleto.Configuracoes.WebService.VersaoDF           := 'V2';
      ACBrBoleto.Configuracoes.WebService.Ambiente           := taHomologacao;
      ACBrBoleto.Configuracoes.WebService.SSLCryptLib        := cryOpenSSL;
      ACBrBoleto.Configuracoes.WebService.SSLHttpLib         := TSSLHttpLib.httpOpenSSL;
      ACBrBoleto.Configuracoes.WebService.SSLType            := TSSLType.LT_TLSv1_2;
      ACBrBoleto.Configuracoes.WebService.UseCertificateHTTP := True;
      ACBrBoleto.Configuracoes.WebService.Operacao           := tpConsultaDetalhe;
      ACBrBoleto.Configuracoes.WebService.Filtro.Clear;
      ACBrBoleto.Configuracoes.WebService.Filtro.indicadorSituacao        := isbNenhum;
      ACBrBoleto.Configuracoes.WebService.Filtro.dataMovimento.DataInicio := Now - 30;
      ACBrBoleto.Configuracoes.WebService.Filtro.dataVencimento.DataFinal := Now;
      ACBrBoleto.Cedente.CedenteWS.ClientID                  := DmHfat003a.Parametros.ClientID;
      ACBrBoleto.Cedente.CedenteWS.ClientSecret              := DmHfat003a.Parametros.ClientSecret;
      ACBrBoleto.Cedente.CedenteWS.KeyUser                   := DmHfat003a.Parametros.DeveloperKey;
      ACBrBoleto.Cedente.CedenteWS.Scope                     := DmHfat003a.Scope.Itau;
      ACBrBoleto.Cedente.CedenteWS.IndicadorPix              := False;
      If ACBrBoleto.Configuracoes.WebService.Ambiente = taProducao Then Begin
        ACBrBoleto.Configuracoes.WebService.Certificado        := DmHfat003a.Parametros.CertificadoChavePem;
        ACBrBoleto.Configuracoes.WebService.ChavePrivada       := DmHfat003a.Parametros.CertificadoChavePrivada;
      End;
      ACBrBoleto.ListadeBoletos.Clear;
      ACBrBoleto.Cedente.Conta         := DmHfat003a.qAPICONTA.AsString;
      ACBrBoleto.Cedente.ContaDigito   := DmHfat003a.qAPIDV_CONTA.AsString;
      ACBrBoleto.Cedente.Agencia       := DmHfat003a.qAPIAGENCIA.AsString;
      ACBrBoleto.Cedente.AgenciaDigito := '0';
      ACBrBoleto.Cedente.Modalidade    := '';
      ACBrBoleto.Cedente.CodigoCedente := DmHfat003a.qAPIAGENCIA.AsString + DmHfat003a.qAPICONTA.AsString + DmHfat003a.qAPIDV_CONTA.AsString;
      vTitulo := ACBrBoleto.CriarTituloNaLista;
      With vTitulo do Begin
        Vencimento        := StrToDateTimeDef(DmHfat003a.qAPIVENCIMENTO.AsString,0);
        DataDocumento     := StrToDateTimeDef(DmHfat003a.qAPIFATURAMENTO.AsString,0);
        NumeroDocumento   := DmHfat003a.qAPINUMERO_INTERNO.AsString;
        EspecieDoc        := 'DM';
        Aceite            := atNao;
        DataProcessamento := Now;
        Carteira          := DmHfat003a.qAPICARTEIRA.AsString;
        NossoNumero       := DmHfat003a.qAPINUMERO_BOLETO.AsString;
        ValorDocumento    := DmHfat003a.qAPIVALOR.AsFloat;
        Sacado.NomeSacado := DmHfat003a.qAPIPAGADOR.AsString;
        Sacado.Logradouro := DmHfat003a.qAPILOGRADOURO.AsString;
        Sacado.Numero     := DmHfat003a.qAPINUMERO.AsString;
        Sacado.Bairro     := DmHfat003a.qAPIBAIRRO.AsString;
        Sacado.CEP        := DmHfat003a.qAPICEP.AsString;
        Sacado.Cidade     := DmHfat003a.qAPICIDADE.AsString;
        Sacado.UF         := DmHfat003a.qAPIESTADO.AsString;
        Sacado.CNPJCPF    := DmHfat003a.qAPICNPJ.AsString;
        ValorDesconto     := DmHfat003a.qAPIDESCONTO.AsFloat;
        PercentualMulta   := DmHfat003a.qAPIMULTA_ATRASO.AsFloat;
        CodigoMoraJuros   := cjValorDia;
      End;
      ACBrBoleto.Cedente.Nome    := DmHfat003a.Parametros.NomeEmpresa;
      ACBrBoleto.Cedente.CNPJCPF := DmHfat003a.Parametros.CNPJEmpresa;
      ACBrBoleto.Enviar;
      dm_rc.rc_ShowSweetAlert('Erro',IntToStr(ACBrBoleto.ListaRetornoWeb[0].HTTPResultCode) + ' - ' +
                                              ACBrBoleto.ListaRetornoWeb[0].DadosRet.TituloRet.CodigoEstadoTituloCobranca + ' - ' +
                                              ACBrBoleto.ListaRetornoWeb[0].DadosRet.TituloRet.EstadoTituloCobranca,
                                              'error');
      UniSession.Synchronize;
      UniProgressBarAPI.Position := UniProgressBarAPI.Position + 1;
      Application.ProcessMessages;
      DmHfat003a.qAPI.Next;
    End;
  Except On E : Exception do
    dm_rc.rc_ShowSweetAlert('Erro',E.Message,'error');
  End;
end;

Link para o comentário
Compartilhar em outros sites

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.