SiTef - Interface Simplificada com a aplicação(VRS-095) (2)

Embed Size (px)

Citation preview

Especificao Tcnica Interface com os meios de pagamento do SiTef Bibliotecas CliSiTefI e CliSiTefINDICE

Histrico de Alteraes ........................................................................................................................................................ 2 1. Objetivo ....................................................................................................................................................................... 8 1.1 Da biblioteca ................................................................................................................................................................ 8 1.2 Do documento .............................................................................................................................................................. 8 1.3. Descrio Resumida ............................................................................................................................................... 9 1.4 Fluxo Grafico ........................................................................................................................................................... 10 2. Descrio da interface com as rotinas disponveis na CliSiTef.............................................................................. 11 2.1 Interface padro Necessita que a linguagem de programao trate campos binrios ..................................... 11 2.2 Interface ASCII ......................................................................................................................................................... 12 3. Descrio das rotinas disponveis na CliSiTef......................................................................................................... 13 3.1 Configurao ............................................................................................................................................................. 14 3.2 Pagamento ou gerencial............................................................................................................................................ 16 3.3 Confirmao ou no do Pagamento ........................................................................................................................ 21 3.4 Leitura de carto....................................................................................................................................................... 22 3.5 Leitura de senha ........................................................................................................................................................ 25 3.6 Continuao do processo de coleta interativo ........................................................................................................ 26 3.6.1 Tabela de valores para o campo Comando ........................................................................................................... 31 3.6.2 Tabela de valores para TipoCampo ....................................................................................................................... 34 3.7 Correspondente Bancrio (Pagamento de Contas) ................................................................................................ 45 3.8 Teste da presena de PinPad .................................................................................................................................... 47 3.9 Define mensagem permanente para o PinPad ........................................................................................................ 47 3.10 Verificao da integridade de um cdigo em barras ............................................................................................ 48 3.11 Leitura de Confirmao pelo Cliente no PinPad .................................................................................................. 50 3.12 Verificao da quantidade de transaes pendentes de confirmao no terminal............................................. 51 3.13 Obtendo Verso ....................................................................................................................................................... 51 3.14 Descarregando Mensagens ..................................................................................................................................... 51 4. Tabelas ....................................................................................................................................................................... 52 5. Restrio ou habilitao nas formas de pagamento ............................................................................................... 54 5.1 Restrio durante o processo de finalizao de uma venda .................................................................................. 54 5.2 Restrio de forma definitiva ................................................................................................................................... 54 5.3 Habilitao de transaes adicionais ....................................................................................................................... 55 5.4 Habilitao de transaes de redes especficas ....................................................................................................... 56 5.5 Tabela de cdigos de meios de pagamento, configuraes e menus ...................................................................... 58 5.6 Habilitao de configuraes especiais ................................................................................................................... 67 7. Habilitao de trace durante a fase de desenvolvimento ....................................................................................... 69 8. Processo de homologao ......................................................................................................................................... 70 9. Configurao de endereos IP adicionais ............................................................................................................... 70 10. Configurao do perodo que o trace mantido .................................................................................................... 70 11. Habilitando a entrega de mltiplos cupons na CliSiTef ........................................................................................ 70 12. Habilitando da confirmao do valor no pinpad ................................................................................................... 71 13. Configuraes especiais EMS .................................................................................................................................. 71 14. Mdulos opcionais .................................................................................................................................................... 72

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 1 de 72

Edio : 095 Data : 01/08/2011 Histrico de Alteraes Histrico de Alteraes Descrio Incluso da coleta de um campo tipo VALOR Incluso do tipo de campo TROCO para ser tratado pela aplicao Incluso da rotina FinalizaTransacaoIntSiTefCuponFiscal Incluso do comando para abortar a execuo do mdulo pelo aplicativo Incluso de um novo tipo de dado de retorno para indicar o cancelamento Incluso de novos tipos de dado de retorno para indicar a instituio que tratou a autorizao e outros dados relativos a mesma Separao do NSU Host do Cdigo de Autorizao no retorno para a aplicao e alterao no tamanho dos campos de retorno (111 e 112) Alterao nos cdigos retornados pela rotina RecebeResultado Incluso dos comandos necessrios para apresentar e remover um ttulo nos menus (04 e 14) Incluso de rotinas para acesso por linguagens de programao que no possuem a caracterstica de Callback Remoo da rotina FinalizaTransacaoIntSiTef Separao em duas dlls, uma para as linguagens que possuem Callback e outra para as demais linguagens de programao. Mudana de nomenclatura de Dll Conversacional para Interativa Alterao no nome da rotina de configurao quando em modo interativo Alterao no formato de captura de cheques para suportar a nova transao do Serasa (Comando 31) Alterao no nome das rotinas na interface interativa de forma a evitar confuso e acesso a rotinas erradas por conflito de nomenclatura entre as DLLs via callback e interativa

Data

07/05/2001 07/05/2001 07/05/2001 09/05/2001 13/05/2001 22/05/2001 27/05/2001 04/06/2001 21/08/2001 07/10/2001 21/10/2001 21/10/2001 22/10/2001 08/11/2001 02/01/2002

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 2 de 72

03/03/2002

14/03/2002 14/03/2002 16/03/2002 16/03/2002 19/03/2002

19/03/2002

03/04/2002 15/04/2002 03/09/2002

05/09/2002 09/09/2002

Alterao de alguns textos para explicar melhor o funcionamento da rotina ou interface Incluso do tipo de campo Cdigo do Operador para permitir que a automao, se desejado, valide este campo antes de pass-lo para a DLL Incluso da funo para leitura de um carto genrico (p/ex: carto de supervisor) Incluso da possibilidade da automao comercial definir qual o tipo de transao ser executada Alterao na estrutura interna do mdulo para permitir mltiplos pagamentos para um mesmo cupon fiscal Melhoria na documentao e incluso dos campos tratveis pela automao na chamada a ColetaCampo Trocados os cdigos que correspondem ao TipoCampo Trilha 1 e 2 Includos novos cdigos na coleta de campos de forma que a aplicao possa controlar mais informaes durante o processo de coleta de campos Melhoria na documentao Incluso de mecanismo para a automao informar se o campo foi preenchido de forma automtica ou no Incluso da possibilidade de bloqueio de transaes com nmero de carto digitado Incluso das funes de tratamento do Correspondente Bancrio (pagamento de contas) Incluso do comando para captura do cdigo em barras do documento a ser pago Incluso de codificao para os campos do Correspondente Bancrio Incluso de codificao para o campo Nome do Cedente para ser impresso no cheque de pagamento do Correspondente Bancrio Incluso de funo para uso por terminais de auto-atendimento Incluso de funo para uso por telemarketing/televendas Redefinio do campo Modalidade para comportar as funes de Cancelamento e Telemarketing Incluso de tipos de campos que possibilitem ao aplicativo de automao reconhecer que a dll est requisitando dados de uma venda com carto de crdito digitado (p/ ex. quando ela usada para efetivar um pagamento cujos dados do carto foram armazenados previamente) Incluso de tabela definindo formato do campo produtos da funo EfetuaPagamento. Na funo ContinuaFuncaoSiTefInterativo, o descritivo estava escrito como ContinuaFuncaoIntSiTef.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 3 de 72

19/09/2002 30/09/2002 02/10/2002 02/10/2002 28/10/2002 12/11/2002 27/11/2002 10/12/2002 27/12/2002 03/01/2003 13/01/2003 03/02/2003 V. 0.76e 12/02/2003 V. 0.76h 07/05/2003 V. 0.80 28/05/2003 V. 0.81 10/06/2003 21/07/2003 24/07/2003

Incluso das modalidades para cancelamento via funo EfetuaPagamento e EfetuaPagamentoAutoAtendimento. Incluso de novos tipos de campo para que a aplicao trate os dados do cancelamento. Remoo de todas as referncias ao modo Callback de funcionamento pois ele deixou de ser disponibilizado nessa biblioteca. Incluso da interface ASCII para aplicativos que no conseguem tratar campos binrios Incluso da funo para captura de senha em PinPad com criptografia por hardware Correo na descrio da passagem de parmetros da rotina ContinuaFuncaoSiTefInterativo Incluso do retorno da data e hora da transao Criao do novo ponto de entrada para acesso ao SiTef de forma a centralizar todas as funes de Tef e Gerenciais em uma nica rotina (vide item 3) Trocado o nome do campo Modalidade para Funcao Criao da restrio de cancelamento de pr-autorizao. Incluso da possibilidade da automao passar os campos necessrios para executar a re-impresso Visanet atravs da definio dos tipos de campo 515 e 516 Includo o tipo de campo 517 para identificar a coleta de um cheque ou seja, o comando em execuo o 31 Includo o tipo de campo 517 para identificar a coleta de um cheque ou seja, o comando em execuo o 31 Includa uma funo para acesso direto ao PinPad para leitura das trilhas do carto magntico, funo esta normalmente utilizada para captura do carto do Supervisor Includa uma funo para que o aplicativo de automao possa interromper a funo LeCartaoDireto Includo um novo retorno que indica dados adicionais sobre o carto utilizado para o pagamento (TipoCampo = 112) Includo novos cdigos de funo para acesso direto as rotinas de prautorizao. Corrigido o texto referente ao bloqueio da transao de Prautorizao Melhorada a documentao da funo que continua o processo interativo, deixando claro que um retorno igual a Zero indica sucesso na execuo da solicitao feita pelo terminal Introduzida a funcionalidade de recarga de pr-pago Includas as funes para que o aplicativo de automao possa capturar a trilha de forma direta na interface ASCII e a mesma funcionalidade para captura de senha de clientes de carto proprietrio atravs das funes LeSenhaDireto e LeSenhaDiretoA

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 4 de 72

29/09/2003 V. 096a 13/10/2003 V. 096j 14/10/2003 V. 096k 30/11/2003 V. 097 25/01/2004 V. 097m

