Método Pagar:

Este método é responsável por todos os pagamentos disponíveis no TEF: Débito, Crédito e Crediário.

 

Chamada do método Pagar:

 
  
spdTEF.Pagar(aValor : Double; aParcelas : Integer; aPagamento : TPagamento);   

 

Onde os parâmetros:

  • aValor:
    • Tipo: Double
    • Valor da transação. Deve ser informado no formato 0,00.
  • aParcelas:
    • Tipo: Inteiro.
    • Deve ser informado a quantidade de parcelas.
    • Quando é informado o valor 1, o componente já entende que se trata de uma venda à vista. Valores maior que 1 o componente trata com vendas parceladas.
  • aPagamento:
    • Tipo: TPagamento.
    • Valores de entrada:
      • Crédito: pgCredito
      • Débito: pgDebito
      • Crediário: pgCrediario
    • Este parâmetro define qual é a forma de pagamento que esta em andamento.

 

Para cada tipo de pagamento (Crédito, Débito ou Crediário), devemos ficar atento para as propriedades que devem ser utilizadas:

  • Crédito:
    • Propriedades:
      • NumeroCartao : informar esta propriedade caso deseje buscar o número do cartão de uma forma digitável. Caso o cartão seja inserido no PinPad, essa propriedade pode ficar vazia.
      • CreditoDataVencimento : informar esta propriedade caso deseje buscar a data do vencimento do cartão de uma forma digitável. Caso o cartão seja inserido no PinPad, essa propriedade pode ficar vazia.
      • CreditoTipoParcelamento : informar essa propriedade somente se a venda a crédito for parcelada. Caso ela seja à vista, essa propriedade deve ficar em branco.
 
  
procedure PagamentoCredito;
var
  _valor: double;
begin  
  _valor := StrToFloat('150,00');
  spdTEF.Cartao.CreditoTipoParcelamento := pAdmin;
  spdTEF.Cartao.NumeroCartao := '123456789012';
  spdTEF.Cartao.CreditoDataVencimento := '1218';

  MostrarResultado.text := spdTEF.Pagar(_valor, 2, pgCredito);
end;   
  • Débito:
    • Somente informar o valor da transação, quer será informado no parâmetro "aValor" do método Pagar .
 
  
procedure PagamentoDebito;
var
  _valor: double;
begin
  _valor := StrToFloat('150,00');
  MostrarResultado.text := spdTEF.Pagar(_valor, 1, pgDebito);
end;   
 
  
procedure PagamentoCrediario;
var
  _valor: double;
begin
  _valor := StrToFloat('150,00');
  spdTEF.Cartao.CrediarioDataVencimento := '20052017';

  MostrarResultado.text := spdTEF.Pagar(_valor, 2, pgCrediario);
end;   

 

O Retorno deste método é o cupom fiscal TEF, pronto para ser impresso (exemplo em homologação):

"             HOMOLOGACAO"
"          42.724.382/0001-46"
""
"           **VIA CLIENTE**"
"                CIELO"
"        VISA - CREDITO A VISTA"
"         **** **** **** 0002"
"        ESTAB 222222220000000"
"          28/10/16 11:34:41"
"        AUT= SIMULA DOC= 77295"
"            VALOR= 150,00"
"        CONTROLE= 10872597029"
"            CAPPTA CARTOES"
"             HOMOLOGACAO"
"          42.724.382/0001-46"
""
"           **VIA LOJISTA**"
"                CIELO"
"        VISA - CREDITO A VISTA"
"         **** **** **** 0002"
"        ESTAB 222222220000000"
"          28/10/16 11:34:41"
"        AUT= SIMULA DOC= 77295"
"            VALOR= 150,00"
"        CONTROLE= 10872597029"
"            CAPPTA CARTOES"

 

Após a autorização, o Componente Tecnospeed TEF enviará automaticamente o cupom TEF para impressora. Este comportamento não é configurável.

 

 


Sumário