Ir para conteúdo
  • Cadastre-se

dev botao

API BANCO INTER V3


Recommended Posts

  • Consultores
4 minutos atrás, Antonio Gomes disse:

Esse trecho marcado, so existe, no retorno da consulta apos eu ter a solicitacao: o erro ocorre ali na linha LJsonObjectItem.AsJSONObject['boleto'].

Perfeito, um usuario ficou de me enviar as credenciais para que possamos testar.
Vou adiantar isso e aguardar as credenciais.

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

7 minutos atrás, Antonio Gomes disse:

Sim, pois ainda está tentando pegar dados de boleto, sem poder...

Esse trecho marcado, so existe, no retorno da consulta apos eu ter a solicitacao: o erro ocorre ali na linha LJsonObjectItem.AsJSONObject['boleto'].

image.thumb.png.472396b29b45a36c527d8a12560e6514.png

Retorno do enviar (primeiro comando)

image.thumb.png.656e4c1c97b7fa9c5c3805fcf486b102.png

 

E na consulta detalhe, eu passo esse numero ali, a partir dai, sim, terei o objeto boleto.

 

entendi sua ideia, deixar o app controlar o primeiro envio, e eu ter o recibo (codigosolicitacao) a partir dai, eu consulto, entao, vou comentar aquela tentativa ali de ler o retorno do boleto, pois ele so tem, quando operacao = consultar

Tbm pensei em automatizar a consulta, mas acabei desistindo. Pego o codigosolicitacao e depois faço a consulta detalhada.

Link para o comentário
Compartilhar em outros sites

58 minutos atrás, Daniel InfoCotidiano disse:

Perfeito, um usuario ficou de me enviar as credenciais para que possamos testar.
Vou adiantar isso e aguardar as credenciais.

Daniel, tem algo a mais que eu preciso olhar, no leitor de json base?

olha isso: Nao acha o elemento

image.thumb.png.f107b7bc7fd809f9a126a7cadc365472.png

Link para o comentário
Compartilhar em outros sites

1 hora atrás, Gabriel Mororó disse:

Tbm pensei em automatizar a consulta, mas acabei desistindo. Pego o codigosolicitacao e depois faço a consulta detalhada.

Então Gabriel, ela não sendo sincrono, até daria, no modulo de NF-e, tem um negocio lá, do delay entre transmissão e pedido de retorno do lote.
mas como não sabemos o comportamento dessa api do inter, estou mudando a logica minha, para fazer posterior, o chato, é ter que implementar no emissor de boleto, um "buscar retorno"... usuario pode cair no esquecimento, desse posterior, ou, a gente implantar isso via robô.

Link para o comentário
Compartilhar em outros sites

Finalizado os ajustes:

Notei que: a url do pix, existem 3 casos:

   property EMV: String read Femv write Femv; // inter está aqui
    property UrlPix: String read FurlPix write FurlPix; // nao carrega aqui c

Achei confuso, pq tem os 2?

Testado envio v2 e v3 ok

Cancelamento: v2 e v3.ACBrBoletoRet_Inter_API.pasACBrBoletoW_Inter_API.pas

baixa, será testado no cliente, não tenho como fazer no momento, mas, havendo divergência, e o fonte estiver ok, eu corrijo.

Sobre o erro do parse que o json ficava vazio, era o create, e parse logo apos, é preciso dar o parse direto, sem o create...

Segue fontes anexo
 

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

  • Consultores

Bom dia @Antonio Gomes
Vou verificar com as credenciais enviadas de outro usuario.
Se mudar algo envio aqui p vc, muito obrigado por testar com suas credenciais.

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

3 horas atrás, Daniel InfoCotidiano disse:

Bom dia @Antonio Gomes
Vou verificar com as credenciais enviadas de outro usuario.
Se mudar algo envio aqui p vc, muito obrigado por testar com suas credenciais.

a propósito, o modo de usar, implementei ao meu modo, nao automatizei o componente, segue como dica para quem for trocar:

// Anterior
        LCodigoSolicitacaoTmp := PCodigoSolicitacao;
        AMsgErro              := '';
        LFlagEnviar           := True;

        if (FDSServBanc.FieldByName('API_CONS_APOS_INCLUIR_SER').AsString = 'S') and (PCodigoSolicitacao <> '') then // inter v3
        begin
          // Se deu erro anterior, mas gravou o recibo de solicitacao, consultar - inter tem isso = se ja foi enviado, nao pode mandar de novo
          Boleto.Configuracoes.WebService.Operacao := TOperacao.tpConsultaDetalhe;
          Boleto.Enviar;
          AMsgErro    := LerRetornoDeAPI(Boleto);
          LFlagEnviar := False; // não enviar de novo
        end;

        // TODOS DEMAIS BANCOS, interv2 ou interv3, se nao tiver ainda o recibo
        if (AMsgErro = '') and LFlagEnviar then
        begin
          Boleto.Configuracoes.WebService.Operacao := TOperacao.tpInclui;
          Boleto.Enviar;
          AMsgErro := LerRetornoDeAPI(Boleto);
        end;

        // esperar entre transmissao
        if LFlagEnviar and (FDSServBanc.FieldByName('API_CONS_APOS_INCLUIR_SER').AsString = 'S') and
         (FDSServBanc.FieldByName('API_TEMPO_CONS_SER').AsInteger > 0) then
        begin
          Sleep(FDSServBanc.FieldByName('API_TEMPO_CONS_SER').AsInteger);
        end;

        // inter: Se antes nao tinha solicitacao, agora tem, e ainda nao pegou o retorno do boleto, pegar
        if (AMsgErro = '') and (FDSServBanc.FieldByName('API_CONS_APOS_INCLUIR_SER').AsString = 'S') and // inter v3
         (LCodigoSolicitacaoTmp = '') and (PCodigoSolicitacao <> '') then
        begin
          Boleto.Configuracoes.WebService.Operacao := TOperacao.tpConsultaDetalhe;
          Boleto.Enviar;
          AMsgErro := LerRetornoDeAPI(Boleto);
        end;

 

Aberto a sugestões de melhoras no codigo, a função LerRetornoDeAPI só avalia o vetor de erros e muda as variaveis de retorno, tipo "PCodigoSolicitacao" , se teve recusa, já deixei no meu sistema o modo sleep, tipo tem la na nfe, caso api comece a ficar lenta.

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

  • Consultores
5 minutos atrás, Antonio Gomes disse:

Conseguiu analisar o fonte ali em cima?

Bom dia !
So estamos fazendo alguns testes para consulta automatica qdo pix, provavelmente subimos esta semana.

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

Bom dia !
Segue anexo a alteração API com boleto híbrido para testes.
Para V3( cobranca pix) Informar o IndicadorPIX.
Ele vai alimentar a propriedade NossoNumeroCorrespondente (titulo.NossoNumeroCorrespondente) com o codigodeSolicitação devolvida pelo banco.
Guarde o valor desta propriedade NossoNumeroCorrespondente para futuras consultas e cancelamento da versao PIX;
Quando vc realiza a inclusão com indicador PIX, ele identifica codigodeSolicitação  e consulta utilizando NossoNumeroCorrespondente e devolve a consulta detalhe do titulo.
lembrando, como existem 2 APIS, qdo estiver marcada Indicador pix, Inclusao e consulta vai ser realizada na API PIX. desmarcada permenece a original, sem pix.

InterAPIQrCode.zip

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

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.