Ir para conteúdo
  • Cadastre-se

dev botao

Alteração na leitura do código de autorização em ACBrTEFDCliSiTef.pas


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

Recommended Posts

Postado

Boa Tarde.

Gostaria de verificar a possibilidade de alteração no fonte ACBrTEFDCliSiTef.pas quanto ao retorno da informação do código de autorização da transação. Recebemos a reclamação de alguns clientes que ao conciliar o extrato da operadora com as informações do sistema o código da autorização não coincidia com as informações do extrato.

Avaliando o manual de integração do SiTef, neste indica que o código de autorização é retornado como TipoCampo 135, porém na implementação atual o código é lido do TipoCampo 133, que pelo manual corresponde a informação de NSU do Host autorizador.

Anexo deixo a alteração que fiz no fonte para avaliação, bem como o trecho do manual que exemplifica os campos, se puderem verificar e subir a alteração caso não tenha maiores problemas.

Matheus.

manual_sitef.PNG

ACBrTEFDCliSiTef.pas

  • Curtir 1
  • Obrigado 1
  • Consultores
Postado
1 hora atrás, Matheus disse:

Boa Tarde.

Gostaria de verificar a possibilidade de alteração no fonte ACBrTEFDCliSiTef.pas quanto ao retorno da informação do código de autorização da transação. Recebemos a reclamação de alguns clientes que ao conciliar o extrato da operadora com as informações do sistema o código da autorização não coincidia com as informações do extrato.

Avaliando o manual de integração do SiTef, neste indica que o código de autorização é retornado como TipoCampo 135, porém na implementação atual o código é lido do TipoCampo 133, que pelo manual corresponde a informação de NSU do Host autorizador.

Anexo deixo a alteração que fiz no fonte para avaliação, bem como o trecho do manual que exemplifica os campos, se puderem verificar e subir a alteração caso não tenha maiores problemas.

Matheus.

manual_sitef.PNG

ACBrTEFDCliSiTef.pas 67 kB · 0 downloads

Olá Matheus,

Muito obrigado pela contribuição.
Conferi aqui no manual do SiTef e me parece que está correta sua afirmação.
Subi as alterações para o SVN na Revisão  17441.
Queira por favor atualizar, testar e reportar qualquer problema.

Mais uma vez obrigado.

  • Curtir 2

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • 2 semanas depois ...
Postado

Bom dia!

Realizei uns testes aqui e percebi que quando realiza uma transação no débito a variável 'CodigoAutorizacaoTransacao' fica em branco! Acho que esse campo 135 é apenas para operações de crédito. Para débito retorna em branco!

Postado

Bom, eu coloquei aqui a mesma informação no campo 133 e 135 na procedure ConteudoToProperty e ambos retornaram as informações. Quando for crédito irá ler o campo 135 e quando for débito o campo 133. Se deixar apenas no campo 135 não irá retornar o CodigoAutorizacaoTransacao! Se puderem analisar...

ACBrTEFDCliSiTef.pas

  • Curtir 1
  • 2 semanas depois ...
  • Consultores
Postado
Em 20/08/2019 at 16:07, FSoftware disse:

Bom, eu coloquei aqui a mesma informação no campo 133 e 135 na procedure ConteudoToProperty e ambos retornaram as informações. Quando for crédito irá ler o campo 135 e quando for débito o campo 133. Se deixar apenas no campo 135 não irá retornar o CodigoAutorizacaoTransacao! Se puderem analisar...

ACBrTEFDCliSiTef.pas 67 kB · 1 download

Analisar isso está na minha lista de afazeres.

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • Consultores
  • Solution
Postado
Em 20/08/2019 at 16:07, FSoftware disse:

Bom, eu coloquei aqui a mesma informação no campo 133 e 135 na procedure ConteudoToProperty e ambos retornaram as informações. Quando for crédito irá ler o campo 135 e quando for débito o campo 133. Se deixar apenas no campo 135 não irá retornar o CodigoAutorizacaoTransacao! Se puderem analisar...

ACBrTEFDCliSiTef.pas 67 kB · 2 downloads

Não sei se você se atentou a descrição do campo, mas me parece que só existe código autorização quando é crédito mesmo. Veja Campo "135 - Contém o Código de Autorização para as transações de crédito (15 posições no máximo)".

Já o campo 133, por sua própria descrição "Contém o NSU do SiTef (6 posições)" não é código de autorização. Me parece ser outro campo que não é atualmente tratado pelo ACBrTEFD.

Existe algum outro motivo que você pense que a alteração seja necessária?

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Postado
20 horas atrás, EMBarbosa disse:

Existe algum outro motivo que você pense que a alteração seja necessária?

Eu pensava que na NFC-e, na tag cAut, iria esse campo e usava assim no sistema 🤔 Irei pegar então o campo NSU! 

  • Curtir 1
  • Consultores
Postado
2 horas atrás, FSoftware disse:

Eu pensava que na NFC-e, na tag cAut, iria esse campo e usava assim no sistema 🤔 Irei pegar então o campo NSU! 

Me parece que o campo cAut é o NSU do Host (campo 134 de 20 posições) e não o NSU do SiTef (campo 133 de 6 posições) e também não é o código autorização para as transações de crédito (campo 135 de 15 posições).