Incluso da configurao que permite habilitar somente as transaes desejadas Alterao na definio da configurao que permite habilitar somente as transaes desejadas Eliminao da dll CliSITef32IA Incluso de novos cdigos para habilitao ou no de menus da CliSiTef32 Alterao na forma de tratamento dos cupons recebidos como retorno das transaes Gerenciais e Correspondente Bancrio. Incluso de novo exemplo de fluxo de utilizao da CliSiTefI Includo o campo 607 e a devoluo do Nsu do Host para o correspondente bancrio Detalhamento na forma com que a automao pode tratar uma coleta do campo 35 cdigo em barras Criada a funo ValidaCampoCodigoEmBarras que consiste os campos digitados isoladamente Includos novos campos no retorno das transaes de Correspondente Bancario Includo novo tipo de restrio para a Garantia de Cheque Papel Tecban Includa a funcionalidade de recarga de celular utilizando carto de dbito ou crdito e como habilitar tal caracterstica Includa forma para bloquear via restries os menus do Correspondente Bancrio Includo na documentao a forma da aplicao solicitar um retorno ao campo anterior Includa funo para apresentao de mensagem no visor do PinPad e captura de confirmao ou cancelamento pelo cliente Includo o menu de pagamento de benefcios do Banco do Brasil Includo retorno dos campos Valor em dinheiro e troco no caso do correspondente bancrio Modificada a nomenclatura do campo Restries para ParametrosAdicionais uma vez que esta ltima mais condizente com a funcionalidade oferecida por ele Includa as funes que permitem interromper a leitura de um carto proprietrio por temporizao ou chamada de rotina externa Incluso de um novo cdigo de retorno para a funo ConfiguraIntSiTef.

06/02/2004 V. 097p 13/02/2004 V. 097s 04/05/2004 V. 098j 24/06/2004 V. 098s 07/07/2004 ---------23/07/2004 V. 0.98z8

02/08/2004 V. 0.98z8 V. 0.98/nv/4 24/08/2004 V. 0.99 03/05/2005

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 5 de 72

Histrico de Alteraes Data 26/08/2004Descrio Verses mnimas CliSiTefI CliSiTef 0.98.z.8 Corrigida a documentao dos parmetros na funo 0.98.nv.14 LeCartaoDiretoExA Acerto na numerao das verses mnimas e no texto descritivo das funes e correo da verso anterior que NO era 0.99 1.00.a.4 Modificada a forma de numerar as verses. Retornou a forma 1.00.a.4 padro V.VV[.release] Incluida a gerao de trace no criptografado para ser utilizado em ambiente de desenvolvimento Incluida as transaes CentralCard e InfoCard 1.00.a.5 Includo os tipos de campo necessrios para tratar a coleta de 1.00.a.20 nmeros de telefone para consulta a cheques 1.00.a.5 Devoluo do cdigo em barras cujo pagamento foi aprovado 1.00.a.42 1.00.a.5 Incluso do TipoCampo 518 e 519 na tabelas de valores para Tipo 1.00.a.5 Campo. 1.00.a.20 Incluso da possibilidade de gerar trace em aberto para auxiliar o desenvolvimento da interface com a CliSiTef 1.01.a.138 Passou a devolver os NSU do SiTef e do Host Autorizador quando uma transao de recarga for paga com carto Passou a devolver o Cdigo da Filial que autorizou a recarga do celular ???? Incluso de novos campos para tratamento do carto combustvel (GoodCard e PortalCard). 1.01.c.55 Incluso somente na verso EMV FULL da possibilidade de adio de IP secundrio no CLISITEF.INI. A gravao de trace passa a ser habilitada por padro e o perodo de armazenamento configurvel. Acrescentados cdigos de redes autorizadoras tabela existente. 1.01.c.080.1 Incluso do campo tipo 1131 e dos menus 3063,3064,3065. 1.01.c.082.1 Descrio de configuraes especiais no parmetro ParamAdic. 1.01.c.082.2 Incluso do campo tipo 1049. 1.01.c.089.1 Incluso de campos para a rede Condor, Starfiche e SEM 1.01.c.094.57 Incluso das configuraes especiais EMS. Incluso dos campos do pagamento de carto Qualicard. 1.01.c.094.63 Incluso autorizao genrica EMS. 1.01.c.094.71 Incluso da rede Pharma System 1.01.c.094.31 Incluso da rede Obo 1.01.c.94.xx Incluso da rede Avista 1.01.c.94.xx Incluso do menu venda crdito com autorizao vista 1.01.c.94.105 Incluso do carto virtual Formosa. 1.01.c.94.109 Incluso do carto Neus.

09/09/2004

09/09/2004 19/11/2004 28/12/2005 04/04/2006 17/08/2006

08/11/2006 15/01/2006

17/08/2007 06/02/2008 18/03/2008 28/03/2008 17/07/2008 01/06/2009 08/06/2009 01/07/2009 23/07/2009 23/07/2009 11/08/2009 12/08/2009 20/08/2009

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 6 de 72

27/08/2009 14/09/2009 30/09/2009 07/10/2009 12/01/2010 27/01/2010 28/01/2010 11/02/2010 14/06/2010 06/07/2010 06/08/2010 21/09/2010

1.01.c.94.113 1.01.c.94.129 1.01.c.94.135 1.01.c.94.137 1.01.c.94.191 1.01.c.94.195 1.01.c.94.201 1.01.c.94.207 1.01.c.94.254 1.01.c.94.259 1.01.c.94.265

21/10/2010 11/11/2010 1.01.c.95.13

06/12/2010 28/01/2011 18/02/2011 11/05/2011

-

4.0.102.3.r1

Incluso da rede Algorix Incluso do PBM Fidelize Incluso da rede CompreMax Incluso do cancelamento de carto combustvel genrico Incluso do campo 537 (cdigo de rea da cidade do cheque) Documentao do campo 2054 para o tipo de CDC Crdito. Incluso da rede SQCF Incluso da opo Carto Gridcard Reservado o Range de 8000 a 9999 para a tabela de Tipo Campos para a IntPos.dll. Incluso dos menus de saque/estorno de saque GetNet Incluso da funo Consulta Saque com Saque Banco IBI Alterao da identificao dos campos Cdigo Produto Hopi-Hari (de 2049 para 2120), Descrio Produto Hopi-Hari (de 2050 para 2121), Quantidade Mxima de produtos Hopi-Hari (de 2051 para 2122), Produtos Hopi-Hari (de 2052 para 2123). Includo campo 3334 (Pagamento SPTrans) e modalidades 700 e 701 (Oi Paggo) Incluso do pagamento de fatura/estorno FoxWinCards, menus 3335 e 3336; Incluso da RedeHabilitadaFoxWinCards. Incluso das funes 702 (Pagamento de contas) e 703 (Cancelamento de Pagamento Carto Benefcio). Adicionadas descries dos cdigos de erro -43, -50 e -100. Eventos 5011, 5012 e 5013. Incluso do campo 2301. Criada tabela de Modalidades, para melhor visualizao. Incluso dos campos 2125 e 2126 (fatura HotCard). Incluso dos campos 3337 at 3352. Incluso das funes(modalidades) Resgate de Pontos (modalidade 665), Emissao Pontos (667), Cancel. Emissao Pontos (668), 669 (Carga de Pr Pago), 670 (Cancel. Carga de Pr Pago) e 680 (Cons. Saldo Pr Pago) Parmetro HabilitaRedeTricard Incluso dos campos 3339 a 3345. Incluso das funes (modalidades): Venda com Carto Gift (modalidade 15), Consulta a Saldo Gift (modalidade 152), Cancelamento de Venda com Carto Gift (modalidade 213), Cancelamento de Recarga de Carto Gift (modalidade 257) e Recarga de Carto Gift (modalidade 264). Incluso do campo 5501. Corrigido o nome da rede InfoCard nas redes habilitadas. Incluso da rede TopCard e da transao de Pagamento de Fatura Genrico (3379)

27/05/2011 13/06/2011

4.0.102.6.r1 4.0.102.7.r1

08/07/2011 12/07/2011 01/08/2011

4.0.102.9.r1 4.0.102.10.r1

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 7 de 72

1. 1.1

Objetivo Da biblioteca Propiciar um meio rpido e simples de disponibilizar as funcionalidades do SiTef para aplicativos em geral. Principais caractersticas: a) No intrusiva pois a prpria automao que gerencia suas telas. No ocorre sobreposio de telas da prpria interface que, se existisse, na maioria das vezes no seria compatvel com a diagramao visual da aplicao principal do cliente; b) Permite que a aplicao de automao restrinja as transaes disponveis para determinado pagamento uma vez que, na vida prtica, ocorre a negociao com o cliente e uma vez fechado o meio de pagamento, quantidade de parcelas, etc, no devem ser modificados por engano na hora da execuo do TEF; c) Permite total liberdade na incluso de novos produtos e meios de pagamento, acompanhando a evoluo do SiTef, sem que seja necessrio fazer nenhuma alterao na automao ou, se ela for imprescindvel (por exemplo pela incluso de novos perifricos de acesso tais como leitor de cdigos em barra), que ela seja mnima.

1.2

Do documento Apresentar a descrio da biblioteca que efetua a interface com os servios de meio de pagamento disponveis no SiTef. A biblioteca implementada atravs de duas DLLs para o ambiente Windows 32 bits e duas libs para o ambiente linux (CliSiTefI e CliSiTef32). Ela possui pontos de entrada pelos quais a automao comercial a configura, solicita um pagamento, solicita uma funo gerencial ou o pagamento de uma conta. Os pontos de entrada esto na CliSiTefI e essa que deve ser carregada pela aplicao do usurio. A CliSiTef32 de uso exclusivo da CliSiTefI e no pode ser carregada ou chamada diretamente sob risco de, se isso for feito, desestabilizar o ambiente. Neste documento, qualquer referncia a CliSiTef deve ser entendida como o conjunto das duas dlls ou libs. A CliSiTef possui, para cada funcionalidade, dois pontos de entrada (rotinas). A escolha de qual das interfaces ser utilizada pela aplicao depende do gosto pessoal do programador e de se o ambiente utilizado por ele para o desenvolvimento impe algum tipo de restrio na chamada a CliSiTef. Em particular, estamos nos referindo ao tipo de dado manipulado pelo ambiente de programao. Se ele aceitar somente dados em ASCII, necessariamente deve ser utilizada a interface batizada a seguir nesse documento como A.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 8 de 72

