Ir para conteúdo
  • Cadastre-se

dev botao

PIX, Sitef Qrcode PINPAD


Ver Solução Respondido por Thiago.Rod,
  • Este tópico foi criado há 722 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Ola amigos, estou com um problema usando em produção com PIX e sitef pelo PINPAD.

Depois que é mostrado o Qrcode no pinpad, caso o cliente desista, e queira pagar com um cartao DEB/CRED o processo que o operador precisa fazer é interromper com a tecla ESC essa operação, e continuar com outra modalidade,

o problema é que quando é carteira digital (PIX) a tecla ESC para abortar(interromper) nao esta funcionando, fica uns 2 minutos a contagem e só depois disso que para o processo. 

Fazendo o mesmo processo pelo TEFDemo em producao acontece a mesma coisa.

Lembrando isso só esta acontecendo com carteira digital no caso aqui o PIX. fora isso o fluxo esta normal com outras modalidade pelo TEF.

Alguem ja passou por este problema?

 

Link para o comentário
Compartilhar em outros sites

34 minutos atrás, Juliomar Marchetti disse:

Consegue anexar o log do ACBrTEFD?

Bom dia, sim vou por anexo, fiz esse teste usando o Demo em produçao com PPC930.

Teclei ESC umas 3 ou 4 vez mas nao interrompe o processo. so depois de alguns minutos estoura a msg que esta na foto em anexo tmb.

Screenshot_1.png

 

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

5 minutos atrás, André Ferreira de Moraes disse:

Vc precisa ajustar o evento ACBrTEFD1AguardaResp para permitir interromper qdo o campo Arquivo for 23 ou 52.

Opa André, pode me dar uma dica

 

procedure TFormPrincipal.ACBrTEFD1AguardaResp(Arquivo: String;
  SegundosTimeOut: Integer; var Interromper: Boolean);
var
  Msg : String ;
begin
  if FCanceladoPeloOperador then
  begin
    FCanceladoPeloOperador := False;
    Interromper := True ;
    Exit;
  end;

  Msg := '' ;
  if (ACBrTEFD1.GPAtual in [gpCliSiTef, gpVeSPague, gpPayGoWeb]) then   // É TEF dedicado ?
   begin
     if (Arquivo = '23') and ACBrTEFD1.TecladoBloqueado then  // Está aguardando Pin-Pad ?
     begin
       // Desbloqueia o Teclado
       ACBrTEFD1.BloquearMouseTeclado(False);
       // Ajusta Interface para Espera do TEF, com opçao de cancelamento pelo Operador
       StatusVenda := stsAguardandoTEF;

       Msg := 'Aguardando Resposta do Pinpad.  Pressione <ESC> para Cancelar';
       FCanceladoPeloOperador := False;
     end;
   end
  else if FTempoDeEspera <> SegundosTimeOut then
  begin
     Msg := 'Aguardando: '+Arquivo+' '+IntToStr(SegundosTimeOut) ;
     FTempoDeEspera := SegundosTimeOut;
  end;

  if Msg <> '' then
    AdicionarLinhaLog(Msg);

  Application.ProcessMessages;
end;


Onde posso fazer o teste aqui ??? 

Link para o comentário
Compartilhar em outros sites

2 minutos atrás, André Ferreira de Moraes disse:

Vc tem q debugar a função e ver pq não está entrando nessa condição.

Nao consigo debugar da este erro ma hora de abrir o gerTEF, nao deixa que coisa loco hoje... alguma ideia do porque disso?

Screenshot_1.png

Screenshot_2.png

Link para o comentário
Compartilhar em outros sites

14 minutos atrás, DSilva disse:

Nao consigo debugar da este erro ma hora de abrir o gerTEF, nao deixa que coisa loco hoje... alguma ideia do porque disso?

Screenshot_1.png

Screenshot_2.png

Andre, coloquei um showmessage, e descobri que ele nem entra, nao passa por la.... quando é Carteira Digital, pois fazendo com cartao normal ai sim ele passsa pelo evento.

'' ACBrTEFD1AguardaResp(Arquivo: String;
  SegundosTimeOut: Integer; var Interromper: Boolean); ''

 

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Talvez, por estar exibindo o qrcode no pinpad, o cancelamento só funcione direto no pinpad. Faça um teste exibindo o qrcode na tela e veja se o interromper funciona.

djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.lambretinha.com.br
Link para o comentário
Compartilhar em outros sites

1 hora atrás, André Ferreira de Moraes disse:

Talvez, por estar exibindo o qrcode no pinpad, o cancelamento só funcione direto no pinpad. Faça um teste exibindo o qrcode na tela e veja se o interromper funciona.

Boa tare, pessoal, os teste que estou fazendo é pelo PINPAD, quando aparece o Qrcpde nele e o cliente resolve desistir o operador tecla o ESC para interromper o processo e isso nao ocorre,

so lembrando os amigos estou fazendo teste em produção com SitefDemo.

eu ainda nao concegui resolver peço se tem alguem com este mesmo proplema por favor uma ajudinha seria bem vindo.. abraço.

Link para o comentário
Compartilhar em outros sites

14 minutos atrás, Juliomar Marchetti disse:

veja ele pediu para tu testar somente exibindo na aplicação e não no pinpad pra gente ter um norte.

Opa, ok, ja estava fazendo teste, nao tinha implementado para mostrar na tela, mas fiz no proprio Demo, o log e imagem anexo..

Obs: Com Qrcode na tela ao Teclar ESC ele entra no evento do componente.

Screenshot_1.png

LogTEF.txt

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

Em 25/06/2021 at 13:47, DSilva disse:

Opa, ok, ja estava fazendo teste, nao tinha implementado para mostrar na tela, mas fiz no proprio Demo, o log e imagem anexo..

Obs: Com Qrcode na tela ao Teclar ESC ele entra no evento do componente.

Screenshot_1.png

LogTEF.txt 6 kB · 1 download

Andre, tudo bem! descobriu alguma coisa referente a esse problema de interromper ?

Link para o comentário
Compartilhar em outros sites

  • Moderadores
19 minutos atrás, DSilva disse:

Andre, tudo bem! descobriu alguma coisa referente a esse problema de interromper ?

viu mas faz você que tem acesso. eu não tenho o ambiente de testes deles. coloca o debug e mete bronca

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

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

 

Link para o comentário
Compartilhar em outros sites

  • Solution
Em 28/06/2021 at 17:04, DSilva disse:

Andre, tudo bem! descobriu alguma coisa referente a esse problema de interromper ?

Olá amigo, consegui mandar corretamente fazendo o cancelamento no evento ACBrTEFDAguardaResp.

No método que retorna o valor 52 sempre passa o parâmetro Interromper := False.

No evento faça:

 if (Arquivo = '52') and (not Interromper) then 

Interromper := True;

...

Para mim funcionou, espero que lhe ajude também.

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

  • 3 meses depois ...
  • 5 meses depois ...
  • Este tópico foi criado há 722 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.