Eu sugiro verificar com a Software Express/Skytef/Representante Sitef.

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • 4 semanas depois ...
Postado

Senhores, bom dia. Utilizando o '*.pas' postado em 

por OSMCVL o problema foi resolvido. Mas a solução ainda não foi incorporada ao ACBr... Quando baixei uma nova versão o problema retornou...

  • Consultores
Postado
Em 03/10/2019 at 09:59, ALA disse:

Senhores, bom dia. Utilizando o '*.pas' postado em 

por OSMCVL o problema foi resolvido. Mas a solução ainda não foi incorporada ao ACBr... Quando baixei uma nova versão o problema retornou...

As alterações do OSMCVL não estão relacionadas a esse problema e sim a coletar CPF pelo pinpad para NFP.

Por favor, leia novamente o que eu escrevi desde o princípio sobre o motivo do campo não estar mais no ACBrTEFD...

 

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • 3 semanas depois ...
Postado

Pessoal, bom dia. A alteração postada aqui ainda não foi incorporada no ACBr. Gostaria de saber se a mesma será incorporada ? Estava com problema com cartão de debito do banco original e cartão alimentação de algumas prefeituras. Consegui resolver o problema utilizando o '.pas' postado aqui. Foi incluido apenas uma linha. No caso dos cartoes que mencionei o campo ACBrTEFD.Resp.CodigoAutorizacaoTransacao estava vindo vazio, dessa forma a transação estava aprovado mas a minha aplicação não consegui finalizar a venda...

image.png.437ca56e08623db3abcb3845be47736a.png

  • Consultores
Postado
3 horas atrás, ALA disse:

Pessoal, bom dia. A alteração postada aqui ainda não foi incorporada no ACBr. Gostaria de saber se a mesma será incorporada ? Estava com problema com cartão de debito do banco original e cartão alimentação de algumas prefeituras. Consegui resolver o problema utilizando o '.pas' postado aqui. Foi incluido apenas uma linha. No caso dos cartoes que mencionei o campo ACBrTEFD.Resp.CodigoAutorizacaoTransacao estava vindo vazio, dessa forma a transação estava aprovado mas a minha aplicação não consegui finalizar a venda...

image.png.437ca56e08623db3abcb3845be47736a.png

Oi ALA,

   Me parece que ou seu arquivo está desatualizado ou você está confundindo as coisas. Se for o segundo caso acho que precisa ler esse tópico com calma e desde o início.

   Veja bem, esse é o código atual conforme a implementação no início do tópico:

       131 : fpInstituicao                 := LinStr;
       132 : fpCodigoBandeiraPadrao        := LinStr;
       135 : fpCodigoAutorizacaoTransacao  := Linha.Informacao.AsString;
       134 : fpNSU                         := LinStr;
       136 : fpBin                         := Linha.Informacao.AsString;
       139 : fpValorEntradaCDC             := Linha.Informacao.AsFloat;

   Note por favor que esse código 133 foi removido porque o manual de integração do SiTef indica que o "código de autorização" é retornado como TipoCampo 135. Mas o TipoCampo 133, no manual corresponde a informação de NSU do Host autorizador.

   Então, se são campos diferentes, não podemos jogá-los na mesma propriedade.

  

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Postado (editado)

EMBarbosa, obrigado pela resposta. O problema é, quando utilizou alguns cartões conforme mencionei o campo ACBrTEFD.Resp.CodigoAutorizacaoTransacao esta vazio, apos incluir o código que o   OSMCVL postou, o campo passou a ser preenchido para todos os tipos de cartões..

Qual dos campos abaixo posso utilizar para verificar se a transação foi aprovada ou não ? Estava utilizando apenas a ACBrTEFD.Resp.CodigoAutorizacaoTransacao mas nesse caso especifico este campo esta vazio, dessa forma a transação era aprovada no TEF mas a minha aplicação não finalizava a venda.

      sTEFAutorizacao          := ACBrTEFD.Resp.NFCeSAT.Autorizacao;
      sTEFCodAutorizacao := ACBrTEFD.Resp.CodigoAutorizacaoTransacao;

Então realizei um ajuste nos fontes do ACBr e alterei a forma de tratar o retorno na minha aplicação, ficou assim.

image.thumb.png.c759af6f348f87eeab40491c1764fbf9.png

image.thumb.png.6fc771b397578311d46f2de60bf8dd01.png

Editado por ALA
  • Consultores
Postado
2 horas atrás, ALA disse:

Qual dos campos abaixo posso utilizar para verificar se a transação foi aprovada ou não ? Estava utilizando apenas a ACBrTEFD.Resp.CodigoAutorizacaoTransacao mas nesse caso especifico este campo esta vazio, dessa forma a transação era aprovada no TEF mas a minha aplicação não finalizava a venda.

Ahh... mas se você está querendo saber se a transação foi aprovada porque não valida o retorno da função ACBrTEFD1.CRT?

Ou se você quiser saber depois que ela já aconteceu, porque não ACBrTEFD.Resp.TransacaoAprovada?

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • Este tópico foi criado há 1856 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.