Jump to content

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png click.png click.png

doidopb

Membros Pro
  • Posts

    1,153
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by doidopb

  1. Oi Galera... Beleza? Então @Italo Giurizzato Junior e @José M. S. Junior , erro estranho né?!?!? Eu realmente não sabia que tinha que informar o cAut. Informando o mesmo foi de boa, mas concordo com vocês que deveria ter dado erro nas duas. Isso me gerou 2 outras dúvidas: 1 - Homologuei meu TEF na PayGo com vocês, para preencher a tag cAut eu devo ler de ACBrTEFAPI1.UltimaRespostaTEF.CodigoAutorizacaoTransacao? 2 - Até então só usava POS e NUNCA preenchi no código a tag tpIntegra, mas a mesma sempre constou no XML com o valor 2. O componente preenche a mesma automaticamente quando não informada em ambiente de Produção? Se sim, em homologação não está preenchendo. Desde já agradeço a atenção de todos
  2. Olá a todos, Estou tentando enviar NFCe preenchendo os dados da adquirente do cartão de crédito no grupo card. Mas está acontecendo algo muito estranho, quando envio com mais de uma forma de pagamento funciona sem problemas, mas quando existe apenas 1 forma de pagamento ele dá a rejeição "não informados os dados da operacao de pagamento por cartao de credito/debito", mesmo estando preenchido no XML. Segue em anexo um XML autorizado sem problemas (com mais de uma forma de pagamento) e outro rejeitado (com apenas uma forma de pagamento). 33210921747355000119650030000023311919987869-nfe.xml rejeitado.xml
  3. Olá a todos, Vi esse componente na guia de TEF. Qual a proposta do mesmo?
  4. Putz... Que brabo hein... Não sei o que é esse Roteamento por Bandeiras, mas a questão das várias adquirentes eu passei aqui na Homologação da PayGoWeb, pois toda hora perguntava Demo ou Rede. Seria interessante TAMBÉM uma opção no componente para fixar a adquirente (ai eu conseguiria colocar isso por forma de pagamento), caso o cliente queira!
  5. Eu só fiquei com uma dúvida... Eu não tinha me atentado até agora a esse fato que o ACBrTEFAPI1.DiretorioTrabalho não tem nada a ver com o Diretório de Trabalho da PayGo e usei como se fosse tudo a mesma coisa. Porque então a PayGoWeb sempre foi instalada nesse diretório que eu especificava em ACBrTEFAPI1.DiretorioTrabalho (C:\PayGoWEB)?
  6. Então... Minhas formas de pagamento no PDV eram hardcode, mas como precisava implantar o TEF eu deixei flexível, agora o cliente cadastra os tipos de pagamento que ele quer que apareça no fechamento da venda. Ficou bem legal, pois ele pode definir também se aquela forma de pagamento chama o TEF, quais as modalidades (credito, debito) e o financiamento (para alimentar o componente). Seria legal se tivesse modalidades separadas para cada tipo de carteira virtual, aí poderia cadastrar PIX modalidade PIX, PicPay modalidade PicPay e por ai vai. Igual é no cartão, o cliente cadastra CARTÃO CREDITO e vincula a modalidade Crédito, o mesmo para o Cartão de Débito. Aparecer um menu perguntando a qual carteira digital não ficaria muito legal, pois o cliente já cadastrou por exemplo PicPay e então ele seria perguntado dinovo ao chamar o TEF, além do mais isso possibilitaria o operador escolher errado e perder tempo.
  7. Oi Daniel, beleza? Mas se eu quisesse vender pelo MercadoPago ou PicPay? Depois que ativasse eles nas adquirentes, eu alimentaria o componente com qual modalidade?
  8. Olá a todos, Surgiu uma dúvida aqui. Quando estiver em produção, se o cliente quiser usar PIX, Mercado Pago e PicPay no PayGoWeb, por exemplo, como faz? Pois só existe a modalidade Carteira Virtual no componente, que em Homologação usa o PIX, isso no TEFAPI.
  9. Olá a todos, O @Daniel Simoes cita no vídeo abaixo (minuto 13:13) para não confundir a propriedade DiretorioTrabalho do componente TEFAPI com o diretório de trabalho da PayGoWEB. E no Demo do TEFAPI diz que para definir o diretório de trabalho da PayGoWeb devemos usar: // -- Exemplo de como ajustar o diretório de Trabalho, da PayGoWeb -- // (* if (ACBrTEFAPI1.TEF is TACBrTEFAPIClassPayGoWeb) then TACBrTEFAPIClassPayGoWeb(ACBrTEFAPI1.TEF).DiretorioTrabalho := 'C:\PAYGOWEB'; *) Fiquei na dúvida... O código acima não tem o mesmo efeito de se colocar o "c:\paygoweb" direto na propriedade DiretorioTrabalho do componente TEFAPI?
  10. Sim, eu testei... Mas por algum motivo o RespostaTEF.NSUTransacaoCancelada sempre retorna igual a vazio. Não sei se é outra limitação da adquirente Demo.
  11. Sim, mas eu estava fazendo confusão, pois ele faz essa busca no arquivo de backup que é zerado a cada nova transação. Eu achava que ele ficava sempre lá pra eu buscar quando quisesse. Aí eu estava querendo usar isso para verificar o CNPJ e Bandeira usados para informar na emissão do NFCe, agora eu estou salvando no banco antes. Se bem que agora eu percebi que deveria funcionar, pois se eu acabei de emitir a nota o arquivo de backup ainda não foi zerado.
  12. Então... Eu estou entrando nesse mundo do TEF agora e quero padronizar o máximo possível. O meu medo é em uma adquirente ser de um jeito e depois em produção descobrir que em outra muda algo importante. Como ficaria uma verificação semelhante no evento QuandoFinalizarOperacao?
  13. Olá a todos, No componente TEFAPI para capturarmos os dados da Bandeira do cartão é usado ACBrTEFAPI1.UltimaRespostaTEF.NFCeSAT.Bandeira; Mas a propriedade tPag recebe valores apenas do tipo TpcnBandeiraCartao, enquanto a função acima retorna um string. Eu encontrei um exemplo de preenchimento da bandeira do cartão na NFCe no Demo POSTEF. Bandeira := LowerCase(Trim(ATEFResp.NFCeSAT.Bandeira)); // Pega apenas a Perimeira Palavra p := pos(' ',Bandeira); if (p > 0) then Bandeira := copy(Bandeira,1, p-1); if (pos('visa',Bandeira) = 1) then APag.tBand := bcVisa else if (pos('mastercard',Bandeira) = 1) then APag.tBand := bcMasterCard else if (pos('american',Bandeira) = 1) or (pos('amex',Bandeira) = 1) then APag.tBand := bcAmericanExpress else if (pos('sorocred',Bandeira) = 1) then APag.tBand := bcSorocred else if (pos('diners',Bandeira) = 1) then APag.tBand := bcDinersClub else if (pos('elo',Bandeira) = 1) then APag.tBand := bcElo else if (pos('hipercard',Bandeira) = 1) then APag.tBand := bcHipercard else if (pos('aura',Bandeira) = 1) then APag.tBand := bcAura else if (pos('cabal',Bandeira) = 1) then APag.tBand := bcCabal else APag.tBand := bcOutros; Esse é o código sugerido mesmo ou no TEFAPI tem algum outro jeito novo?
  14. Oi meu amigo, Eu tentei UltimaRespostaTEF.REF e UltimaRespostaTEF.NFCeSAT.REF, mas nada? Qual seria então? Mas agora que homologuei vi que a Rede usa o termo Comprovante que tem o mesmo número do NSU, isso em Homologação, aí não sei se devo gravar ou não, pois não segue um padrão.
  15. Vdd meu amigo... Olhei o vídeo com calma agora e achei. Na verdade fui olhar outro vídeo e me embolou, foi o vídeo abaixo: Mas descartem isso, basta usar: ACBrTEFAPI1.UltimaRespostaTEF.NFCeSAT.CNPJCredenciadora; ACBrTEFAPI1.UltimaRespostaTEF.NFCeSAT.Bandeira;
  16. É verdade, eu estava fazendo confusão, achei que as informações ficavam direto, mas realmente devo gravar no banco para recuperar depois. Valeu
  17. Olá meu amigo, sempre me socorrendo, kkkkkkkkkkkk É, meu conhecimento em TEF é zero como eu disse no início de minha homologação com a PayGo, mas se é isso então beleza. Mas é bom aguardarmos, pois o @Daniel Simoes estava falando comigo no Discord ontem e disse que ia dar uma verificada nesse comportamento. Eu estranhei porque ele até criou um tópico sobre detectar o Cancelamento Via ADM, e logo na hora de testar e programar isso não funcionou. Acho que ele não criaria esse tópico se não funcionasse em homologação, mas aí só ele mesmo pode confirmar.
  18. Ok, mas como capturou ele? Não tem nada similar no Demo
  19. Oi Juliomar... Exato, esse é o problema, como eu disse acima usando o DEMO o código não funciona como está documentado.
  20. Perder tempo sem chance kkkkkkkkk então isso não irá influenciar na compilação não né?!?!?! Minha preocupação é essa, de resto tranquilow... A princípio tá tudo normal aqui
  21. Sim sim... Mas esse bug é normal acontecer? Acontece contigo também?
  22. Olá a todos, No Demo do TEFAPI é mostrado como detectar uma transação de cancelamento de pagamento através do menu administrativo. Tal detecção se dá no evento QuandoFinalizarTransacao, mas especificamente no código abaixo: procedure TFormPrincipal.ACBrTEFAPI1QuandoFinalizarTransacao( RespostaTEF: TACBrTEFResp; AStatus: TACBrTEFStatusTransacao); var Atualizou, Sucesso: Boolean; begin ...... codigo cortado..... else if (RespostaTEF.Header = CHEADER_ADMINISTRATIVA) then // <----- AQUI -------- begin if Sucesso then begin // https://www.projetoacbr.com.br/forum/topic/61001-como-detectar-se-em-uma-transa%C3%A7%C3%A3o-adm-houve-um-cancelamento/ if (RespostaTEF.NSUTransacaoCancelada <> '') and (RespostaTEF.ImagemComprovante1aVia.Count > 0) then begin Atualizou := Venda.Pagamentos.CancelarPagamento( RespostaTEF.Rede, RespostaTEF.NSU, RespostaTEF.ValorTotal); end; end; end; if Atualizou then AtualizarPagamentosVendaNaInterface; end; A grande questão é que quando se cancela um pagamento, via adm, na adquirente DEMO, tal evento nem é disparado. Já na adquirente Rede o evento acima é disparado e tal código funciona, descobri isso testando o roteiro de homologação que é com a Rede. Porque isso ocorre?
  23. Olá a todos, Estou com 2 dúvidas sobre o cancelamento de pagamento no TEF API setado para PayGoWeb. 1ª - No Demo tem a linha: ACBrTEFAPI1.FinalizarTransacao( AResp.Rede, AResp.NSU, AResp.Finalizacao, tefstsErroDiverso ); Esse comando pelo que vi é o que envia o cancelamento a uma operação de pagamento, isso está correto? 2ª - Outra dúvida, estou testando o cancelamento, e ele sempre pedi o REF... Eu observei na impressão que sai esse REF, mas estou imaginando se não seria interessante gravar isso no banco, caso perca essa impressão ou dê erro na mesma. Como eu faço então para capturar esse REF?
  24. Olá a todos, Estou tentando reproduzir a função AcharTransacaoTEF do Demo. Após efetuar os pagamentos, eu salvo os dados Rede e NSU no banco. Aí com a função citada acima tento recuperar os dados da transação. Mas na linha abaixo sempre retorna 0: ACBrTEFAPI1.RespostasTEF.AcharTransacao(rede, nsu); Não é assim que funciona? Tenho que informar algo além da Rede e NSU?
  25. Olá a todos, Estou tentando adaptar o código do POSTEF para o ACBrTEFAPI, na parte de captura dos dados da credenciadora e bandeira. Mas estou meio empacado. No Demo do POSTEF ele usa duas procedores, a DeduzirCredenciadoraNFCe e DeduzirBandeiraNFCe. Nas mesmas usa dois parametros, um pagamento e uma resposta TEF. Aí que empaquei, a resposta TEF ele pega de ACBrPOS1, mas no caso do ACBrTEFAPI ele pegaria de onde? Vamos supor que eu pague com 3 cartões e finalize a venda, de onde ele pegaria tais respostas? Desde já agradeço a atenção
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.