1.3. Descrio Resumida Primeiramente a Automao Comercial deve executar o comando ConfiguraIntSiTefInterativo, passando as informaes necessrias para que o Terminal de Vendas possa se comunicar com o SiTef, como Endereo IP do SiTef, Cdigo da Empresa (no sitef demonstrao este cdigo 00000000) e a identificao do terminal, que segue o seguinte formato: duas letras + 000 + nmero do Terminal de Vendas. Esta funo deve ser chamada somente quando a CliSiTef carregada ou seja, no necessrio cham-la a cada nova transao. Feito isto, a rotina devolve um valor dizendo se o comando foi aceito ou no. Se foi 0 o processo ocorreu de forma correta. O prximo passo , ento, chamar a funo IniciaFuncaoSiTefInterativo, passando os parmetros descritos para ela. No retorno, a ela devolve o valor 10000 para continuar a transao ou outro valor para encerrar. Se o retorno for 10000, deve-se chamar a funo ContinuaFuncaoSiTefInterativo, com os parmetros tambm descritos para ela ns prximos tpicos. Enquanto a CliSiTef retornar na chamada dessa funo o valor 10000, a automao deve ficar repetindo a chamada a essa funo tantas vezes quanto for necessrio at que o valor de retorno da funo seja 0, indicando que ocorreu tudo bem, ou diferente de 0 e de 10000 indicando que ocorreu alguma interrupo anormal. Se o retorno foi 0, a automao encerra o lao e se houve impresso de cupom TEF a automao deve imprimi-los e chamar uma outra funo, a FinalizaFuncaoSiTefInterativo, confirmando ou no a transao dependendo, respectivamente, se o cupom foi impresso corretamente ou no. Se o retorno foi diferente de 10000 e de 0 ento a automao simplesmente sai do lao e, por opo do programador, pode ou no exibir uma mensagem de acordo com o retorno da funo chamada. Por exemplo, se retornou -2, significa que a transao foi cancelada pelo operador. Estes retornos negativos esto descritos neste documento. Exemplificando graficamente o fluxo descrito neste tpico, teramos o seguinte:

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 9 de 72

1.4

Fluxo Grafico ConfiguraIntSiTefInterativo Retorno igual a 0 (zero) ? N Encerra a transao S IniciaFuncaoSiTefInterativo Retorno igual a 10000? S ContinuaFuncaoSiTefInterativo Retorno igual a 10000? Se Sim ento execute o Prximo Comando e faa a re-chamada da funo N O retorno foi igual a 0? N Encerra a transao S Houve devoluo de Cupom TEF pela CliSiTef? N Encerra a transao S Imprime o cupom; O cupom foi impresso corretamente? N S Chamar a funo FinalizaTransacaoSiTefInterativo com Parmetro Confirma = 0 (lao) N Encerra a transao

Chamar a funo FinalizaTransacaoSiTefInterativo com Parmetro Confirma = 1

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 10 de 72

2. 2.1

Descrio da interface com as rotinas disponveis na CliSiTef Interface padro Necessita que a linguagem de programao trate campos binrios Esta interface pode ser utilizada por aplicaes escritas nas mais variveis linguagens de programao que aceitam campos binrios. Dentre elas citamos: Delphi, Visual Basic, Visual C. No caso de comprovantes, o delimitador que indica o final de uma linha o caractere 0x0a (\n em linguagem C). Todas as rotinas chamadas pelo aplicativo de automao devem ser do tipo stdcall, ou seja, os parmetros so empilhados da direita para a esquerda e a rotina chamada responsvel por removlos da pilha. A conveno dos parmetros a seguinte: char *: Buffer em texto ASCII terminado por zero binrio short int (short), unsigned short int (ushort): Variveis que ocupam 2 bytes em memria com e sem sinal, respectivamente long, unsigned long (ulong): Variveis que ocupam 4 bytes em memria com e sem sinal, respectivamente void: Indica a ausncia de parmetros ou retorno tipo varivel * (p/ex: short int * ou long *) Indica que a varivel do tipo varivel est sendo passada como endereo ou seja, a CliSiTef ir utilizar a rea da aplicao de automao para trabalhar podendo devolver algum resultado nela

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 11 de 72

2.2

Interface ASCII Esta interface pode ser utilizada por aplicaes escritas em qualquer linguagem de programao, inclusive as que no que aceitam campos binrios, tais como o ambiente Forms da Oracle. Nela todos os parmetros so passados em ASCII e podem ser de tamanho fixo e varivel. Os campos numricos so passados sempre com tamanho fixo e alinhados a direita, com zeros a esquerda. Em particular, o campo cujo contedo seja um valor negativo, possui um sinal - na posio mais a esquerda do nmero (p/ex: -0001 para um campo de 5 posies cujo contedo o valor 1). Os de tamanho varivel so construdos de forma que o primeiro caractere indique qual o valor escolhido para ser o delimitador daquele campo ou seja, o campo delimitado pelo caractere escolhido ou o seu complementar no caso dos pares ( ), [ ], { } e < >. Exemplos de construes vlidas so: (1234), [1234], {1234}, , $1234$, %1234%, |1234|, etc. Exemplos NO VLIDOS so os seguintes: $12$34$, .1.234,56., etc. O critrio para escolha do delimitador deve ser o de que ele no exista como caractere vlido no campo em questo. Nas passagens de dados da aplicao para a CliSiTef, como estes sempre so conhecidos, a aplicao pode definir um caractere padro e sempre utiliz-lo em todas as passagens de dados. J no retorno, como qualquer caractere valido (por exemplo em um comprovante), a regra acima deve ser utilizada na interpretao do resultado devolvido pela CliSiTef uma vez que esta ir escolher o caractere que melhor se adapta a resposta que esta sendo gerada. Finalizando, existe um caractere especial que utilizado nos textos direcionados para uma impressora. O \ (barra reversa) indica o final de uma linha e deve ser utilizado pelo aplicativo instruir a impressora para fechar a linha corrente e se posicionar na seguinte.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 12 de 72

3.

Descrio das rotinas disponveis na CliSiTef Na descrio a seguir, so apresentadas as duas verses de cada uma das funes disponveis ou seja, a que trabalha com dados binrios e a que trabalha com dados em ASCII. Notar que o que diferencia a verso ASCII da verso BINRIA o acrscimo do sufixo A e a forma e tipo de passagem dos parmetros. Para algumas das funes presentes na biblioteca, existe uma terceira e quarta verso da mesma que de uso exclusivo e obrigatrio para aplicaes de auto-atendimento uma vez que exigida por algumas bandeiras a impresso dos bens adquiridos no meio do comprovante de TEF. Sero adotadas as seguintes convenes: Campo vazio ou no fornecido: Na verso binria um campo contendo apenas o delimitador (zero binrio) Na verso ASCII, se for um campo fixo ele contm espaos. Se for um campo varivel ele contm apenas o delimitador de incio e final de campo Tamanho do campo: No caso de campo de tamanho fixo, quando esse valor for fornecido, indica qual o tamanho mnimo a ser reservado pela aplicao para receber uma resposta do SiTef.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 13 de 72

3.1

Configurao Atravs dessa rotina o aplicativo configura a CliSiTef de forma que ela possa interagir com o SiTef e com o prprio aplicativo de automao long ConfiguraIntSiTefInterativo (EndSiTef, IdLoja, IdTerminal, Reservado); long ConfiguraIntSiTefInterativoEx (EndSiTef, IdLoja, IdTerminal, Reservado, ParametrosAdicionais); ConfiguraIntSiTefInterativoA (Resultado, EndSiTef, IdLoja, IdTerminal, Reservado); ConfiguraIntSiTefInterativoExA (Resultado, EndSiTef, IdLoja, IdTerminal, Reservado, ParmetrosAdicionais); Parmetro Resultado EndSiTef IdLoja Binria Tipo ----char * char * ASCII Descrio Tamanho 6 Contm o resultado de resposta chamada da rotina Configura o nome ou endereo (em notao .) de onde est o servidor SiTef 8 Identifica o nmero da loja perante a rede de estabelecimentos comerciais. Se no for fornecido o SiTef identificar a loja baseado no IP origem da conexo 8 Identifica o pdv perante a loja. Se no for fornecido o SiTef identificar a loja baseado no IP origem da conexo. obrigatrio se pIdLoja for fornecido. Neste caso possui o formato XXnnnnnn onde XX corresponde a 2 caracteres alfabticos e nnnnnn 6 dgitos quaisquer desde que o nmero resultante no sobreponha a faixa 000900 a 000999 que reservada para uso pelo SiTef 6 Deve ser passado com 0 Parmetros adicionais de configurao da CliSiTef no seguinte Formato: [=; =]

Tipo F V F

IdTerminal

char *

F

Reservado ParametrosA dicionais

short char *

F V

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 14 de 72

As rotinas devolvem um dos seguintes resultados: Valor 0 1 2 3 6 7 8 10 Descrio No ocorreu erro Endereo IP invlido ou no resolvido Cdigo da loja invlido Cdigo de terminal invalido Erro na inicializao do Tcp/Ip Falta de memria No encontrou a CliSiTef ou ela est com problemas Erro de acesso na pasta CliSiTef (Possvel falta de permisso para escrita)

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 15 de 72

3.2

Pagamento ou gerencial long IniciaFuncaoSiTefInterativo(Funcao, Valor, CuponFiscal, DataFiscal, Horario, Operador, ParamAdic); IniciaFuncaoSiTefInterativoA (Resultado, Funcao, Valor, CuponFiscal, DataFiscal, Horario, Operador, ParamAdic); Rotina chamada pelo aplicativo de um terminal de Auto-Atendimento no momento que ele desejar finalizar uma venda. A seguir est a descrio de seu prottipo. long IniciaFuncaoAASiTefInterativo (Funcao, Valor, CuponFiscal, DataFiscal, Horario, Operador, ParamAdic, Produtos); IniciaFuncaoAASiTefInterativoA (Resultado, Funcao, Valor, CuponFiscal, DataFiscal, Horario, Operador, ParamAdic, Produtos);

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 16 de 72

Parmetro Resultado Funcao Valor

Binria Tipo ----long char *

Tipo F F V

CuponFiscal DataFiscal Horario Operador ParamAdic

char * char * char * char * char *

V F F V V

Produtos

char *

V

ASCII Descrio Tamanho 6 Contm o resultado de resposta chamada da rotina 6 Seleciona a forma de pagamento, conforme a tabela Cdigo de Modalidades a seguir. Contm o valor a ser pago contendo o separador decimal (,).Deve sempre ser passado com duas casas decimais aps a vrgula (,). Caso a operao no tenha um valor definido a priori (p/ex. recarga de pr-pago), esse campo deve vir zerado Mx. 20 Nmero do Cupon Fiscal correspondente venda 8 Data Fiscal no formato AAAAMMDD 6 Horrio Fiscal no formato HHMMSS Mx. 20 Identificao do operador de caixa Permite que o aplicativo limite o tipo de meio de pagamento. Ele opcional e pode ser passado vazio. Quando esse campo for utilizado a CliSiTef ir limitar os menus de navegao apenas aos cdigos no presentes na lista. Vide item 5 para a descrio do formato interno deste campo Contm a lista de produtos que o cliente est adquirindo no terminal de Auto-Atendimento. obrigatrio pois tais produtos faro parte integrante do comprovante da operao de Tef a ser impresso. Vide item 6 para a descrio do formato interno deste campo

