Inicialização do Módulo TEF Stone

A função InicializaDPOS deve ser executada em cada abertura de dia de movimento (dia fiscal), servindo para indicar à DLL do sistema TEF que os processos de inicialização de dia devem ser realizados.

int DIRETIVA_CALLBACK InicializaDPOS()

Finalização do Módulo TEF Stone

A função FinalizaDPOS deve ser executada em cada fechamento de dia de movimento (dia fiscal), servindo para indicar à DLL do sistema TEF que os processos de finalização de dia devem ser realizados.

int DIRETIVA_CALLBACK FinalizaDPOS()

Identificar Automação comercial:

O PDV deverá realizar chamada à função IdentificacaoAutomacaoComercial toda vez que for inicializado.

int DIRETIVA_CALLBACK IdentificacaoAutomacaoComercial(char *pNomeAutomacao, char *pVersaoAutomacao, 
                                                      char *pReservado)
CampoTamanhoDescrição
NomeAutomacao20ANome (Fabricante) da automação
VersaoAutomacao20AVersão da automação
Reservado256ACampo reservado. O segundo byte informa se a automação está integrada com QR Code ('1' se sim, '0' se não). O terceiro byte informa se, durante uma transação de cancelamento, trata-se de cancelamento de QR Code ('1' se sim, '0' se não)

Configurando desfazimento

A função ConfiguraModoDesfazimento, que permite que a automação determine o modo no qual o client TEF deverá proceder, através do argumento iModoDesfazimento. Os valores que podem ser passados no argumento são os seguintes:

ValorModoDescrição
0AutomáticoModo atualmente utilizado, onde o desfazimento é realizado através da chamada da função FinalizaTransacao (default)
1ExplícitoAs transações são desfeitas somente se for chamada a função DesfazCartao (exceto no caso de queda de energia)
int DIRETIVA_CALLBACK ConfiguraModoDesfazimento(int iModoDesfazimento)

Abaixo são apresentados os passos de uma venda considerando a utilização do modo explícito:

Passos:Realizador por: Automação comercialRealizados por: TEF Client
1Automação é inicializada-
1.1Automação verifica a versão do client através da função VersaoDPOS para certificar-se de que o client instalado possui a função ConfiguraModoDesfazimento-
1.2Se sim, automação configura o modo de desfazimento para o modo explícito através da função ConfiguraModoDesfazimentoInicializa o modo de desfazimento para o modo solicitado pelo automação
1.3Verifica se houve queda de energia e se tem transações TEF pendentes da última venda
1.4Se sim, informa ao client através da função DefineParametroTransacao (parâmetro 1021) a ocorrência de queda de energia e realiza chamada à função FinalizaTransacao-
1.5-Se a automação indicar a ocorrência de queda de energia, faz o desfazimento das transações pendentes da última venda
2Inicia a venda ao consumidor final-
3Seleciona a forma de pagamento TEF-
3.1Faz chamada a função do TEF de acordo com o tipo da transação selecionada(crédido, débito, voucher, frota, ...)-
3.2-Executa a transação de pagamento TEF
3.3-Se aprovada, retorna sucesso e o comprovante para a automação, senão retorna erro
4Faz as devidas validações e contabiliza o pagamento
4.1Se o pagamento for parcial, volta para o passo (3)
4.2Se a transação não for autorizado ou se for autorizada, mas houver alguma inconsistência em relação a solicitação, não contabiliza e volta para o passo (3)
5No final da venda, após realizar o pagamento do valor total, emite os comprovantes e solicita ao TEF a confirmação (função ConfirmaCartao) das transações contabilizadas e o desfazimento (função DesfazCartao ) das transações não contabilizadas (não confirmadas)
5.1Realiza a confirmação das transações solicitadas pelo automação
5.2Realiza o desfazimento das transações solicitadas pelo automação
6Após confirmar ou desfazer as transações, finaliza a venda junto ao TEF através da função FinalizaTransacaoLimpa a lista de transações realizadas na venda
7Volta para o passo (2)