Membros Pro SIDesenvolvimento Postado 3 Junho Membros Pro Postado 3 Junho Saudações a todos! Estamos em processo de adaptação do sistema para o SiTef e de homologação e o suporte deles incou as seguintes questões: 1) O número do cupom fiscal fica repetido após o lançamento de algum pagamento: 2) Ao enviar o estorno de um pagamento o sistema abre um menu. Fui questionado pelo suporte deles se estou usando o código 110. 3) No pagamento com cartão de crédito o sistema sempre abre um menu, com a opção crediário, mesmo enviando o código 3989 : Neste caso, o suporte do sitef orientou que eu usasse o código 26, como se fizesse um laçamento específico de crédito a vista. Poderiam me ajudar com estas questões? Log_ACBr_2025-06-03.txt
Membros Pro SIDesenvolvimento Postado 3 Junho Autor Membros Pro Postado 3 Junho Complementando, segue o arquivo INI. No menu de estorno não estava aparecendo carteira digital, então pediram pra incluir esta linha: CliSiTef.ini Mesmo retirando esta linha o menu "Crediario" aparece.
Fundadores Daniel Simoes Postado 3 Junho Fundadores Postado 3 Junho Obrigado... Analisando... 1 Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976.
Fundadores Daniel Simoes Postado 4 Junho Fundadores Postado 4 Junho Olá @SIDesenvolvimento Você usa ACBrTEFD ou ACBrTEFAPI ? 23 horas atrás, SIDesenvolvimento disse: 1) O número do cupom fiscal fica repetido após o lançamento de algum pagamento: Seus fontes estão atualizados ? (lembro de ter feito um ajuste, para ele usar a hora atual, se não for informado o Documento da Venda) notei que em algumas situações no Log, está sendo enviado o Indentificador 23 horas atrás, SIDesenvolvimento disse: 2) Ao enviar o estorno de um pagamento o sistema abre um menu. Fui questionado pelo suporte deles se estou usando o código 110. da Transação como zeros Citar 03/06/25 12:40:17:724 - EfetuarPagamento( 00000000, 300,00, tefmpCartao, tefmfAVista, [ teftcCredito ], 1 ) No seu Log, parece estar sendo enviado 200... veja Citar 03/06/25 13:44:36:987 - CancelarTransacao( 999030011, 030011, 03/06/2025 13:42:40, 10,00, , MASTERCARD DEBIT ) 03/06/25 13:44:36:988 - *** IniciaFuncaoSiTefInterativo. Modalidade: 200 Valor: 10,00 Documento: 00000215 Data: 20250603 Hora: 134436 Operador: ParamAdic: Você pode configurar isso, na propriedade OperacaoCancelamento, exemplo: if ACBrTEFAPI1.TEF is TACBrTEFAPIClassCliSiTef then begin with TACBrTEFAPIClassCliSiTef(ACBrTEFAPI1.TEF) do begin OperacaoCancelamento := 110; end; end; 23 horas atrás, SIDesenvolvimento disse: 3) No pagamento com cartão de crédito o sistema sempre abre um menu, com a opção crediário, mesmo enviando o código 3989 : Você está informando o parâmetro 'Financiamento' do método 'EfetuarPagamento' ? Ok := ACBrTEFAPI1.EfetuarPagamento( IntToStr(Venda.NumOperacao), AValor, Modalidade, CartoesAceitos, tefmfAVista); // <----- AQUI ----- Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976.
Membros Pro SIDesenvolvimento Postado 4 Junho Autor Membros Pro Postado 4 Junho Olá @Daniel Simoes, muito obrigado pelas respostas. Citar Você usa ACBrTEFD ou ACBrTEFAPI ? Esou usando o ACBrTEFAPI. Citar Seus fontes estão atualizados ? (lembro de ter feito um ajuste, para ele usar a hora atual, se não for informado o Documento da Venda) notei que em algumas situações no Log, está sendo enviado o Indentificador da Transação como zeros Sim, estão atualizados. Atualizei eles agora pouco e não veio nenhuma alterção no tef. O envio da venda eu estou fazendo da seguinte forma: with TACBrTEFAPIClassCliSiTef(ACBrTEFAPI1.TEF) do begin ParamAdicConfig.Text := '[]'; ParamAdicFinalizacao.Text := '[]'; ParamAdicFuncao.Text := sRestringeFPagamento_; <- Crédito a vista [27;28;36;3989], Crédito parcelado estab. [26;28;36;3989], crédito parcelado emissor [26;27;36;3989] e débito [19;3031]. end; Ok := ACBrTEFAPI1.EfetuarPagamento(IntToStrZero(Qr_TEFid.Value,8), <- sequencial Ed_Valor.Value, Modalidade, <- aqui pode ser tefmpCarteiraVirtual ou tefmpCartao CartoesAceitos, <- [] para carteira virtual, teftcCredito ou teftcDebito Parcelamento, <- tefmfAVista, tefmfParceladoEstabelecimento ou tefmfParceladoEmissor UD_Parcelas.Position); <- número de 1 a 21 Citar Você pode configurar isso, na propriedade OperacaoCancelamento, exemplo: Fiz a alteração desta forma: with TACBrTEFAPIClassCliSiTef(F_Principal.ACBrTEFAPI1.TEF) do begin OperacaoCancelamento := 110; end; Ok := F_Principal.ACBRTEFAPI1.CancelarTransacao(Qr_Pagnsu.Value, Qr_Pagautorizacao.Value, DateOf(Qr_Paglanc.Value), Qr_Pagvpag.Value, Qr_Pagfinalizacao.Value, Qr_Pagrede.Value); E depois da alteração o sistema abre o menu adm: Citar Você está informando o parâmetro 'Financiamento' do método 'EfetuarPagamento' ? Sim, indiquei este parâmetro como uma variável do tipo TACBrTEFModalidadeFinanciamento.
Membros Pro SIDesenvolvimento Postado 4 Junho Autor Membros Pro Postado 4 Junho @Daniel Simoes, o suporte do Siitef comentou sobre usar o código 26 para lançar o pagamento de crédito a vista, como solução para este menu. Como se fosse um pagamento específico. Existe este mesmo código como o do cancelamento?
Fundadores Daniel Simoes Postado 6 Junho Fundadores Postado 6 Junho Em 04/06/2025 at 18:36, SIDesenvolvimento disse: ParamAdicFuncao.Text := sRestringeFPagamento_; <- Crédito a vista [27;28;36;3989], Crédito parcelado estab. [26;28;36;3989], crédito parcelado emissor [26;27;36;3989] e débito [19;3031]. O Sitef tem um funcionamento diferente, onde devemos informar quais formas de pagamento não queremos... Isso é feito, nos fontes do ACBr, em TACBrTEFAPIClassCliSiTef.EfetuarPagamento Observe que nesse método, o ACBr tenta traduzir os parâmetros recebidos no método EfetuarPagamento para esses parâmetros de restrição... Restricoes := DadosAdicionais; if (pos('[', fParamAdicFuncao.Text) = 0) then // Não especificou Restrições de Menu ? begin if (Op <> 0) and (OP <> 1) then // Débito Restricoes := Restricoes + CSITEF_RestricoesCueque + ';'; if (Op = 2) then // Débito Restricoes := Restricoes + CSITEF_RestricoesCredito + ';' else if (Op = 3) then // Crédito Restricoes := Restricoes + CSITEF_RestricoesDebito + ';'; if (Financiamento = tefmfAVista) then begin Restricoes := Restricoes + CSITEF_RestricoesParcelado + ';'; Restricoes := Restricoes + CSITEF_RestricoesParcelaAministradora + ';'; Restricoes := Restricoes + CSITEF_RestricoesParcelaEstabelecimento + ';'; end else if (Financiamento = tefmfParceladoEmissor) then begin Restricoes := Restricoes + CSITEF_RestricoesAVista + ';'; Restricoes := Restricoes + CSITEF_RestricoesParcelaEstabelecimento + ';'; end else if (Financiamento = tefmfParceladoEstabelecimento) then begin Restricoes := Restricoes + CSITEF_RestricoesAVista + ';'; Restricoes := Restricoes + CSITEF_RestricoesParcelaAministradora + ';'; end; e no final, ele adiciona os parâmetros que você tenha injetado em ParamAdicConfig e move tudo para ParamAdicFuncao... // Convertendo para formato de parâmetro, conforme esperado if (SL.Count > 0) then begin Restricoes := StringReplace(Trim(SL.Text), sLineBreak, ';', [rfReplaceAll]); if Restricoes <> '' then Restricoes := '['+Restricoes+']'; if fParamAdicConfig.Count > 0 then Restricoes := Restricoes + ';'+ Trim(fParamAdicConfig.Text); if (Restricoes <> '') then fParamAdicFuncao.Add( Restricoes ); end; finally SL.Free; end; Então precisamos ver no Log do ACBr (ou Sitef), como ficaram as restrições e parâmetros finais, enviados para o Sitef Segunda a documentação do SiTEF: https://dev.softwareexpress.com.br/docs/clisitef/clisitef_documento_principal/#início-da-transação-de-pagamento-ou-gerencial 110 Abre o menu de transações Gerenciais Os Cancelamentos, iniciam no comando 200 (que é o comando padrão do ACBr) 1 Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976.
Membros Pro SIDesenvolvimento Postado 6 Junho Autor Membros Pro Postado 6 Junho @Daniel Simoes, muito obrigado. Vou entrar em contato com o suporte deles e repondo aqui.
Membros Pro SIDesenvolvimento Postado 10 Junho Autor Membros Pro Postado 10 Junho @Daniel Simoes, gostaria de atualizar aqui. 1) Consegui resolver o menu para cancelamento com a de crédito usando a propriedade OperacaoCancelamento. Para crédito usei 210 e Débito 211. Estou aguardando o código para cancelamento de carteira digital. 2) Enviei para o suporte do sitef o teu retorno sobre o pagamento e o uso dos códigos. Tentei usar a propriedade OperacaoVenda com o código 26, que foi indicado por eles, e não funcionou. Ainda sigo com aquele menu nos pagamentos por crédito (qualquer modalidade). 3) Sobre o número do cupom estar repetido ou zerado, eu só informo ele no EfetuarPagamento. EfetuarPagamento(IntToStrZero(Qr_TEF_Avulsoid.Value,8), Ed_Valor.Value, Modalidade, CartoesAceitos, Parcelamento, UD_Parcelas.Position); As outras chamadas que eu uso são Iniciarlizar, EfetuarAdministrativo, ConfirmarTransacaoAutomaticamente, FinalizarTransacao e CancelarTransacao. Como posso indicar o número do cupom nelas?
Membros Pro SIDesenvolvimento Postado 10 Junho Autor Membros Pro Postado 10 Junho @Daniel Simoes, em tempo. Notei que na pasta onde ficam os log estão ficando alguns arquivos .tef: Quando isto acontece, ao inicializar o sistema abre o menu para cancelamento. Existe alguma configuração para não gerar estes arquivos? Eles são necessários para o tratamento de pendências? Desde já agradeço pela atenção.
Fundadores Daniel Simoes Postado 10 Junho Fundadores Postado 10 Junho 33 minutos atrás, SIDesenvolvimento disse: As outras chamadas que eu uso são Iniciarlizar, EfetuarAdministrativo, ConfirmarTransacaoAutomaticamente, FinalizarTransacao e CancelarTransacao. Como posso indicar o número do cupom nelas? humm, ok... provavelmente eles repostaram em relação a esses outros métodos.. Vou fazer uma validação 17 minutos atrás, SIDesenvolvimento disse: Existe alguma configuração para não gerar estes arquivos? Eles são necessários para o tratamento de pendências? Experimente apagar eles, antes da inicialização... ACBrTEFAPI1.LimparRespostasTEF; Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976.
Membros Pro SIDesenvolvimento Postado Quarta as 19:49 Autor Membros Pro Postado Quarta as 19:49 @Daniel Simoes, boa tarde! Consegui acesso aos logs do Sitef. Segue anexo o arquivo dmp de hoje. Fiz o teste de falta de energia, com o lançamento de venda: 1º - Uma venda com duas formas de pagamento 2º - Encerro a aplicação antes de tirar o cartão do pinpad 3º - Entro no sistema e ativo o componente: Ao chamar a modalidade 130 é informado o mesmo cupom fiscal da venda. Está correto desta forma? Revisando o log e o meu código vi que o sistema estava enviando o cupom fiscal zerado quando tinha mais de um pagamento na mesma venda. Ja fiz a correção aqui: Aqui um exemplo de pagamento com crédito e débito. Agora ficou da seguinte forma: Log: CliSiTef.20250611.dmp.txt Só para complementar a questão do código 130, o suporte do Sitef está alegando que o cupom fiscal está saindo repetido nele.
Membros Pro SIDesenvolvimento Postado Sexta as 01:51 Autor Membros Pro Postado Sexta as 01:51 Olá @Daniel Simoes, tudo bem? Enviei um novo roteiro de pré-homologação, e tive dois retornos negativos: 1º) O problema citado antes, de repetir o número do cupom. Este número de cupom pode ser alterado ao chamar o componente, quando transações gerenciais ou de cacelamento? Analisando a imagem, é como se nos cancelamento o componente usasse o último cupom enviado. 2º) Tratamento de transação pendente sendo executada duas vezes. Vou anexar o log do sitef aqui para você poder ver melhor o que foi enviado. CliSiTef.20250612.dmp.txt Teria alguma coisa que eu possa fazer para resolver estes problemas?
Membros Pro SIDesenvolvimento Postado Sexta as 10:08 Autor Membros Pro Postado Sexta as 10:08 Complementando o comentário acima, sobre os itens pendentes eu estou configurando da seguinte forma: Aproveito para anexar o log do ACbr.Log_ACBr_2025-06-12.txt
Membros Pro SIDesenvolvimento Postado Sexta as 10:59 Autor Membros Pro Postado Sexta as 10:59 Ainda sobre o cancelamento, quando é chamada a CancelarTransacao, parece que ela pega o cupom da ultima rotina realizada. Aqui temos uma sequencia de dois adm e dois cancelamentos: Neste caso o cupom muda de acordo com o horário: E nos cancelamentos o número do cupom ficou do último adm.
Fundadores Daniel Simoes Postado Sexta as 11:40 Fundadores Postado Sexta as 11:40 @SIDesenvolvimento, Estou aguardando a liberação de um ambiente de testes pela Fiserv... Retorno nesse tópico em breve... Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976.
Membros Pro SIDesenvolvimento Postado Sexta as 12:23 Autor Membros Pro Postado Sexta as 12:23 Obrigado
Recommended Posts
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 contaEntrar
Já tem uma conta? Faça o login.
Entrar Agora