No retorno a rotina devolve um dos seguintes valores: 10000 deve ser chamada a rotina de continuidade do processo > 0 negada pelo autorizador; -1 mdulo no inicializado; -2 operao cancelada pelo operador; -3 fornecida uma modalidade invlida; -4 falta de memria para rodar a funo; -5 sem comunicao com o SiTef; -6 operao cancelada pelo usurio; -40 transao negada pelo Sitef; -43 falha no pinpad; -50 transao no segura; -100 erro interno do mdulo; outro nmero negativo erros detectados internamente pela rotina Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 17 de 72

IMPORTANTE: Essa rotina apenas inicia o processo de pagamento. Se o retorno for 10000 o processo de pagamento deve ser continuado atravs da rotina ContinuaFuncaoSiTefInterativo ou ContinuaFuncaoSiTefInterativoA at que esta ltima devolva um resultado final (vide item que descreve esta funo). Cdigos de Modalidades (a ser passado no parmetro Funcao acima) Descrio A CliSiTef permite que o operador escolha a forma de pagamento atravs de menus Cheque Dbito Crdito Fininvest Carto Benefcio Crdito Centralizado Carto Combustvel Parcele Mais Redecard Benefcio Refeio Benefcio Alimentao Carto Infocard Venda com carto Gift Telemarketing: Inicia a coleta dos dados da transao no ponto necessrio para tratar uma transao de carto de crdito digitado Abre o leque das transaes Gerenciais Teste de comunicao com o SiTef Menu Re-impresso Re-impresso comprovante especfico Re-impresso ultimo comprovante Pr-autorizao Captura de pr-autorizao Consulta Bnus Consulta Saldo Carto Presente Consulta Saldo Carto Gift Consultas Carto SEM Vendas Carto EMS

Funcao 0 1 2 3 4 5 6 7 8 10 11 12 15 100

110 111 112 113 114 115 116 150 151 152 160 161 200

Cancelamento Normal: Inicia a coleta dos dados no ponto necessrio para fazer o cancelamento de uma transao de dbito ou crdito, sem ser necessrio passar antes pelo menu de transaes administrativas Cancelamento Telemarketing: Similar a modalidade 200 s que para a funo de 201 cancelamento de transao de crdito digitado Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 18 de 72

202 203 213 250 251 257 260 261 264 300 301 310 311 312 313 350 351 400 401 410 500 501 502 530 531 532 533 540 541 542 543 550 552 553 554

Cancelamento Pr-autorizao Cancelamento da Captura da Pr-autorizao Cancelamento de Venda com Carto Gift Cancelamento de Consulta Bnus Cancelamento Recarga Carto Presente Cancelamento Recarga Carto Gift Recarga Carto Bnus Recarga Carto Presente Recarga Carto Gift Recarga de pr-pago Recarga de pr-pago desvinculada do pagamento Corresponde Bancrio (Pagamento de Contas) Pagamento de Contas com Saque Consulta para Pagamento Desvinculado (Genrico) Pagamento Desvinculado (Genrico) Venda Produto (Sem Valor) Cancelamento de Venda Produto (Sem Valor) Vale-Gs Validao Vale-Gs Troco Surpresa Consulta Detalhada ACSP Consulta Detalhada Serasa Consulta Cadastral Infocard Consulta Fidelize (PBM) Venda Fidelize (PBM) Cancelamento Parcial Fidelize (PBM) Cancelamento Total Fidelize (PBM) Pr-autorizao PharmaSystem Recuperao de pr-autorizao PharmaSystem Venda PharmaSystem Cancelamento PharmaSystem Obtem Autorizao PBM Venda PBM Cancelamento Parcial PBM Cancelamento Total PBM

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 19 de 72

560 561 562 563 564 600 605 606 607 610 611 612 613 614 661 662 665 667 668 669 670 671 680 700 701 702 703

Consulta Telenet/Funcional Card (PBM) Venda Telenet/Funcional Card (PBM) Cancelamento Telenet/Funcional Card (PBM) Pr-autorizao Telenet/Funcional Card (PBM) Consulta cliente Telenet/Funcional Card (PBM) Consulta Saldo Consulta Saldo Carto Combustvel Consulta Redes Carto Combustvel Consulta Produtos Carto Combustvel Transaes SPTrans (Bilhete nico) Consulta Saldo SPTrans (Bilhete nico) Recarga SPTrans (Bilhete nico) Carto Marisa (Orbital) Pagamento de Recarga SPTrans (Bilhete nico) Consulta Saque Banco IBI Saque Banco IBI Resgate de Pontos Emisso de Pontos Cancelamento da Emisso de Pontos Carga de Pr Pago Cancelamento de Carga de Pr Pago Consulta Saque com Saque Banco IBI Consulta Saldo Pr Pago Venda Oi Paggo Cancelamento Oi Paggo Pagamento de contas Cancelamento de Pagamento Carto Benefcio

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 20 de 72

3.3

Confirmao ou no do Pagamento Rotina chamada pelo aplicativo para fechar o ciclo transacional. Ela deve ser acionada no momento que o comprovante Fiscal for fechado e recebe como parmetros um indicador de se a transao foi concretizada ou se deve ser estornada. Recebe tambm os campos que permitem identificar a transao que est sendo finalizada. Esta funo tambm deve ser utilizada para desfazer uma transao interrompida por uma queda de energia ou qualquer outro problema no aplicativo. Notar que essa rotina confirma ou cancela TODOS os meios de pagamento vinculados ao Nmero do Cupom Fiscal passado como parmetro. void FinalizaTransacaoSiTefInterativo (Confirma, NumeroCuponFiscal, DataFiscal, Horario); FinalizaTransacaoSiTefInterativoA (Confirma, NumeroCuponFiscal, DataFiscal, Horario); Parmetro Confirma CuponFiscal DataFiscal Horario Binria Tipo short char * char * char * ASCII Descrio Tipo Tamanho F 1 Indica se a transao deve ser confirmada (1) ou estornada (0) V Mx. 20 Nmero do Cupon Fiscal correspondente venda F 8 Data Fiscal no formato AAAAMMDD F 6 Horrio Fiscal no formato HHMMSS

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 21 de 72

3.4

Leitura de carto Este grupo de funes permite que o aplicativo capture uma trilha magntica genrica. No deve ser utilizada para tratamento das transaes de pagamento mas apenas para leitura de cartes internos do estabelecimento comercial (p/ex. carto de supervisor). O formato de ativao o seguinte: long LeCartaoInterativo (Mensagem); // Descontinuada Utilize LeCartaoSeguro long LeTrilha3 (Mensagem); LeCartaoInterativoA (Resultado, Mensagem); // Descontinuada Utilize LeCartaoSeguroA Parmetro Resultado Mensagem Binria Tipo ----char * ASCII Descrio Tipo Tamanho F 6 Contm o resultado de resposta chamada da rotina V Mensagem a ser apresentada no visor do PinPad

No retorno a rotina devolve os mesmos valores que a rotina de pagamento. O aplicativo obtm as trilhas atravs da chamada a funo de continuao do processo interativo. IMPORTANTE: Essas funes NO podem ser utilizadas durante a execuo do lao ContinuaFuncaoSiTefInterativo. Para esse tipo de situao existem as verses que fazem o acesso direto a leitora de carto descritas a seguir.

long LeCartaoDireto (Mensagem, Trilha1, Trilha2); // Descontinuada Utilize LeCartaoDiretoSeguro LeCartaoDiretoA (Resultado, Mensagem, Trilha1, Trilha2); // Descontinuada Utilize LeCartaoDiretoSeguroA Parmetro Resultado Mensagem Trilha1 Trilha2 Binria Tipo ----char * char * char * ASCII Descrio Tamanho 6 Contm o resultado de resposta chamada da rotina V Mensagem a ser apresentada no visor do PinPad V Mx. 128 No retorno contm, caso exista, a Trilha 1 lida V Mx. 64 No retorno contm, caso exista, a Trilha 2 lida

Tipo F

No retorno a rotina devolve o valor 0 (zero) caso tenha sido executada corretamente e um valor diferente de zero em caso de erro ou interrupo.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 22 de 72

void InterrompeLeCartaoDireto (void) Esta rotina somente deve ser utilizada quando o aplicativo de automao chamou a LeCartaoDireto ou LeCartaoDiretoA e deseja desistir da leitura. Ao ser chamada ela fora que a rotina chamada retorne com status de erro. Cabe a automao controlar essa situao e reconhecer que o erro retornado pela rotina no um erro em si mas um retorno forado pela chamada a rotina InterrompeLeCartaoDireto. Essa rotina no tem parmetros e no devolve nenhum resultado. long LeCartaoDiretoEx (Mensagem, Trilha1, Trilha2, Timeout, TestaCancelamento); // Descontinuada Utilize LeCartaoDiretoSeguro LeCartaoDiretoExA (Resultado, Mensagem, Trilha1, Trilha2, Timeout); // Descontinuada Utilize LeCartaoDiretoSeguroA Parmetro Resultado Mensagem Trilha1 Trilha2 Timeout TestaCancela mento Binria Tipo ----char * char * char * short Rotina ASCII Descrio Tamanho 6 Contm o resultado de resposta chamada da rotina V Mensagem a ser apresentada no visor do PinPad V Mx. 128 No retorno contm, caso exista, a Trilha 1 lida V Mx. 64 No retorno contm, caso exista, a Trilha 2 lida F 6 Define o tempo mximo de espera pela passagem do carto em segundos. Se zero, espera at que o carto seja passado --------Rotina da aplicao de automao que retorna 0 se para continuar aguardando pelo carto e 1 caso deva interromper o processo de aguardar a passagem do carto

Tipo F

No retorno a rotina devolve o valor 0 (zero) caso tenha sido executada corretamente e um valor diferente de zero em caso de erro ou interrupo.

Rotinas de captura seguraOs rotinas seguintes tm seu funcionamento condicionado a configurao do arquivo com extenso cha no SiTef, caso a configurao no esteja feita, essas funes retornam o erro MODO_SEGURO_NAO_ATIVO (12). Int LeCartaoDiretoSeguro (Mensagem, TipoCampoTrilha1, Trilha1, TipoCampoTrilha2, Trilha2, Timeout, TestaCancelamento); LeCartaoDiretoSeguroA (Resultado, Mensagem, TipoCampoTrilha1, Trilha1, TipoCampoTrilha2, Trilha2, Timeout); Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 23 de 72

Parmetro Resultado MensagemTipoCampoTrilha1

Binria Tipo ----char * char * char * char * char * short Rotina

Tipo F

Trilha1TipoCampoTrilha1

Trilha2 Timeout TestaCancelame nto

ASCII Descrio Tamanho 6 Contm o resultado de resposta chamada da rotina V Mensagem a ser apresentada no visor do PinPad F 12 Indica o tipo de campo que foi retornado na trilha 1, se ele mascarado, criptografado ou em Hash. V Mx. 128 No retorno contm, caso exista, a Trilha 1 lida F 12 Indica o tipo de campo que foi retornado na trilha 2, se ele mascarado, criptografado ou em Hash. V Mx. 64 No retorno contm, caso exista, a Trilha 2 lida F 6 Define o tempo mximo de espera pela passagem do carto em segundos. Se zero, espera at que o carto seja passado --------Rotina da aplicao de automao que retorna 0 se para continuar aguardando pelo carto e 1 caso deva interromper o processo de aguardar a passagem do carto

No retorno a rotina devolve o valor 0 (zero) caso tenha sido executada corretamente e um valor diferente de zero em caso de erro ou interrupo. Os campos TipoCampoTrilha1 e TipoCampoTrilha2 indicam o tipo de campo retornado, respeitando o valor estabelecido para os campos sensveis, com 202x para campos mascarados, 203x para o Hash dos campos e 204x para campos criptografados. long LeCartaoSeguro (Mensagem); LeCartaoSeguroA (Resultado, Mensagem); Parmetro Resultado Mensagem Binria Tipo ----char * ASCII Descrio Tipo Tamanho F 6 Contm o resultado de resposta chamada da rotina V Mensagem a ser apresentada no visor do PinPad

No retorno a rotina devolve os mesmos valores que a rotina de pagamento. O aplicativo obtm as trilhas atravs da chamada a funo de continuao do processo interativo. Os campos retornados no processo interativo so os referentes aos campos sensveis (2021 a 2046). IMPORTANTE: Essas funes NO podem ser utilizadas durante a execuo do lao ContinuaFuncaoSiTefInterativo. Para esse tipo de situao existem as verses que fazem o acesso direto a leitora de carto descritas a seguir.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 24 de 72

3.5

Leitura de senha

Esta funo permite que o aplicativo capture no PinPad uma senha de um cliente de carto do prprio estabelecimento comercial (carto proprietrio). No deve, em nenhuma hiptese, ser utilizada para captura de senhas dos cartes tradicionais. O formato de ativao o seguinte: long LeSenhaInterativo (Parametros); LeSenhaInterativoA (Resultado, Parametros); Parmetro Resultado Parametros Binria Tipo ----char * ASCII Descrio Tamanho 6 Contm o resultado de resposta chamada da rotina F 64 Dados gerados por uma biblioteca de segurana fornecida pela Software Express para habilitar a captura da senha do cliente. Neste caso, a CliSiTef poder interagir com o SiTef para obter ou validar os dados de segurana necessrios para a captura

Tipo F

No retorno a rotina devolve os mesmos valores que a rotina de pagamento. O aplicativo obtm a senha atravs da chamada a funo de continuao do processo interativo. IMPORTANTE: Essas funes NO podem ser utilizadas durante a execuo do lao ContinuaFuncaoSiTefInterativo. Para esse tipo de situao existem as verses que fazem o acesso direto a leitora de senhas descritas a seguir.

long LeSenhaDireto (Parmetros, SenhaCliente); LeSenhaDiretoA (Resultado, Parmetros, SenhaCliente); Parmetro Resultado Parametros Senha Binria Tipo ----char * char * ASCII Descrio Tipo Tamanho F 6 Contm o resultado de resposta chamada da rotina F 64 Dados gerados por uma biblioteca de segurana fornecida pela Software Express para habilitar a captura da senha do cliente F 20 Senha do cliente, em formato criptografado, e que deve ser passada para uma rotina personalizada por cliente para sua de-criptografia

No retorno a rotina devolve o valor 0 (zero) caso tenha sido executada corretamente e um valor diferente de zero em caso de erro ou cancelamento pelo usurio. Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 25 de 72

3.6

Continuao do processo de coleta interativo Esta funo deve ser chamada de forma contnua at no existam mais informaes para serem trocadas entre a aplicao e a CliSiTef, conforme descrito nos resultados devolvidos por ela. O formato de ativao o seguinte: long ContinuaFuncaoSiTefInterativo (Comando, TipoCampo, TamMinimo, TamMaximo, Buffer, TamBuffer, Continua); ContinuaFuncaoSiTefInterativoA (Resultado, Comando, TipoCampo, TamMinimo, TamMaximo, Buffer, TamBuffer, Continua); Parmetro Resultado Comando Binria TipoCampo ----long * ASCII Descrio Tamanho 6 Contm o resultado de resposta chamada da rotina 12 Contm no retorno: 0 caso a CliSiTef esteja devolvendo algum dado referente a transao no campo Buffer 0 indica o Prximo Comando a ser executado pelo aplicativo. Os comando vlidos esto descritos em 3.6.1 12 Contm o cdigo do tipo de campo que a automao deve tratar. Os tipos existentes esto descritos em 3.6.2 6 Quando o Comando for uma coleta de dados, contm o tamanho Mnimo e Maximo do campo 6 a ser lido rea de transferncia de dados entre a aplicao e a CliSiTef. Deve possuir, no mnimo, 20.000 bytes. Se automao no estiver enviando dados para a CliSiTef, deve passar esse campo vazio 6 Tamanho da rea reservada pela automao para o campo Buffer 6 Contem instrues para a CliSiTef a respeito do Comando executado segundo a seguinte codificao: 0 Continua a transao 1 Retorna, quando possvel, a coleta ao campo anterior 2 Cancela o pagamento de conta atual, mantendo os anteriores em memria, caso existam, permitindo que tais pagamentos sejam enviados para o

Tipo F F

TipoCampo TamMinimo TamMaximo Buffer

long * short * short * char *

F F F V

TamBuffer Continua

long long

F F

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 26 de 72

10000 -1

SiTef e at mesmo permite incluir novos pagamentos. Retorno vlido apenas nas coletas de valores e data de vencimento de um pagamento de contas. Continua a transao, vide Obs a seguir Encerra a transao

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 27 de 72

Obs.: Como nem sempre o campo solicitado pela rotina precisa ser lido no momento da solicitao a rotina aceita o valor 10000 para indicar que o campo no foi coletado naquele momento mas sim previamente, no momento do fechamento da venda. Um exemplo tpico desta situao ocorre quando a automao j fechou com o cliente uma forma de pagamento parcelado com carto de crdito. Neste caso a automao pode, no momento que a coleta campo for solicitada para ler o nmero de parcelas, j devolver o nmero previamente combinado sem capturar esse dado do usurio. Notar que nessa forma de uso imprescindvel que o dado seja apresentado para o operador que dever confirmar veracidade dele antes da rotina devolver o mesmo para a CliSiTef. Notar tambm que esta forma de uso no obrigatria, podendo a automao sempre capturar os dados da tela. O uso desta caracterstica poder alterar o fluxo de coleta ou qualquer regra definida pelas bandeiras, por isso antes de sua utilizao realizar consulta a departamento de Suporte da Software Express que verificara a necessidade de autorizao prvia pelas bandeiras. No retorno a rotina devolve os mesmos valores da rotina de Pagamento. Adicionalmente a estes valores, a funo devolve o valor 0 (Zero) para indicar que a funo solicitada foi concluda com sucesso (p/ex: se for um pagamento, ele foi aprovado pela administradora). importante salientar que a chamada que inicia o processo Interativo (aquela que feita aps ter sido recebido o valor 10000 na chamada de uma funo de Pagamento, Gerencial, etc...) deve ser feita com pProximoComando, pTipoCampo, pTamanhoMinimo, pTamanhoMaximo e ContinuaNavegacao contendo o valor zero (0). Notar tambm que a automao comercial deve ficar em lao chamando a rotina aqui descrita at que ela receba um resultado diferente de 10000 ou que a prpria automao desista de continuar o processo, conforme mostrado a seguir:

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 28 de 72

Inicializa Comando, TipoCampo, TamMinimo, TamMaximo, Continua com 0 Inicializa Comando, TipoCampo, TamMinimo, TamMaximo, Continua com 0

Inicializa TamBuffer com o tamanho do Buffer de comunicao

Chama a rotina ContinuaFuncaoSiTefInterativo

Resultado?

10000

Executa o Comando solicitado

Inicializa TamBuffer com o tamanho do Buffer de comunicao Fim Chama a rotina ContinuaFuncaoSiTefInterativo

Resultado?

10000

Executa o Comando solicitado

Fim

Caso a automao deseje encerrar o processo de coleta ela deve, necessariamente, chamar a rotina ContinuaFuncaoSiTefInterativo passando 1 (menos um) no campo Continua. Caso o processo de coleta deva continuar, ela no deve modificar nenhum dos campos preenchidos pela CliSiTef a no ser o Buffer que, na nova chamada, deve conter o resultado da coleta (se Comando diferente de 0) ou o dado original se Comando veio com 0. Notar ainda que mesmo que o Buffer contenha um campo coletado pela automao, o seu tamanho deve ser o recomendado por esse documento pois ir conter, no retorno, novos dados fornecidos pela rotina. Notar que o campo Buffer pode ter sido preenchido pela rotina com algum dado para ser Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 29 de 72

memorizado, apresentado no visor ou outro motivo, segundo o que est especificado na descrio de cada comando que o aplicativo de automao deve tratar. IMPORTANTE: obrigatrio que a automao SEMPRE colete campos no tratveis por ela ou seja, se ela receber algum cdigo em TipoCampo que ela desconhea ou no deseje tratar, que a informao seja capturada pela digitao pelo operador da informao solicitada.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 30 de 72

3.6.1 Tabela de valores para o campo Comando A seguir apresentamos os valores possveis para o campo Comando e a atitude que a aplicao deve executar ao receb-lo: Comando 0 1 2 3 4 11 12 13 14 15 16 20 21 Descrio Est devolvendo um valor para, se desejado, ser armazenado pela automao Mensagem para o visor do operador Mensagem para o visor do cliente Mensagem para os dois visores Texto que dever ser utilizado como cabealho na apresentao do menu (Comando 21) Deve remover a mensagem apresentada no visor do operador Deve remover a mensagem apresentada no visor do cliente Deve remover mensagem apresentada no visor do operador e do cliente Deve limpar o texto utilizado como cabealho na apresentao do menu Cabealho a ser apresentado pela aplicao Deve remover o cabealho Deve obter uma resposta do tipo SIM/NO. No retorno o primeiro carter presente em Buffer deve conter 0 se confirma e 1 se cancela Deve apresentar um menu de opes e permitir que o usurio selecione uma delas. Na chamada o parmetro Buffer contm as opes no formato 1:texto;2:texto;...i:Texto;... A rotina da aplicao deve apresentar as opes da forma que ela desejar (no sendo necessrio incluir os ndices 1,2, ...) e aps a seleo feita pelo usurio, retornar em Buffer o ndice i escolhido pelo operador (em ASCII) Deve aguardar uma tecla do operador. utilizada quando se deseja que o operador seja avisado de alguma mensagem apresentada na tela Este comando indica que a rotina est perguntando para a aplicao se ele deseja interromper o processo de coleta de dados ou no. Esse cdigo ocorre quando a CliSiTef est acessando algum perifrico e permite que a automao interrompa esse acesso (por exemplo: aguardando a passagem de um carto pela leitora ou a digitao de senha pelo cliente) Deve ser fornecido um campo, sem captura pelo operador ou cliente, cujo tamanho est entre TamMinimo e TamMaximo. O campo deve ser devolvido em Buffer Deve ser lido um campo cujo tamanho est entre TamMinimo e TamMaximo. O campo lido deve ser devolvido em Buffer

22 23

29 30

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 31 de 72

31

34 35

41 42

Deve ser lido o nmero de um cheque. A coleta pode ser feita via leitura de CMC7 ou pela digitao da primeira linha do cheque. No retorno deve ser devolvido em Buffer 0: ou 1: seguido do nmero coletado manualmente ou pela leitura do CMC-7, respectivamente. Quando o nmero for coletado manualmente o formato o seguinte: Compensao (3), Banco (3), Agencia (4), C1 (1), ContaCorrente (10), C2 (1), Numero do Cheque (6) e C3 (1), nesta ordem. Notar que estes campos so os que esto na parte superior de um cheque e na ordem apresentada. Sugerimos que na coleta seja apresentada uma interface que permita ao operador identificar e digitar adequadamente estas informaes de forma que a consulta no seja feita com dados errados, retornando como bom um cheque com problemas Deve ser lido um campo monetrio ou seja, aceita o delimitador de centavos e devolvido no parmetro Buffer Deve ser lido um cdigo em barras ou o mesmo deve ser coletado manualmente. No retorno Buffer deve conter 0: ou 1: seguido do cdigo em barras coletado manualmente ou pela leitora, respectivamente. Cabe ao aplicativo decidir se a coleta ser manual ou atravs de uma leitora. Caso seja coleta manual, recomendase seguir o procedimento descrito na rotina ValidaCampoCodigoEmBarras de forma a tratar um cdigo em barras da forma mais genrica possvel, deixando o aplicativo de automao independente de futuras alteraes que possam surgir nos formatos em barras. No retorno do Buffer tambm pode ser passado 2:, indicando que a coleta foi cancelada, porm o fluxo no ser interrompido, logo no caso de pagamentos mltiplos, todos os documentados coletados anteriormente sero mantidos e o fluxo retomado, permitindo a efetivao de tais pagamentos. Anlogo ao Comando 30, porm o campo deve ser coletado de forma mascarada. Deve apresentar um menu de opes e permitir que o usurio selecione uma delas. Na chamada o parmetro Buffer contm as opes no formato classe|1:texto:cdigo:tipo;2:texto:cdigo:tipo;...i:Texto:cdigo:tipo;. A rotina da aplicao deve apresentar as opes da forma que ela desejar (no sendo necessrio incluir os ndices 1,2, ..., nem os cdigos do campo, seu tipo e classe) e aps a seleo feita pelo usurio, retornar em Buffer o ndice i escolhido pelo operador (em ASCII). O cdigo das opes a identificao (5.5 Tabela de cdigos de meios de pagamento, configuraes e menus) do campo da opo, ela pode ser utilizada na identificao da opo escolhida. O cdigo do tipo da opo e a classe da opo (4. 1 Tabela com a codificao utilizada no comando 42, menu identificado.) indicam a natureza da opo. Inicialmente foi implementada apenas a identificao para as formas de pagamento. A idia adicionar os cdigos que identificam as opes do menu para possibilitar que o PDV identifique essas opes sem o auxlio do operador. Os demais menus no esto identificados. Os menus no identificados recebem o valor zerado nesses campos, indicando que ainda no houve a necessidade de classific-los. As classes de opo tm como objetivo definir um contexto para o qual o cdigo que identifica o tipo de opo seja determinado. Assim, uma opo no menu identificada sempre a partir do par tipo da opo e classe da opo. Esse comando passa a ser utilizado quando o parmetro adicional

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 32 de 72

ItemMenuIdentificado for utilizado (5.6 Habilitao de configuraes especiais). Nesse caso, o comando 21, coleta de menu, ser substitudo na maior parte dos casos, sendo obrigao da aplicao estar preparada para tratar os dois comandos, quando esse parmetro estiver habilitado.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 33 de 72

3.6.2 Tabela de valores para TipoCampo A seguir apresentamos os valores possveis para o campo TipoCampo e respectivos significados: TipoCampo Descrio -1 No existem informaes que podem/devem ser tratadas pela automao 0 A rotina est sendo chamada para indicar que acabou de coletar os dados da transao e ir iniciar a interao com o SiTef para obter a autorizao 10 a 99 Informa qual a opo selecionada no menu de navegao de transaes seguindo a e mesma codificao utilizada para definir as restries no pagamento descritas no 3000 a 3999 item 5 100 Contm a modalidade de pagamento no formato xxnn xx corresponde ao grupo da modalidade e nn ao sub-grupo. Vide tabela no final deste documento descrevendo os possveis valores de xx e nn. 101 Contm o texto real da modalidade de pagamento que pode ser memorizado pela aplicao caso exista essa necessidade. Descreve por extenso o par xxnn fornecido em 100 102 Contm o texto descritivo da modalidade de pagamento que deve ser impresso no cupon fiscal (p/ex: T.E.F., Cheque, etc...) 105 Contm a data e hora da transao no formato AAAAMMDDHHMMSS 110 Contm a modalidade de cancelamento no formato xxnn xx corresponde ao grupo da modalidade e nn ao sub-grupo. Vide tabela no final deste documento descrevendo os possveis valores de xx e nn. Retorna quando uma transao for cancelada 111 Contm o texto real da modalidade de cancelamento que pode ser memorizado pela aplicao caso exista essa necessidade. Descreve por extenso o par xxnn fornecido em 110 112 Contm dados adicionais relativos ao carto utilizado na operao de Tef. O formato deste campo uma seqncia de cdigos separados por ponto-e-virgula. Por enquanto o nico cdigo que retorna a palavra EE para indicar que o carto utilizado foi um EasyEntry ou EMV para indicar um carto EMV. Caso tenha sido um carto normal, esse tipo de campo no retornado para a aplicao. 115 Modalidade Ajuste 120 Buffer contm a linha de autenticao do cheque para ser impresso no verso do mesmo 121 Buffer contm a primeira via do comprovante de pagamento (via do cliente) a ser impressa na impressora fiscal. Essa via, quando possvel, reduzida de forma a ocupar poucas linhas na impressora. Pode ser um comprovante de venda ou administrativo 122 Buffer contm a segunda via do comprovante de pagamento (via do caixa) a ser impresso na impressora fiscal. Pode ser um comprovante de venda ou administrativo 123 Indica que os comprovantes que sero entregues na seqncia so de determinado tipo: COMPROVANTE_COMPRAS = "00" COMPROVANTE_VOUCHER = "01" Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 34 de 72

125 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146

147 150 151 153 154 155 156 157

COMPROVANTE_CHEQUE = "02" COMPROVANTE_PAGAMENTO = "03" COMPROVANTE_GERENCIAL = "04" COMPROVANTE_CB = "05" COMPROVANTE_RECARGA_CELULAR = "06" COMPROVANTE_RECARGA_BONUS = "07" COMPROVANTE_RECARGA_PRESENTE = "08" COMPROVANTE_RECARGA_SP_TRANS = "09" COMPROVANTE_MEDICAMENTOS = "10" Cdigo do Voucher Indica, na coleta, que o campo em questo o valor do troco em dinheiro a ser devolvido para o cliente. Na devoluo de resultado (Comando = 0) contm o valor efetivamente aprovado para o troco Contm um ndice que indica qual a instituio que ir processar a transao segundo a tabela presente no final do documento (5 posies) Contm um ndice que indica qual o tipo do carto quando esse tipo for identificvel, segundo uma tabela a ser fornecida (5 posies) Contm o NSU do SiTef (6 posies) Contm o NSU do Host autorizador (15 posies no mximo) Contm o Cdigo de Autorizao para as transaes de crdito (15 posies no mximo) Contm as 6 primeiras posies do carto (bin) Saldo a pagar Valor Total Recebido Valor da Entrada Data da primeira parcela no formato ddmmaaaa Data da parcela no formato ddmmaaaa (reservado) Valor da parcela (reservado) Os campos 141 e 142 so chamados n vezes onde n = contedo do campo 505 Valor gorjeta Valor devoluo Valor de pagamento A rotina est sendo chamada para ler o Valor a ser cancelado. Caso o aplicativo de automao possua esse valor, pode apresent-lo para o operador e permitir que ele confirme o valor antes de pass-lo devolv-lo para a rotina. Caso ele no possua esse valor, deve l-lo. Valor a ser cancelado Contm a Trilha 1, quando disponvel, obtida na funo LeCartaoInterativo Contm a Trilha 2, quando disponvel, obtida na funo LeCartaoInterativo Contem a senha do cliente capturada atravs da rotina LeSenhaInterativo e que deve ser passada a lib de segurana da Software Express personalizada para o estabelecimento comercial de forma a obter a senha aberta Contm o novo valor de pagamento Tipo carto Bnus Nome da instituio Cdigo de Estabelecimento

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 35 de 72

158 160 161 170 171 172 173 174 175 176 200 201 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527

Cdigo da Rede Autorizadora Servio H Nmero do cupom original Nmero Identificador do Cupom do Pagamento Venda Parcelada Estabelecimento Habilitada Nmero Mnimo de Parcelas Parcelada Estabelecimento Nmero Mximo de Parcelas Parcelada Estabelecimento Valor Mnimo Por Parcela Parcelada Estabelecimento Venda Parcelada Administradora Habilitada Nmero Mnimo de Parcelas Parcelada Administradora Nmero Mnimo de Parcelas Parcelada Administradora Saldo disponvel*, saldo do produto especfico (escolar, vale transporte) Saldo Bloqueado Indica que o campo em questo o cdigo do supervisor. A automao, pode, se desejado, validar os dados coletados, deixando o fluxo da transao seguir normalmente caso seja um supervisor aceitvel Tipo do Documento a ser consultado (0 CPF, 1 CGC) Numero do documento (CPF ou CGC) Nmero do Telefone Taxa de Servio Nmero de Parcelas Data do Pr-datado no formato ddmmaaaa Captura se a primeira parcela a vista ou no (0 Primeira a vista, 1 caso contrrio) Intervalo em dias entre parcelas Captura se ms fechado (0) ou no (1) Captura se com (0) ou sem (1) garantia no pr-datado com carto de dbito Nmero de Parcelas CDC Nmero do Carto de Crdito Digitado Data de vencimento do Carto Cdigo de segurana do Carto Data da transao a ser cancelada (DDMMAAAA) ou a ser re-impressa Nmero do documento a ser cancelado ou a ser re-impresso A rotina est sendo chamada para ler o Nmero do cheque segundo o descrito no tipo de comando correspondente ao valor 31 Cdigo do Item Cdigo do Plano de Pagamento Nmero do documento de identidade (RG) A rotina est sendo chamada para ler o Nmero do Telefone A rotina est sendo chamada para ler o DDD de um telefone com at 4 dgitos Valor da primeira parcela Valor das demais parcelas Quantidade de cheques Data de vencimento do cheque

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 36 de 72

529 530 531 532 533 534 535 536 537 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 1122 2053 2054

A rotina est sendo chamada para ler a Data de Abertura de Conta no formato (MMAAAA) Autorizao do supervisor digitada Autorizao do supervisor especial A rotina est sendo chamada para ler a quantidade de parcelas ou cheques Dados adicionais da venda Emitente do cheque O documento pago pela transao Registros de retorno da consulta cheque CDL-Poa Cdigo de rea da cidade do cheque Endereo Nmero do endereo Andar do endereo Conjunto do endereo Bloco do endereo CEP do endereo Bairro do endereo CPF para consulta AVS Resultado da consulta AVS Nmero de dias do pr-datado Nmero de Ciclos Cdigo da Ocorrncia Cdigo de Loja (EMS) Cdigo do PDV (EMS) Dados Retornados (EMS) Ramal do Telefone rgo Expedidor do RG Estado onde foi emitido o RG Data de expedio do RG Matrcula do Operador Nome do Operador Matrcula do Conferente Nome do Conferente Percentual de Juros Aplicado Matrcula do Autorizador Data do Cupom Fiscal da Transao Original Hora do Cupom Fiscal da Transao Original Dados do Carn ou cdigo resumido EMS Cdigo de milhas diferenciadas 1 Valor das milhas diferenciadas 1 Cdigo de milhas diferenciadas 2 Valor das milhas diferenciadas 2 Quantidade mxima de produtos em uma venda Menu (produto) selecionado Visanet Tipo Crdito CDC (1 CDC Produto; 2 CDC Servio)

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 37 de 72

2066 2067 2068 2078 2079 2082 2083 2089 2093 2109 4008 4029 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613

Nome da filial Mensagem do autorizador a ser exibida junto com o menu de valores (Se o terminal permitir) Valor selecionado atravs de menu Cdigo do servio Valor do servio Nosso nmero Valor total do produto contendo o separador decimal (,) e duas casas decimais aps a vrgula. Nmero de identificao da fatura. Cdigo do atendente Senha temporria Percentual de desconto concedido pela administradora (2 casas decimais) Valor do desconto total, em centavos Codificao dos campos utilizados na Recarga de Pr-pago Nome da Operadora de Celular selecionada para a operao Valor selecionado para a recarga DDD + Nmero do celular a ser recarregado Digito(s) verificadores Cep da localidade onde est o terminal no qual a operao est sendo feita Nsu do SiTef correspondente a transao de pagamento da Recarga com carto Nsu do Host Autorizador correspondente a transao de pagamento da Recarga com carto Cdigo da Filial que atendeu a solicitao de recarga do celular Mensagem da Operadora de Celular Cdigo da rede autorizadora da recarga de celular Codificao dos campos utilizados no Correspondente Bancrio Data de vencimento do ttulo/convnio no formato ddmmaaaa Valor Pago* Valor Original Valor Acrscimo Valor do Abatimento Data Contbil do Pagamento Nome do Cedente do Titulo. Deve ser impresso no cheque quando o pagamento for feito via essa modalidade ndice do documento, no caso do pagamento em lote, dos campos 600 a 604 que viro em seguida Modalidade de pagamento utilizada na funo de correspondente bancrio. Segue a mesma regra de formatao que o campo de nmero 100 Valor total dos ttulos efetivamente pagos no caso de pagamento em lote Valor total dos ttulos no pagos no caso de pagamento em lote NSU Correspondente Bancrio Tipo do documento: 0 Arrecadao, 1 Titulo (Ficha de compensao), 2 Tributo Contm os dados do cheque utilizado para efetuar o pagamento das contas no

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 38 de 72

614 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 703 704 705 706 707 708 709 710

seguinte formato: Compensao (3), Banco (3), Agencia (4), ContaCorrente (10), e Numero do Cheque (6), nesta ordem. Notar que a ordem a mesma presente na linha superior do cheque sem os dgitos verificadores NSU SiTef transao de pagamento NSU SiTef da transao original (transao de cancelamento) NSU Correspondente Bancrio da transao original (transao de cancelamento) Valor do Benefcio Cdigo impresso no rodap do comprovante do CB e utilizado para erimpresso/cancelamento Cdigo em barras pago. Aparece uma vez para cada ndice de documento (campo 607). O formato o mesmo utilizado para entrada do campo ou seja, 0:numero ou 1:numero Recibo de retirada Nmero do banco Agncia Dgito da agncia Conta Dgito da conta Valor em dinheiro Valor em cheque Nome do depositante Documento original de Correspondente Bancrio Chave do usurio utilizada para comunicao com o Banco Seqencial nico da chave do usurio no Banco Cdigo da Agncia de relacionamento da loja do correspondente Nmero do Cheque CB Nmero da Fatura Nmero do Convnio Data Inicial do Extrato (DDMMAAAA) Data Final do Extrato (DDMMAAAA) Perodo de Apurao Cdigo da Receita Federal Valor da Receita Bruta Percentual Aplicado Valor Principal Valor Multa Valor Juros Nmero de Referncia Cdigo GPS Competncia GPS Identificador Contribuinte Valor INSS Valor Outras Entidades Permite Pagamento de Contas Com Dinheiro (0 No Permite; 1 Permite) Permite Pagamento de Contas Com Cheque (0 No Permite; 1 Permite)

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 39 de 72

711 712 714 719 722 723 724 725 726 727 729 730 731

Permite Pagamento de Contas Com TEF Dbito (0 No Permite; 1 Permite) Permite Pagamento de Contas Com TEF Crdito (0 No Permite; 1 Permite) Valor do Saque Valor do produto ValeGs Valor mnimo de pagamento Identificao do Cliente, apenas para recebimento Carrefour Venda Crdito Parcelada com Plano Habilitada Venda Crdito com Autorizao a Vista Habilitada Venda Crdito com Autorizao Parcela com Plano Habilitada Venda Boleto Habilitada Valor mximo de pagamento Nmero Mximo de Formas de Pagamento, 0 para sem limite Tipo de Pagamento Habilitado, repete n vezes, onde n o nmero de formas de pagamento habilitadas: 00 01 02 Dinheiro Cheque TEF Dbito

732

Dados a serem enviados para o Tipo de Pagamento (Campo 730) retornado anteriormente, repete n vezes, onde n o nmero de dados a serem enviados para o respectivo Tipo de Pagamento: 00 Campo Reservado 01 Tipo de Entrada do Cheque 02 Dados do Cheque 03 Rede Destino 04 NSU do SiTef da transao de TEF 05 Data do SiTef da transao de TEF (no utilizado, uso futuro) 06 Cdigo da Empresa (Loja) da transao de TEF 07 NSU do Host da transao de TEF 08 Data do Host da transao de TEF (Campo 105 CliSiTef) 09 Cdigo de Origem (Estabelecimento) da transao de TEF 10 Servio Z da transao de TEF 11 Cdigo de Autorizao da transao de TEF 12 Valor do Cheque Limite minimo de venda para promoes flexveis, com 12 dgitos sendo os 2 ltimos dgitos referentes as casas decimais Saldo devedor atual, apenas para recebimento Carrefour Cdigo do Limite Quantidade de Titulares Data de Abertura da Empresa (DDMMAAAA) Nome do Titular Complemento do Endereo Cidade Estado

734 736 1131 1132 1133 1134 1135 1136 1137

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 40 de 72

Total de consultas anteriores Valor acumulado das consultas anteriores, contendo 2 dgitos decimais porm sem o caractere decimal. 1202 Total de consultas efetuadas no dia. 1203 Valor acumulado das consultas no dia, contendo 2 dgitos decimais porm sem o caractere decimal. 1204 Total de consultas de cheques pr-datados realizados no perodo. 1205 Valor acumulado de cheques pr-datados, contendo 2 dgitos decimais porm sem o caractere decimal. 2125 Nmero da parcela (2 caracteres) (Hotcard) 2126 Seqencial da transao (6 caracteres) (Hotcard) Codificao de campos de pinpad remoto 650 Abertura de pinpad remoto 651 Fechamento de pinpad remoto 652 Comando de aborta do pinpad remoto 653 Escrita de pinpad remoto 654 Leitura de pinpad remoto Codificao de campos de ValeGs 700 Operadora de ValeGs 701 Produto ValeGs 702 Nmero do ValeGs 719 Valor Produto ValeGs Codificao dos campos utilizados nas consultas PBM e EDMCard (Medicamentos) 1010 Quantidade de medicamentos 1011 ndice do medicamento 1012 Cdigo do medicamento 1013 Quantidade autorizada 1014 Preo mximo ao consumidor 1015 Preo recomendado ao consumidor 1016 Preo de venda na farmcia 1017 Valor de reembolso na farmcia 1018 Valor reposio na farmcia 1019 Valor subsdio do convnio 1020 CNPJ convnio 1021 Cdigo do plano do desconto 1022 Possui receita mdica 1023 CRM 1024 UF 1025 Descrio do produto* 1026 Cdigo do produto 1027 Quantidade do produto 1028 Valor do produto 1029 Data da receita mdica 1030 Cdigo de autorizao PBM 1031 Quantidade estornada Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 41 de 72

1200 1201

1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 4000 4001 4002 4003 4004 4005 4006 4007 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4030 4031 4032

Cdigo de estorno PBM Preo recomendado consumidor a vista Preo recomendado consumido para desconto em folha Percentual de reposio da farmcia Comisso de reposio Tipo de Autorizao Cdigo do conveniado Nome do conveniado Tipo de Medicamento (01Medicamento, 02-Manipulao, 03-Manipulao Especial, 04-Perfumaria) Descrio do Medicamento Condio p/venda: Se 0 obrigatrio utilizar preo Funcional Card (PF) Se 1 pode vender por preo inferior ao preo PF Preo funcional card Preo praticado Status do medicamento Quantidade receitada Referncia Indicador da venda (0-Produto venda carto 1-Produto venda a vista) Grupo de Produto (EDMCard: 0 Medicamento; 1 Perfumaria.) Status da Pr-Autorizao CRF UF do CRF Tipo de venda Valor total PBM Valor a vista PBM Valor carto PBM Nosso nmero PBM Preo bruto Preo lquido Valor a receber da Loja, em centavos Nmero do lote gerado pela Central Valor total a receber da loja Valor total a receber da loja Soma dos valores da Operao Nome da operadora Nome da empresa conveniada Quantidade de dependentes Cdigo do dependente Nome do dependente Valor a receber do conveniado Valor liquido total, em centavos Cdigo da Operadora Selecionada (dever ser gravado para posterior envio nas demais transaes) Campo de retorno de dados livres referentes s transaes PBM.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 42 de 72

4033 1050 1051 1052 1053 1054 1055 1056 1057 1058 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1030 2014 2015 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

Tipo de documento PBM (0 = CRM, 1 = CRO) Codificao dos campos utilizados na ACSP Nome Data de nascimento Nome da me Nmero do ttulo de eleitor Endereo do telefone consultado CEP do telefone consultado Cidade do telefone consultado UF do telefone consultado Dados adicionais Registro analtico CHECKCHECK Registro analtico ACSP Registro analtico SERASA Imagem tela analtica ACSP Imagem tela analtica SERASA Motivo do cancelamento Tipo de consulta CNPJ Empresa Conveniada Cdigo da administradora Dados tabela Telecheque Codificao de campos utilizados nos Cartes Combustvel Matrcula do motorista Placa do veculo Quilometragem Quantidade de litros Combustvel principal Produtos de combustvel Codificao de campos especiais Campo carto novo Saldo comum, saldo do passe comum PAN do carto presente Codificao de campos utilizados nos SiT(s) que implementam o protocolo 4 Campo administrativo Campo livre Resultado da leitora SmartNet Dados obtidos da leitora aps uma operao de dbito do carto SmartVR ou Sodexho Campo de mensagem do servio D, para mensagens 0x0400 Dados a serem enviados PARA a leitora SmartNet. Tipo de criptografia ndice MasterKey Chave de criptografia Senha do carto Cdigo de resposta do autorizador

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 43 de 72

Bin da rede Nmero serial do CHIP Registro de controle do CHIP Data primeiro vencimento Valor total Valor financiado Percentual multa Juros de mora TAC (Taxa de administrao) Opo Menu Visa Valor pagamento em dinheiro Cdigo consulta cheque (Genrica EMS) Cdigo Produto Hopi-Hari Descrio Produto Hopi-Hari Quantidade Mxima de produtos Hopi-Hari Produtos Hopi-Hari Informaes adicionais de comprovante 2301 Rodap do comprovante da via estabelecimento Campos reservados para uso da IntPos.dll 8000 a 9999 Campos reservados * Campos utilizados em um ou mais produtos. Notar que nem todos os campos so retornados em todas as transaes. Alm disso, existem campos que somente so retornados se a transao foi aprovada. O aplicativo de automao deve ignorar aqueles campos que no desejar/no souber tratar uma vez que, em verses futuras da CliSiTef, novos campos podero ser disponibilizados. Notar que a forma correta de ignorar estes campos executar a funo definida em ProximoComando ou simplesmente ignorar o dado retornado para a aplicao quando ProximoComando for 0.

2011 2012 2013 2017 2018 2019 2020 2047 2048 2053 2064 2065 2120 2121 2122 2123

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 44 de 72

Cabe a automao comercial memorizar os comprovantes para impresso na hora apropriada, segundo a legislao Fiscal vigente. J no caso do Correspondente Bancrio ou das Funes Administrativas, a impresso de qualquer comprovante deve ser feita no momento que eles forem disponibilizados para a automao e a informao de se eles foram impressos corretamente ou no passada pela funo ContinuaFuncaoSiTefInterativo atravs do valor 0 ou -1, respectivamente, colocado em Continua. Para maior comodidade, o campo 5501 ser passado automao em todo incio de uma transao do tipo Correspondente Bancrio. 3.6.3 Tabela de Eventos TipoCampo 5000 5001 5002 5003 5004 5005 5006 5007 5008 5009 5010 5011 5012 5013 5501 3.7 Descrio Eventos de coleta Indica que a biblioteca est aguardando a leitura de um carto Indica que a biblioteca est esperando a digitao da senha pelo usurio Indica que a biblioteca est esperando a digitao dos dados de confirmao positiva pelo usurio Indica que a biblioteca est aguardando a leitura do bilhete nico Indica que a biblioteca est aguardando a remoo do bilhete nico Indica que a transao foi finalizada Confirma Dados Favorecido SiTef Conectado SiTef Conectando Consulta OK Colher Assinatura Coleta Novo Produto Confirma Operao Confirma Cancelamento Outros eventos Incio de uma transao do tipo Correspondente Bancrio.

Correspondente Bancrio (Pagamento de Contas) Esta funo permite que o aplicativo de automao aceite o pagamento de contas diversas de acordo com o contrato firmado entre ele e um Banco Correspondente. O formato de ativao desta funcionalidade o seguinte: long CorrespondenteBancarioSiTefInterativo (CuponFiscal, DataFiscal, Horario, Operador, ParamAdic); long CorrespondenteBancarioSiTefInterativoA (Resultado, CuponFiscal, DataFiscal, Horario, Operador, ParamAdic);

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 45 de 72

Onde os parmetros possuem a mesma funo j descrita para o Pagamento. A lgica de funcionamento desta funo a mesma no pagamento de uma compra feita pelo cliente ou seja, deve-se chamar a funo ContinuaFuncaoSiTefInterativo at que o resultado seja diferente de 10000. Essa funo, dada a diversidade de produtos ofertados pelos Bancos Correspondentes pode, inclusive, executar uma operao de TEF para concretizar o pagamento de uma conta. Notar que os campos de retorno 600 a 604 retornam diversas vezes, uma para cada ttulo ou convnio pago, no caso de pagamento em lote. O campo 607 indica qual o ndice (seqncia) de pagamento ao qual se referem os campos 600 a 604 que viro a seguir. Como j descrito anteriormente, para o Correspondente Bancrio os comprovantes devolvidos nos campos tipo 121 e 122 devem ser impressos no momento que forem disponibilizados para a automao e a continuao do processo interativo deve seguir normalmente caso no ocorra erro na impresso ou interrompida com -1 caso contrrio. No ParamAdic pode ser passado: {PortaPinPadCB=}, em que indica a porta em que est conectado o pinpad especifico para transaes de Correspondente Bancrio: consulta saldo, saque e recarga celular Bradesco.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 46 de 72

3.8

Teste da presena de PinPad Essa funo, disponibilizada apenas para aplicaes de automao que a necessitem, permite verificar se existe um PinPad conectado na porta serial destinada a ele e se ele est operacional. A forma de chamada desta funo a seguinte: long VerificaPresencaPinPad (void); A rotina no tem parmetros de entrada e no retorno a rotina devolve um dos seguintes valores: 1 Existe um PinPad operacional conectado ao micro; 0 No existe um PinPad conectado ao micro; -1 biblioteca de acesso ao PinPad no encontrada; outro nmero erros detectados internamente pela rotina ou pela biblioteca de acesso ao PinPad

3.9

Define mensagem permanente para o PinPad Permite que seja definida uma mensagem permanente para ser apresentada no PinPad durante o tempo que ele no est em uso. O formato de ativao da rotina o seguinte: long EscreveMensagemPermanentePinPad (Mensagem); EscreveMensagemPermanentePinPadA (Resultado, Mensagem); Parmetro Resultado Mensagem Binria TipoCampo ----char * ASCII Descrio Tamanho 6 Contm o resultado de resposta chamada da rotina V Mensagem a ser apresentada no visor do PinPad. Recomenda-se que ela possua no mximo 32 caracteres de forma a ser compatvel com os PinPads existente atualmente em campo

Tipo F

Para apagar a mensagem e deixar o visor em branco s chamar essa funo passando o campo Mensagem vazio. responsabilidade da aplicao, se desejado, incluir o caractere | (Barra em p) para indicar uma mudana de linha.

Este documento possui tecnologia e conhecimento de propriedade da Software Express Informtica No pode ser reproduzido ou utilizado para outros fins que no a interface com algum de nossos produtos 47 de 72

3.10

Verificao da integridade de um cdigo em barras Permite, na coleta manual dos campos presentes em um cdigo em barras, que o aplicativo faa a validao a medida que os campos esto sendo digitados, de forma a alertar o operador antecipadamente e permitir que ele corrija o erro. O formato de ativao da rotina o seguinte: long ValidaCampoCodigoEmBarras (Dados, Tipo) ValidaCampoCodigoEmBarrasA (Resultado, Dados, Tipo) Parmetro Resultado Dados Tipo Binria TipoCampo ----char *