Documente Academic
Documente Profesional
Documente Cultură
pagamento do SiTef
Bibliotecas CliSiTefI e CliSiTef
Verso 157
Verso:
157
Data: 01/10/2015
ndice
1.
Objetivos
1.1
Descrio Resumida
1.2
Fluxo Grfico
1
2
3
2.
4
4
4
3.
5
6
7
8
10
11
17
20
23
36
38
39
39
40
41
44
46
46
48
51
51
52
52
54
55
4.
56
56
56
57
57
58
59
59
59
59
60
60
61
62
ii
Verso:
157
Data: 01/10/2015
5.
63
63
63
64
65
65
68
77
79
6.
Arquivos de controle
83
7.
Trace
7.1
Configurao do perodo que o trace mantido
7.2
Configurao de diretrio
7.3
Arquivos de trace por terminal
84
84
84
85
8.
Processo de desenvolvimento/homologao
8.1
Arquivo de trace adicional durante a fase de desenvolvimento
8.2
Processo de homologao
86
86
86
9.
87
10.
Traduo de mensagens
87
11.
Tabelas
88
12.
Rotinas descontinuadas
94
iii
Verso:
157
Data: 01/10/2015
Objetivos
Da biblioteca
Verso:
157
Data: 01/10/2015
Passo inicial
Inicialmente 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 (a menos que haja uma necessidade especfica para mudar parmetros de
empresa, terminal ou IP do servidor SiTef).
Transao propriamente dita
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.
Confirmao (ou no-confirmao) da transao
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:
Verso:
157
Data: 01/10/2015
ConfiguraIntSiTefInterativo
Retorno igual a 0 (zero)?
Encerra a transao
IniciaFuncaoSiTefInterativo
Retorno igual a 10000?
Encerra a transao
ContinuaFuncaoSiTefInterativo
Retorno igual a 10000? Se Sim ento execute o
prximo Comando e chame novamente a funo
(lao)
S
O retorno foi igual a 0?
N
S
Encerra a transao
N
S
Encerra a transao
Imprime o cupom;
O cupom foi impresso corretamente?
N
S
Verso:
157
Data: 01/10/2015
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 remov-los da
pilha. A conveno dos parmetros a seguinte:
Tipo
char *
short int (short)
unsigned short int (ushort)
long, unsigned long (ulong)
void
<tipo varivel> *
(exemplo: short int * ou long *)
Descrio
Buffer em texto ASCII terminado por zero binrio.
Variveis que ocupam 2 bytes em memria, com e sem sinal,
respectivamente.
Variveis que ocupam 4 bytes em memria, com e sem sinal,
respectivamente.
Indica a ausncia de parmetros ou retorno.
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.
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%, |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.
Software Express Ltda., 2015
Verso:
157
Data: 01/10/2015
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.
O que diferencia a verso ASCII da verso padro o acrscimo do sufixo A no nome das funes,
e a forma / 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 padro 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.
Tipo de parmetros da funo dividiremos em dois grupos:
1. Quanto ao fluxo de informaes: o parmetro pode ser de entrada ou sada.
2. Quando passagem: o parmetro pode ser passado por valor ou por referncia.
Verso:
157
Data: 01/10/2015
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 (IPSiTef, IdLoja, IdTerminal, Reservado)
long ConfiguraIntSiTefInterativoEx (IPSiTef, IdLoja, IdTerminal,
Reservado, ParametrosAdicionais)
Interface ASCII
ConfiguraIntSiTefInterativoA (Resultado, IPSiTef, IdLoja, IdTerminal,
Reservado)
ConfiguraIntSiTefInterativoExA (Resultado, IPSiTef, IdLoja, IdTerminal,
Reservado, ParmetrosAdicionais)
Parmetro
Resultado
IPSiTef
IdLoja
Tipo
Sada,
por valor
Entrada,
por valor
Entrada,
por valor
IdTerminal
Entrada,
por valor
Reservado
Entrada,
por valor
Entrada,
por valor
ParametrosAdi
cionais
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da
rotina
char *
Varivel Configura o nome ou endereo IP (em notao .)
do servidor SiTef
char *
Fixo 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
char *
Fixo 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
short
Fixo 6 Deve ser passado com 0
char *
Verso:
157
Data: 01/10/2015
Descrio
No ocorreu erro
Endereo IP invlido ou no resolvido
Cdigo da loja invlido
Cdigo de terminal invlido
Erro na inicializao do Tcp/Ip
Falta de memria
No encontrou a CliSiTef ou ela est com problemas
Configurao de servidores SiTef foi excedida.
Erro de acesso na pasta CliSiTef (possvel falta de permisso para escrita)
Dados invlidos passados pela automao.
Modo seguro no ativo (possvel falta de configurao no servidor SiTef do arquivo .cha).
Caminho DLL invlido (o caminho completo das bibliotecas est muito grande).
Esta rotina deve ser chamada pelo menos uma vez, de forma a configurar os parmetros de conexo
com o servidor SiTef.
Observao: durante o ciclo de vida da automao, caso no haja mudana nos parmetros de
entrada da funo, ento no h necessidade de cham-la novamente.
PortaPinPad=<Porta PinPad>
Descrio
Indica que o PDV est apto para receber mais de um comprovante por
transao. No caso de transaes com mais de um comprovante, como
transaes de recarga de celular ou pagamentos de contas com cartes
de crdito ou dbito, o comprovante da recarga de celular ou do
pagamento de conta ser entregue separadamente do comprovante do
TEF de crdito ou dbito.
Define a porta em que est conectado o pinpad compartilhado.
Ex:
Windows: [PortaPinPad=1]
Linux: [PortaPinPad=/dev/ttyS0]
Verso:
157
Data: 01/10/2015
Interface ASCII
IniciaFuncaoSiTefInterativoA (Resultado, Funcao, Valor,
DataFiscal, HoraFiscal, Operador, ParamAdic)
CupomFiscal,
Interface ASCII
IniciaFuncaoAASiTefInterativoA (Resultado, Funcao, Valor, CupomFiscal,
DataFiscal, HoraDiscal, Operador, ParamAdic, Produtos)
Parmetro
Resultado
Funcao
Valor
CupomFiscal
DataFiscal
HoraFiscal
Operador
ParamAdic
Produtos
Tipo
Sada,
por valor
Entrada,
por valor
Entrada,
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
long
char *
Entrada,
por valor
Entrada,
por valor
Entrada,
por valor
Entrada,
por valor
Entrada,
por valor
char *
Entrada,
por valor
char *
Fixo 6
char *
Fixo 8
char *
Fixo 6
char *
char *
Verso:
157
Data: 01/10/2015
Formato
1 a 14 caracteres
1 a 08 caracteres
1 a 04 dgitos
999.999,99
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).
Verso:
157
Data: 01/10/2015
Descrio
Sucesso na execuo da funo.
Deve ser chamada a rotina de continuidade do processo.
Negada pelo autorizador.
Mdulo no inicializado. O PDV tentou chamar alguma rotina sem antes executar
a funo configura.
Operao cancelada pelo operador.
O parmetro funo / modalidade invlido.
Falta de memria no PDV.
Sem comunicao com o SiTef.
Operao cancelada pelo usurio (no pinpad).
Reservado
A CliSiTef no possui a implementao da funo necessria, provavelmente est
desatualizada (a CliSiTefI mais recente).
A automao chamou a rotina ContinuaFuncaoSiTefInterativo sem antes iniciar
uma funo iterativa.
Algum parmetro obrigatrio no foi passado pela automao comercial.
Erro na execuo da rotina iterativa. Provavelmente o processo iterativo anterior
no foi finalizado at o final (enquanto o retorno for igual a 10000).
Operao cancelada pela automao comercial.
Parmetro invlido passado para a funo.
Utilizada uma palavra proibida, por exemplo SENHA, para coletar dados em
aberto no pinpad. Por exemplo na funo ObtemDadoPinpadDiretoEx.
Erro no Correspondente bancrio: Deve realizar sangria.
Erro de acesso ao arquivo. Certifique-se que o usurio que roda a aplicao tem
direitos de leitura/escrita.
Transao negada pelo SiTef.
Dados invlidos.
Reservado
Problema na execuo de alguma das rotinas no pinpad.
Transao no segura.
Erro interno do mdulo.
Erros detectados internamente pela rotina.
10
Verso:
157
Data: 01/10/2015
100
Telemarketing: Inicia a coleta dos dados da transao no ponto necessrio para tratar uma
transao de carto de crdito digitado
110
111
112
113
114
115
116
150
151
152
Consulta Bnus
Consulta Saldo Carto Presente
Consulta Saldo Carto Gift
160
11
Verso:
157
Data: 01/10/2015
161
200
202
203
210
211
212
213
250
251
253
254
255
256
257
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
cancelamento de transao de crdito digitado
Cancelamento Pr-autorizao
Cancelamento da Captura da Pr-autorizao
Cancelamento de venda com carto de Crdito
Cancelamento de venda com carto de Dbito
Cancelamento de venda com carto Combustvel
Cancelamento de Venda com Carto Gift
Cancelamento de Consulta Bnus
Cancelamento Recarga Carto Presente
Cancelamento Acmulo de Pontos Carto Bnus
Resgate de Pontos Carto Bnus
Cancelamento de Resgate de Pontos Carto Bnus
Acmulo de Pontos Carto Bnus
Cancelamento Recarga Carto Gift
260
262
264
265
266
267
268
269
300
301
302
303
Recarga de pr-pago
Recarga de pr-pago desvinculada do pagamento
Recarga de pr-pago sem coleta de valor
Recarga de pr-pago desvinculada do pagamento e sem coleta de valor
310
311
312
313
314
315
316
317
318
319
320
321
201
12
Depsito Identificado
Transferncia entre Contas
Pague Fcil
Revalidao de Senha INSS
350
351
400
401
410
Vale-Gs
Validao Vale-Gs
Troco Surpresa
411
412
Troco Premiado
Cancelamento Troco Premiado
420
500
501
502
521
522
523
530
531
532
533
540
541
542
543
Pr-autorizao PharmaSystem
Recuperao de pr-autorizao PharmaSystem
Venda PharmaSystem
Cancelamento PharmaSystem
550
552
553
554
560
561
562
563
564
570
571
Consulta EPharma(PBM)
Venda EPharma (PBM)
Verso:
157
Data: 01/10/2015
13
580
581
582
583
590
591
592
593
594
600
601
602
Consulta Saldo
Consulta Saldo Carto de Dbito
Consulta Saldo Carto de Crdito
605
606
607
610
611
612
614
615
616
613
618
619
620
621
625
626
627
628
630
631
632
633
634
635
636
Verso:
157
Data: 01/10/2015
14
640
641
642
649
650
651
652
653
654
655
656
657
658
660
661
662
663
664
Saque GetNet
Cancelamento Saque GetNet
665
667
668
669
670
Resgate de Pontos
Emisso de Pontos
Cancelamento da Emisso de Pontos
Carga de Pr Pago
Cancelamento de Carga de Pr Pago
671
672
673
674
Venda DrogaRaia
Cancelamento Venda DrogaRaia
675
676
680
700
701
702
Venda Oi Paggo
Cancelamento Oi Paggo
Pagamento de contas
Verso:
157
Data: 01/10/2015
15
1
2
703
704
Primeira Compra
705
Pagamento de Fatura
740
770
771
772
775
999
Fechamento
1000
Voucher Papel
Verso:
157
Data: 01/10/2015
16
Verso:
157
Data: 01/10/2015
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)
Interface ASCII
ContinuaFuncaoSiTefInterativoA (Resultado, Comando, TipoCampo, TamMinimo,
TamMaximo, Buffer, TamBuffer, Continua)
Parmetro
Resultado
Comando
TipoCampo
TamMinimo
TamMaximo
Buffer
TamBuffer
Continua
Tipo
Sada,
por valor
Sada,
por
referncia
Sada,
por
referncia
Sada,
por
referncia
Sada,
por
referncia
Entrada e
sada,
por valor
Entrada,
por valor
Entrada,
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
long *
Fixo 12
long *
Fixo 12
short *
Fixo 6
short *
Fixo 6
char *
long
long
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 Tabela de cdigos de
Comando
Contm o cdigo do tipo de campo que a automao
deve tratar. Os tipos existentes esto descritos em
Tabela de valores para TipoCampo
Quando o Comando for uma coleta de dados,
contm o tamanho Mnimo e Maximo do campo a
ser lido
17
Verso:
157
Data: 01/10/2015
18
Verso:
157
Data: 01/10/2015
Incio
Chama a rotina
ContinuaFuncaoSiTefInterativo
Retornou
10000?
Sim
Executa o Comando
solicitado
No
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
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.
19
Verso:
157
Data: 01/10/2015
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 ttulo na apresentao do menu ( vide comando 21)
Deve remover a mensagem apresentada no visor do operador (comando 1)
Deve remover a mensagem apresentada no visor do cliente (comando 2)
Deve remover mensagem apresentada no visor do operador e do cliente (comando 3)
Deve limpar o texto utilizado como ttulo na apresentao do menu (comando 4)
Cabealho a ser apresentado pela aplicao. Refere-se a exibio de informaes
adicionais que algumas transaes necessitam mostrar na tela.
16
20
21
22
23
29
Aps a seleo feita pelo usurio, retornar em Buffer o ndice i escolhido pelo operador
(em ASCII)
Deve apresentar a mensagem em Buffer, e 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)
Anlogo ao comando 30, porm deve ser coletado um campo que no requer interveno
do operador de caixa, ou seja, no precisa que seja digitado/mostrado na tela, e sim
passado diretamente para a biblioteca pela automao.
Um exemplo so as formas de pagamento que algumas
identificar qual o tipo de pagamento que est sendo usado.
O valor a ser coletado refere-se ao campo indicado em TipoCampo, cujo tamanho est
entre TamMinimo e TamMaximo. O campo deve ser devolvido em Buffer.
Software Express Ltda., 2015
20
Verso:
157
Data: 01/10/2015
Deve ser lido um campo cujo tamanho est entre TamMinimo e TamMaximo. O campo lido
deve ser devolvido em Buffer.
Deve ser lido o nmero de um cheque. A coleta pode ser feita via leitura de CMC-7,
digitao do CMC-7 ou pela digitao da primeira linha do cheque.
No retorno deve ser devolvido em Buffer 0:(digitao da primeira linha do cheque)
,1:(Leitura do CMC-7) ou 2:(Digitao do CMC-7), seguido do nmero coletado
manualmente ou pela leitura/digitao do CMC-7, respectivamente.
Quando a primeira linha do cheque for coletada 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.
34
35
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, recomenda-se 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.
41
42
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.
Menu identificado. Deve apresentar um menu de opes e permitir que o usurio selecione
uma delas.
Na
chamada
o
parmetro
Buffer
contm
as
opes
classe|1:texto:cdigo:tipo;2:texto:cdigo:tipo;...i:Texto:cdigo:tipo;.
no
formato
A rotina da aplicao deve apresentar as opes da forma que ela desejar (no sendo
necessrio incluir os ndices 1,2, ..., nem cdigos do campo, 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 (Tabela de cdigos de meios de pagamento,
configuraes e menus) do campo da opo, ela pode ser utilizada na identificao da
opo escolhida.
Dentro de cada classe existe a codificao de tipos, e cada par (classe, tipo) indica a
21
Verso:
157
Data: 01/10/2015
Descrio
Classe no definida
Forma de pagamento
Tipo
1
2
3
4
5
6
Descrio
Dinheiro
Cheque
Dbito
Crdito
Saque
Outra forma
22
Verso:
157
Data: 01/10/2015
101
102
105
110
111
xx
00
01
02
03
05
98
99
Grupo
Cheque
Carto de Dbito
Carto de Crdito
Carto tipo Voucher
Carto Fidelidade
Dinheiro
Outro tipo de carto
nn
00
01
02
03
99
Sub-Grupo
vista
Pr-datado
Parcelado com financiamento pelo estabelecimento
Parcelado com financiamento pela administradora
Outro tipo de pagamento
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
Contm o texto descritivo da modalidade de pagamento que deve ser impresso no cupom
fiscal (p/ex: T.E.F., Cheque, etc...)
Contm a data e hora da transao no formato AAAAMMDDHHMMSS
Retorna quando uma transao for cancelada. Contm a modalidade de cancelamento no
formato xxnn, seguindo o mesmo formato xxnn do TipoCampo 100. O sub-grupo nn
todavia, contm o valor default 00 por no ser coletado.
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.
Software Express Ltda., 2015
23
122
123
125
130
131
132
133
134
135
136
137
138
139
140
143
144
145
146
147
150
151
153
Verso:
157
Data: 01/10/2015
24
154
155
156
157
158
160
161
170
171
172
173
174
175
176
177
178
200
201
500
501
502
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
Verso:
157
Data: 01/10/2015
25
Verso:
157
Data: 01/10/2015
26
614
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
Verso:
157
Data: 01/10/2015
27
Verso:
157
Data: 01/10/2015
28
732
734
736
737
738
739
750
751
900
901
902
903
910
911
1002
Verso:
157
Data: 01/10/2015
29
Verso:
157
Data: 01/10/2015
30
Verso:
157
Data: 01/10/2015
31
1202
1203
1204
1205
1206
1207
1208
1209
1321
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2017
2018
2019
2020
2047
2048
2053
2054
2055
2056
2057
2058
2059
2064
2065
2066
2067
2068
2078
2079
Verso:
157
Data: 01/10/2015
caractere decimal.
Total de consultas efetuadas no dia.
Valor acumulado das consultas no dia, contendo 2 dgitos decimais porm sem o
caractere decimal.
Total de consultas de cheques pr-datados realizados no perodo.
Valor acumulado de cheques pr-datados, contendo 2 dgitos decimais porm sem o
caractere decimal.
Vendedor (Usurio) - PBM
Senha PBM
Cdigo de Retorno PBM
Origem PBM
NSU do Host Autorizador da Transao Cancelada
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
Bin da rede
Nmero serial do CHIP
Registro de controle do CHIP
Saldo comum, saldo do passe comum
PAN do carto presente
Data primeiro vencimento
Valor total
Valor financiado
Percentual multa
Juros de mora
TAC (Taxa de administrao)
Menu (produto) selecionado Visanet
Tipo Crdito CDC (1 CDC Produto; 2 CDC Servio)
Data/Hora Sitef (Local)
Dia da semana Sitef (Local)
Data/Hora Sitef (GMT)
Dia da Semana Sitef (GMT)
Dados da Forma de Pagamento - SPTrans
Valor pagamento em dinheiro
Cdigo consulta cheque (Genrica EMS)
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
Software Express Ltda., 2015
32
Verso:
157
Data: 01/10/2015
Menu de Produtos
Nosso nmero
Valor total do produto contendo o separador decimal (,) e duas casas decimais aps a
vrgula.
Cdigo do Produto - ValeGas
Demonstrativo de prazos : 0: No; 1: Sim
Cancelamento Total/Parcial : 0: Parcial; 1: Total
Nmero de identificao da fatura.
Tipo do carto Lido
Status da ltima leitura do carto
Cdigo do atendente
RUT - Campo usado pelo Ticket Car (Chile)
Comuna - Campo usado pelo Ticket Car (Chile)
Indica se foi transao offline : 1 : Sim
Tipo do carto Combustvel : 1 (Crdito, Ps-pago), 2 (Dbito, Pr-pago)
Cdigo Atividade Giro - Campo usado pelo Ticket Car (Chile)
Nome Atividade Giro - Campo usado pelo Ticket Car (Chile)
Senha temporria
Cdigo Produto Hopi-Hari
Descrio Produto Hopi-Hari
Quantidade Mxima de produtos Hopi-Hari
Produtos Hopi-Hari
Valor da tarifa da Recarga de Celular
Nmero da parcela (2 caracteres) (Hotcard)
Seqencial da transao (6 caracteres) (Hotcard)
Rodap do comprovante da via estabelecimento
Cdigo do Depositante CB
Cdigo do Cliente - CB
Sequencia Carto CB
Via Carto - CB
Tipo do Extrato CB
Valor limite de Transferncia - CB
Valor limite para coleta de CPF/CNPJ CB
CPF/CNPJ do Proprietrio CB
CPF/CNPJ do Portador CB
Tipo do documento do Proprietrio - CB
Tipo do documento do Portador - CB
Indica se permite pagamento com carto CB
Valor da Transferncia
Identificao da transao
Pin Code
Data de Entrada do Veculo Estapar
Data de Sada do Veculo Estapar
Hora de Entrada do Veculo Estapar
Hora de Sada do Veculo Estapar
Tipo de Cliente (1: Rotativo; 2: Mensalista) Estapar
Nmero da Sucursal Estapar
Nmero da Aplice Estapar
33
2361
2362
2369
2421
2467
2468
2469
4000
4001
4002
4003
4004
4005
4006
4007
4008
4016
4017
4018
4019
4020
4021
4022
4023
4024
Verso:
157
Data: 01/10/2015
Descrio
Alfabtico
Alfanumrico (ans)
Letras no acentuadas e nmeros
Numrico
Valor com x casas decimais
Sim/No
Menu
Menu com confirmao
Indica que foi efetuada uma transao de dbito para pagamento de carn
Retornado logo aps a transao de consulta de bins. O valor 1 indica que o autorizador
capaz de tratar de forma diferenciada transao de dbito convencional de dbito para
pagamento de contas.
Pontos a resgatar (numrico sem casa decimal).
Informa se est habilitada a funo de coleta de dados adicionais do cliente (0 ou 1)
Data no Formato DDMMAA Confirmao Positiva
Data no Formato DDMM Confirmao Positiva
Data no Formato MMAA Confirmao Positiva
Status da Pr-Autorizao PBM
CRF PBM
UF do CRF PBM
Tipo de venda PBM
Valor total PBM
Valor a vista PBM
Valor carto PBM
Nosso nmero PBM
Percentual de desconto concedido pela administradora (2 casas decimais)
Preo bruto PBM
Preo lquido PBM
Valor a receber da Loja, em centavos PBM
Nmero do lote gerado pela Central PBM
Valor total a receber da loja PBM
Valor total a receber da loja PBM
Soma dos valores da Operao PBM
Nome da operadora PBM
Nome da empresa conveniada PBM
Software Express Ltda., 2015
34
Verso:
157
Data: 01/10/2015
Note 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.
35
Verso:
157
Data: 01/10/2015
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
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
Confirma Valor Total
Concluso de Recarga de Bilhete nico
Reservado
Aguardando leitura de carto
Aguardando digitao da senha no PinPad
Aguardando processamento do chip
Aguardando remoo do carto
Aguardando confirmao da operao
5027
5028
5029
5030
5031
5036
5037
5038
5039
5040
5041
5042
5043
5044
5000
5001
5002
36
5050
5501
Verso:
157
Data: 01/10/2015
Atualizao de tabelas.
O contedo deste campo varia de acordo com a transao sendo realizada.
Outros eventos
Incio de uma transao do tipo Correspondente Bancrio.
37
Verso:
157
Data: 01/10/2015
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.
Essa rotina confirma ou cancela TODOS os meios de pagamento vinculados ao mesmo Nmero do
Cupom Fiscal e mesma Data Fiscal passados como parmetro.
void FinalizaTransacaoSiTefInterativo (Confirma, CupomFiscal, DataFiscal,
HoraFiscal);
Interface ASCII
FinalizaTransacaoSiTefInterativoA (Resultado, Confirma, CupomFiscal,
DataFiscal, HoraFiscal);
Parmetro
Resultado
Confirma
CupomFiscal
DataFiscal
HoraFiscal
Tipo
Sada,
por valor
Entrada,
por valor
Entrada,
por valor
Entrada,
por valor
Entrada,
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
short
char *
Fixo 1
char *
Fixo 8
char *
Fixo 6
38
Verso:
157
Data: 01/10/2015
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.6 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)
Interface ASCII
EscreveMensagemPermanentePinPadA (Resultado, Mensagem)
Parmetro
Resultado
Mensagem
Tipo
Sada,
por valor
Entrada,
por valor
Interface Inteface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
char *
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.
39
Verso:
157
Data: 01/10/2015
Esta funo permite que o aplicativo capture uma trilha 3 magntica genrica.
Note que o PinPad deve ter suporte para a leitura da trilha 3.
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 LeTrilha3 (Mensagem)
Parmetro
Resultado
Mensagem
Tipo
Sada,
por valor
Entrada,
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
char *
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:
Esta funo NO pode ser utilizada durante a execuo do lao
ContinuaFuncaoSiTefInterativo.
40
Verso:
157
Data: 01/10/2015
Interface ASCII
LeCartaoSeguroA (Resultado, Mensagem)
Parmetro
Resultado
Mensagem
Tipo
Sada,
por valor
Entrada,
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
char *
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).
int LeCartaoDiretoSeguro (Mensagem, TipoCampoTrilha1, Trilha1,
TipoCampoTrilha2, Trilha2, Timeout, TestaCancelamento)
Interface ASCII
LeCartaoDiretoSeguroA (Resultado, Mensagem, TipoCampoTrilha1, Trilha1,
TipoCampoTrilha2, Trilha2, Timeout)
Parmetro
Resultado
Tipo
Sada,
por valor
Mensagem
Entrada,
por valor
TipoCampoTrilh Sada,
a1
por valor
Trilha1
Sada,
por valor
TipoCampoTrilh Sada,
a2
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
char *
char *
Fixo 12
char *
char *
41
TestaCancela
mento
Sada,
por valor
Entrada,
por valor
char *
short
Fixo 6
Entrada,
por valor
Rotina
No
Usado
Verso:
157
Data: 01/10/2015
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.
Para esta rotina especfica, os cdigos de erro retornados so:
Valor
0
1
2
3
4
5
6
7
Descrio
No ocorreu erro
Campo de sada insuficiente
BIN no aceito
CNPJ invlido
Chave de acesso vencida
Verso invlida
Chave de criptografia invlida
Dados no criptografados com a chave fornecida como parmetro: a decriptografia resultou em
um nmero de carto que no composto s por dgitos.
8 Dado de entrada invlido
Descrio
Campos abertos, mascarados.
Hash dinmico dos campos
Campos criptografados
Hash fixo dos campos *
x
1
2
3
4
5
Campo
PAN do carto
Vencimento do carto
Nome do Cliente
Trilha 1
Trilha 2
* As novas implementaes devem utilizar o campo 203x, pois o campo 205x devolve um hash criptografado utilizando
a chave de criptografia inserida pelo cliente no arquivo .cha. Essa forma de uso (205x) existe apenas por
compatibilidade, pois o ideal utilizar o Hash com Salt (Semente - 203x) uma vez que a informao utilizada para gerar
42
Verso:
157
Data: 01/10/2015
o hash fica escondida apenas dentro das aplicaes que o utilizam, tornando o processo de reverso do hash at obter o
dado original praticamente impossvel de ser executado pela fora bruta.
Interface ASCII
LeCartaoDiretoSeguroExA (Resultado, Mensagem, DadosOut, TamDadosOut,
Timeout)
Parmetro
Resultado
Mensagem
DadosOut
Tipo
Sada,
por valor
Entrada,
por valor
Sada,
por valor
TamDadosOut Entrada,
por valor
Timeout
Entrada,
por valor
TestaCancela
mento
Entrada,
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina.
char *
char *
Int
short
Fixo 6
Rotina
No
Usado
43
Verso:
157
Data: 01/10/2015
Interface ASCII
LeTrilhaChipInterativoA (Resultado, Modalidade)
LeTrilhaChipInterativoEx (Modalidade, ParamAdic)
Parmetro
Resultado
Modalidade
ParamAdic
Tipo
Sada,
por valor
Entrada,
por valor
Entrada,
por valor
Interface Interface
Descrio
padro
ASCII
No usado
Fixo 6
Contm o resultado de resposta chamada da
rotina
Int
Fixo
Seleciona o tipo do pagamento:
2 : Dbito
3 : Crdito
char *
Varivel Parmetros
adicionais,
como
o
Mx. 64 {SementeHash=XXX..}. opcional e pode ser
vazio
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. Para maiores detalhes, consulte o documento Acesso a
Senha do Cliente para Carto Proprietrio CliSiTef.doc.
long LeSenhaInterativo (ChaveSeguranca)
Interface ASCII
LeSenhaInterativoA (Resultado, ChaveSeguranca)
Parmetro
Resultado
Tipo
Sada,
por valor
ChaveSeguran Entrada,
ca
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
char *
Fixo 64
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.
44
Verso:
157
Data: 01/10/2015
Interface ASCII
LeSenhaDiretoA (Resultado, ChaveSeguranca, SenhaCliente)
Parmetro
Tipo
Resultado
Sada,
por valor
ChaveSeguran Entrada,
ca
por valor
Senha
Sada,
por valor
Interface Interface
Descrio
padro
ASCII
----Fixo 6 Contm o resultado de resposta chamada da rotina
char *
Fixo 64
char *
Fixo 20
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.
45
Verso:
157
Data: 01/10/2015
Estas funes permitem que o aplicativo solicite uma confirmao no PinPad. O formato de
ativao o seguinte:
long LeSimNaoPinPad (Mensagem)
Interface ASCII
LeSimNaoPinPadA (Resultado, Mensagem)
Parmetro
Resultado
Mensagem
Tipo
Sada,
por valor
Entrada,
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
char *
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 (CupomFiscal, DataFiscal,
Horario, Operador, ParamAdic)
Interface ASCII
CorrespondenteBancarioSiTefInterativoA (Resultado, CupomFiscal,
DataFiscal, Horario, Operador, ParamAdic)
46
Verso:
157
Data: 01/10/2015
47
Verso:
157
Data: 01/10/2015
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)
Interface ASCII
ValidaCampoCodigoEmBarrasA (Resultado, Dados, Tipo)
Parmetro
Resultado
Dados
Tipo
Interface Interface
Descrio
padro
ASCII
Sada,
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
por valor
conforme descrito a seguir
Entrada,
char *
Varivel Dados coletados at o momento. Cada campo deve
por valor
estar concatenado ao seguinte
Sada,
short *
Fixo 6 Informa o tipo do documento coletado segundo a
por
seguinte codificao:
referncia
-1 Ainda no foi possvel definir o tipo
0 Arrecadao
1 Ttulo
Tipo
Recomendao:
recomendvel que aplicao do terminal, uma vez identificado que o documento ser digitado,
abra campos de coleta simulares aos presentes nos documentos a serem pagos. Para isso ela precisar
identificar se uma Ficha de Compensao/Titulo/Bloqueto ou Ficha de Arrecadao/Tributos. Essa
identificao pode ser feita mediante uma pergunta ao operador ou atravs da rotina aqui descrita.
Se o usurio optar pelo reconhecimento automtico ele deve abrir um campo como se fosse de
Arrecadao e, a cada digito fornecido pelo operador, passar os dgitos j fornecidos para a rotina. Esse
procedimento deve ser feito at o momento que a rotina devolver se o documento em questo um Ttulo
ou Arrecadao. Nesse momento a aplicao no precisa mais chamar a rotina a cada dgito fornecido e
deve, se necessrio, modificar a formatao dos campos para captura.
48
Verso:
157
Data: 01/10/2015
Alm da identificao do tipo do documento a rotina faz a consistncia dos dgitos verificadores,
retornando para aplicao se existe um erro e onde ele est localizado. A aplicao pode chamar a rotina
passando os campos medida que eles forem sendo coletados ou no final da coleta, onde ser feita uma
anlise global do contedo digitado. Se a chamada for durante a digitao, os pontos corretos so:
- Arrecadao: a cada um dos 4 blocos de digitao
- Ttulos: a cada grupo de dois blocos de digitao
No retorno a rotina devolve 0 se tudo estiver correto at o momento, -1 se for um cdigo em barras
no reconhecido ou um nmero de 1 a 4 indicando qual o campo est incorreto ou ainda o valor 5 para
indicar que o nmero como um todo no est correto.
Exemplificamos a seguir como a aplicao do terminal deveria proceder, na forma mais genrica
possvel hoje em dia, para coletar um documento. No exemplo utilizaremos um ttulo e deixaremos a
automao ser informada que esse tipo de documento. O documento que ser utilizado o seguinte:
23790.09505.91211.369656.04025.039209.1.17690000005625
Campo aberto pela automao
2
Aps a digitao do primeiro nmero chama a rotina passando 2 como parmetro. No retorno a
rotina devolveu o resultado 0 e Tipo = 0 (fictcio pois nesse momento, para a configurao atual de
cdigos em barra, ela j teria feito a identificao)
23
Aps a digitao do primeiro nmero chama a rotina passando 23 como parmetro. No retorno a
rotina devolveu o resultado 0 e Tipo = 1
23790
09505
A automao reapresenta os campos j sabendo que um ttulo. Somente aps a digitao do
primeiro grupo de nmeros ela chama a rotina passando 2379009505 como parmetro. No retorno a
rotina continua a devolver Tipo = 1. J o resultado poder ser 0, indicando que o bloco est correto ou 1
indicando que ele est errado.
23790
09505
91211
369656
A automao continua a coletar os dgitos e somente aps a digitao do segundo grupo de nmeros
ela chama a rotina passando 237900950591211369656 como parmetro. No retorno a rotina continua a
devolver Tipo = 1. J o resultado poder ser 0, indicando que os blocos esto corretos ou 1 ou 2 indicando
que o primeiro ou o segundo bloco est errado..
49
Verso:
157
Data: 01/10/2015
23790
09505
91211
369656
04025
039209
1 17690000005625
A automao continua a coletar os dgitos chamando a rotina no final do terceiro bloco com os
dados 237900950591211369656 e no final do quarto bloco com todos os dados digitados. No retorno a
rotina continua a devolver Tipo = 1 e o resultado refletir a situao de erro ou no dos blocos passados
como parmetro. Em particular, se retornar o cdigo 5 porque existe algum dos blocos (no possvel
identificar qual deles) com erro.
Finalizando, a automao tambm pode para efeito de consistncia do cdigo em barras optar por
conferi-los apenas no final da digitao de todos os campos. Nesse caso, a rotina devolver 1, 2, 3 ou 4
nessa ordem de prioridade caso encontre um ou mais blocos com erro e 5 na situao dos blocos internos
estarem certos mas o nmero como um todo possui algum erro.
50
Verso:
157
Data: 01/10/2015
Esta funo utilizada pelo terminal para saber quantas transaes foram realizadas em caso de
queda de energia.
int ObtemQuantidadeTransacoesPendentes (DataFiscal, CupomFiscal)
Interface ASCII
ObtemQuantidadeTransacoesPendentesA (Resultado, DataFiscal, CupomFiscal)
Parmetro
Resultado
DataFiscal
CupomFiscal
Tipo
Sada,
por valor
Entrada,
por valor
Entrada,
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da rotina
char *
Fixo 8
char *
Esta funo utilizada pelo terminal para obter as verses da CliSiTef e CliSiTefI.
int ObtemVersao (VersaoCliSiTef, VersaoCliSiTefI)
Interface ASCII
ObtemVersaoA (Resultado, VersaoCliSiTef, VersaoCliSiTefI)
Parmetro
Resultado
VersaoCliSiTef
VersaoCliSiTefI
Tipo
Sada,
por valor
Sada,
por valor
Sada,
por valor
Interface Interface
Descrio
padro
ASCII
No usado Fixo 6 Contm o resultado de resposta chamada da
rotina
char *
Mx. 64 No retorno contm a verso da CliSiTef
char *
No retorno a rotina devolve 0 quando foi executada com sucesso e diferente no caso de erro.
51
Verso:
157
Data: 01/10/2015
No retorno a rotina devolve 0 se conseguiu descarregar todas as mensagens e diferente de zero caso
ocorra algum erro impossibilitando o envio das mesmas.
3.16 Informaes do PinPad
Existem duas formas de se obter informaes bsicas do PinPad conectado no PDV, tais como
nmero de srie, modelo, etc.
1) ObtemInformacoesPinPad funo direta.
2) Atravs de cdigo de funo passada IniciaFuncaoSiTefInterativo, e consequente processo
interativo.
Parmetro
InfoPinPad
Tipo
Sada,
por valor
Interface
Descrio
padro
char *
No retorno contm as informaes do PinPad
52
Verso:
157
Data: 01/10/2015
Observao: o Buffer que receber as informaes do PinPad deve possuir tamanho mnimo de 256
caracteres, j prevendo a possibilidade de serem includas novas informaes de pinpad.
Descrio
Nome do fabricante
Modelo / verso do hardware
Verso do software bsico/firmware
Verso da especificao
Verso da aplicao bsica
Nmero de srie do PinPad
53
Verso:
157
Data: 01/10/2015
Descrio
Carga de tabelas no pinpad
Carga forada de tabelas no pinpad (Local)
Carga forada de tabelas no pinpad (SiTef)
A funo 770 realiza a carga de tabelas no pinpad caso seja necessrio. Isto , se os dados do
servidor SiTef j estiverem carregados no pinpad, nenhuma carga ser feita.
A funo 771 fora a carga de tabelas no pinpad de acordo com as tabelas baixadas previamente do
servidor SiTef e que esto armazenadas localmente no PDV.
J a funo 772 faz com que a clisitef apague os dados locais do PDV, baixando do SiTef uma nova
fotografia destes parmetros, e a seguir faz a carga de tabelas no pinpad.
54
Verso:
157
Data: 01/10/2015
Para que a automao se beneficie da carga de tabelas sem ter que programar as chamadas da
IniciaFuncaoSiTefInterativo com os trs cdigos de funo 770, 771 e 772, foram includas no menu
Administrativo da CliSiTef, trs transaes equivalentes.
Para habilitar a transao de Carga de tabelas no pinpad, necessrio incluir na seo [Geral] a
chave TransacoesAdicionaisHabilitadas o valor 3624.
Para habilitar a transao de Carga forcada de tabelas no pinpad (Local), necessrio incluir na
seo [Geral] a chave TransacoesAdicionaisHabilitadas o valor 3625.
A transao de Carga forcada de tabelas no pinpad (SiTef) est habilitada de forma implcita.
[Geral]
TransacoesAdicionaisHabilitadas=3624;3625
55
4.
Verso:
157
Data: 01/10/2015
No Windows, deve-se usar o formato COMn, onde n o nmero da porta serial/usb. Por exemplo:
COM12
No Linux, deve-se indicar o caminho completo do device. Por exemplo: /dev/ttyS1 ou
/dev/ttyACM0
Observao: outros parmetros, como velocidade (BAUD), bits de dados, paridade e bit de parada
no so configurveis.
A partir da CliSiTef verso 4.0.111.3 para Windows e 4.0.111.18 para Linux, possvel usar o
valor AUTO_USB para identificar automaticamente a porta de um pinpad USB.
[PinPadCompartilhado]
Porta=AUTO_USB
Nota: a configurao acima vlida somente para a plataforma Windows 32 e Linux 32 (a partir do
kernel 2.6), nas verses mencionadas acima.
56
Verso:
157
Data: 01/10/2015
57
Verso:
157
Data: 01/10/2015
58
Verso:
157
Data: 01/10/2015
59
Verso:
157
Data: 01/10/2015
60
Verso:
157
Data: 01/10/2015
61
Verso:
157
Data: 01/10/2015
62
Verso:
157
Data: 01/10/2015
onde cada um dos sub-campos contm um cdigo numrico que identifica o item de menu que no
se aplica venda em questo. Por exemplo, se durante o processo de venda j foi negociado com o
cliente que uma venda para pagamento nica e exclusivamente com carto a vista, o valor do
parmetro deve ser:
[10;17;18;19;27;28;34;35;];
63
Verso:
157
Data: 01/10/2015
Por questes de compatibilidade com verses anteriores da biblioteca e tambm pelo fato de
algumas funcionalidades da mesma no serem de uso geral, existem algumas formas de pagamento que
no esto habilitadas por padro, sendo necessrio que o cliente informe explicitamente que deseja
utiliz-las. Isso feito atravs do arquivo de configurao CliSiTef.ini pelo parmetro
TransacoesAdicionaisHabilitadas a ser includo na seo [Geral]. O formato desse parmetro o
seguinte:
[Geral]
TransacoesAdicionaisHabilitadas=<Tipo do meio de pagamento>;...
Onde cada um dos sub-campos possui a mesma descrio dos itens anteriores.
Consulte a Tabela de cdigos de meios de pagamento, configuraes e menus para a lista de
cdigos nesta configurao.
Os menus que hoje no esto habilitados por padro so os seguintes:
Carto Refeio Eletrnico
Recarga de celular com cartes de dbito ou crdito
Pagamento de Benefcios e respectivo estorno
Leitora SmartNet para cartes SmartVR e Sodexho com chip
Correspondente Bancrio
Paggo
Dbito Digitado
Extrato CB
Consulta Saldo CB
Saque e estorno de saque CB
Depsito e estorno de depsito CB
Recarga de Celular Bradesco
Recarga de Celular HSBC
Extrato CB
Pagamento e Estorno de DARF
Pagamento e Estorno de GPS
Emprstimo Pr-Aprovado
Abertura de Conta
Troco Premiado (Surpresa)
Vale Gs
Opo Administrativa Redecard
64
Verso:
157
Data: 01/10/2015
Carto Combustvel
Carto Presente
Exemplificando, para habilitar o menu de pagamento com carto Refeio Eletrnico deve-se
incluir a seguinte configurao em CliSiTef.ini:
[Geral]
TransacoesAdicionaisHabilitadas=20
5.4 Desabilitando transaes
Existem algumas redes que, por no serem de uso generalizado, no esto automaticamente
habilitadas na CliSiTef. Neste caso, para habilit-las, existe a seo [Redes] no arquivo de configurao
CliSiTef.ini e que deve conter o nome da varivel correspondente a rede a ser habilitada com o valor 1.
Caso o estabelecimento trabalhe com mais de uma rede das descritas a seguir, deve ser includa uma linha
para cada rede.
[Redes]
HabilitaRedexxxx=1
Onde xxxx pode ser, na presente verso da CliSiTef, um dos seguintes valores abaixo.
Note que possvel habilitar tantas redes quanto necessrio, desde que elas estejam habilitadas no
SiTef de forma compatvel.
Rede
Accor
ACSP
Algorix
Avista
BancoIbi
65
Verso:
157
Data: 01/10/2015
BancoMercantil
BancoPanamericano
BancoProvincial
BOD
BODDebito
BrazilianCard
CdlPoa
CdlRio
CentralCard
CheckCheck
Cisa
Citibank
ClubCard
CompreMax
Condor
Consignum
ConsorcioVenezuela
ConsultaValePapel
CooperCred
CredMais
CTF
DDTotal
Dotz
Ediguay
Eletrozema
EMS
Fidelize
Formosa
FoxWinCards
Givex
Hiperlife
HotCard
ICards
InfoCard
InComm
JGV
MAR
Mettacard (antigo Consignum)
Neus
Oboe
Omnion
Orbitall
Parati
Platco
PortalCard
Qualicard
Software Express Ltda., 2015
66
Verso:
157
Data: 01/10/2015
Repom
SasNT
SigaCred
SisCred
Softway
SpcBrasil
SQCF
Starfiche
Sysdata
Telecheque
Teledata
TopCard
Total
Tricard
UpSight
UseCred
Validata
Wappa
67
Verso:
157
Data: 01/10/2015
A seguir est a tabela que relaciona os tipos de meio de pagamento, configuraes e menus, com os
respectivos cdigos, para serem utilizados nos itens anteriores.
Tipo do meio de pagamento
Consulta ou garantia de Cheque (todos os tipos)
Consulta Cheque Serasa/Associao Comercial
Consulta Cheque Tecban
Telecheque Garantido Tecban
Garantia Cheque Papel Tecban
Carto de dbito (todas as combinaes) (Descontinuado, no usar)
Carto de dbito a vista
Carto de dbito pr-datado
Carto de dbito parcelado
Carto de dbito CDC
Carto Refeio Eletrnico (Exceto Visanet, neste caso usar 3014)
Voucher Papel
Carto Benefcio
Carto SmartVR/Sodexho com leitora SmartNet
Carto de crdito a vista com juros
Carto de crdito (todas as combinaes) (Descontinuado, no usar)
Carto de crdito a vista
Carto de crdito parcelado com financiamento do estabelecimento
Carto de crdito parcelado com financiamento da administradora
Carto de crdito digitado
Carto de crdito magntico
Pr-autorizao
Carto Fininvest
Saque com carto Fininvest
Carto de Crdito Pr-rata a vista
Carto de Crdito Pr-rata parcelada
Consulta parcelas no Carto de Crdito
Crdito Cisa
Saldo/Extrato Cisa
Carto Crdito Infocard
Cancelamento de transao com carto de crdito ou dbito
Consulta AVS
Dbito Digitado
Dbito Magntico
Crdito Parcelado
Private Label Pr-Datado
Pagamento Dinheiro
Pagamento Private Label com Cheque
Paggo
Garantia Cheque CDL Rio
Pagamento de Conta
Estorno de pagamento de conta
Cdigo
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
68
Verso:
157
Data: 01/10/2015
52
53
54
55
56
57
58
60
61
62
63
64
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
3000
3001
3002
3003
3004
3005
69
Verso:
157
Data: 01/10/2015
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
70
Verso:
157
Data: 01/10/2015
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
71
Verso:
157
Data: 01/10/2015
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3160
3161
3162
3163
72
Verso:
157
Data: 01/10/2015
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
73
Verso:
157
Data: 01/10/2015
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3262
3263
3264
3267
3270
3271
3272
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3296
3297
3298
3299
3303
3304
74
Verso:
157
Data: 01/10/2015
3305
3306
3319
3320
3324
3325
3326
3327
3328
3329
3330
3331
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
75
Verso:
157
Data: 01/10/2015
3379
3389
3390
3391
3392
3393
3394
3407
3408
3409
3410
3411
3412
3466
3480
3500
3510
3511
3512
3515
3517
3530
3553
3554
3556
3624
3625
3626
3675
76
Verso:
157
Data: 01/10/2015
Note que neste formato as funcionalidades esto entre chaves ({ e }), ao passo que as restries
esto entre colchetes ([ e ]).
Exemplo: no processo de venda exemplificado no item 5.1, suponha que o valor da venda possa ser
alterado durante o fluxo, e que o aplicativo da automao deseje fazer seu tratamento, ento o valor do
parmetro ParamAdic deve ser:
[10;17;18;19;27;28;34;35;];{TrataPagamentoExtendido=1;}
HabilitaVendaViaCodigoBarras=1
ItemMenuIdentificado=1
{MKRede=A,B,C,D}
OBS: Esta configurao deve ser
passada entre chaves ({})
separadamente, ou seja, no deve
ser concatenada com nenhuma
Descrio
O contedo deste campo ser acrescentando ao campo
administrativo do SITEF e constar em relatrios do SITEFWEB.
Se um arquivo .CHA estiver presente no servidor Sitef, ento, a
CliSiTef se comporta da seguinte maneira: Se a CliSiTef estiver
sem comunicao com o Sitef, ao invs de retornar um erro de
comunicao, a CliSiTef continua o fluxo da transao at a leitura
do carto. Para inibir este comportamento, utilizar a funcionalidade
ao lado.
Este parmetro informa a CliSiTef que a opo de venda crdito
atravs de cartes gravados em cdigo em barras deve ser habilitada
na transao corrente. Lembrando que alm dessa configurao a
opo de menu (3025) tambm deve estar habilitada.
O aplicativo de automao informa a CliSiTef que ele est
preparado para tratar o comando de menu com itens identificados
(comando 42).
Quando esse parmetro est habilitado a CliSiTef substitui a
utilizao do comando 21 pelo comando 42, na maior parte dos
menus utilizados na navegao.
Configurao vlida somente para CliSiTef Reduzida Redecard. Os
parmetros A,B,C,D so ndices das chaves de criptografia
Redecard nos POSs. Esses parmetros iro sobrepor os ndices das
chaves recebidos no servio 3. Os parmetros C e D sero
implementados somente a partir da verso (4.0.104.1, a confirmar).
Se alguma chave no for configurada preciso passar o parmetro
Software Express Ltda., 2015
77
Verso:
157
Data: 01/10/2015
outra configurao separada por com valor -1. Exemplo: {MKRede=-1,-1,-1,2} vai configurar
ponto-e-vrgula (;)
somente a chave relativa criptografia DUKPT 3DES.
A = ndice da master key DES
B = ndice da master key 3DES
C = ndice do registro de tratamento DUKPT DES
D = ndice do registro de tratamento DUKPT 3DES
{MKRedeDados=A,B,C,D}
Igual a MKRede (Ver descrio acima), exceto que as chaves de
criptografia sero usadas para criptografar trilhas.
OBS: Esta configurao deve ser
passada entre chaves ({})
separadamente, ou seja, no deve
ser concatenada com nenhuma
outra configurao separada por
ponto-e-vrgula (;)
NumCartaoCripto=<Carto
A entrega do campo adicional NumCartaoCripto, com o carto
criptografado>
criptografado, desabilita a captura do nmero do carto digitado. O
campo NumCartaoCripto recebido com sucesso se o SiTef, com
o qual a CliSiTef est conectada, responder os servios Q13 e Q14
com a chaves de criptografia devidamente configuradas.
RedeDestino=nnnn
Esta configurao permite forar que a transao seja realizada por
uma rede especfica (nnnn = 4 dgitos numricos). Consulte o item
5.8 - Transaes crdito/dbito com carto sem BIN.
TrataConsultaSaqueComSaque=1 Inicialmente projetada para transaes do Banco Ibi, este parmetro
permite vincular, em uma nica transao, a Consulta a Saque e
Saque.
Caso seja passado este parmetro, o menu administrativo oferecer
somente a opo Consulta Saque com Saque.
TrataPagamentoExtendido=1
Esta funo informa que o aplicativo da automao est preparado
para tratar informaes de recebimento a menor (falta saldo a ser
recebido com outra forma de pagamento) ou a maior (deve ser
devolvido um troco para o cliente).
Esta funo tambm habilita o recebimento dos campos 137 (Saldo
a ser pago) e 138 (Valor efetivamente recebido).
ValidadeCartao=<AAMM ou
A entrega do campo adicional ValidadeCartao, com a data de
MMAA>
validade do carto, desabilita a sua captura, porm a utilizao do
valor passado atravs do parmetro adicional condicionada
passagem bem sucedida do campo NumCartaoCripto.
ValorIncluiTaxa=1
Este parmetro informa que o aplicativo da automao incluiu no
valor compra o valor da taxa de embarque ou servio.
Se durante o fluxo de captura for solicitada a taxa, o valor que foi
acrescentado venda deve ser repassado pela automao.
78
Verso:
157
Data: 01/10/2015
Onde nnnn o cdigo da rede a qual pertence o carto especial (vide tabela abaixo).
2) Indicando esta rede especial, a qual pertence o carto especial, no arquivo de configurao da
CliSiTef (CliSiTef.ini).
Para tanto, indique nas sees Debito, Credito, CartaoCombustivel ou Gift os pares (Texto,
Rede) correspondentes ao texto que ser exibido e o cdigo de rede.
[Debito]
Texto1=SomarCard
Rede1=172
Texto2= StarFiche
Rede2=178
TextoN=MinhaRede
RedeN=nnnn
[Credito]
Texto1=SomarCard
Rede1=172
Texto2= StarFiche
Rede2=178
Texton=MinhaRede
Reden=nnnn
[CartaoCombustivel]
Texto1=FitCard
Rede1=263
[CartaoGift]
Texto1=Condor
Rede1=174
TextoN=MinhaRede
RedeN=nnnn
79
Verso:
157
Data: 01/10/2015
80
Verso:
157
Data: 01/10/2015
Exemplo:
[Debito]
Texto1=SomarCard
Rede1=172
Texto2= StarFiche
Rede2=178
Texto3=Libercard
Rede3=196
HabilitaDigitado3=1
HabilitaMagnetico3=0
[Credito]
Texto1=SomarCard
Rede1=172
Texto2= StarFiche
Rede2=178
Texto3=Libercard
Rede3=196
HabilitaDigitado3=1
HabilitaMagnetico3=0
[CartaoCombustivel]
Texto1=FitCard
Rede1=263
HabilitaDigitado1=0
HabilitaMagnetico1=1
HabilitaCodBar1=0
[CartaoGift]
Texto1=Condor
Rede1=174
HabilitaDigitado1=0
HabilitaMagnetico1=1
HabilitaCodBar1=0
HabilitaCodUnitarioGift1=0
HabilitaEgiftDigitadoGift1=0
Tambm possvel definir as transaes adicionais que sero capturadas pela rede em questo. O
parmetro que determina essa caracterstica o TransacoesAdicionaisn, sendo n o ndice da rede. Os
valores indicados so as funes do item 3.2.2 - Tabela de cdigos de funes, separados por ponto-evrgula.
No momento, somente a transao 602 (Consulta Saldo Carto de Crdito) foi implementada.
Exemplo:
[Credito]
Rede1=205
Texto1=GoldenFarma
TransacoesAdicionais1=602;
81
Verso:
157
Data: 01/10/2015
A seguir, listamos o cdigo das redes que possuem cartes nesta situao.
Cdigo da Rede
97
172
178
196
205
263
Nome da Rede
Cartesys
SomarCard
StarFiche
Libercard
GoldenFarma
FitCard
82
Verso:
157
Data: 01/10/2015
Arquivos de controle
A CliSiTef permite configurar o diretrio onde sero gerados os seus arquivos de controle. Essa
configurao deve ser feita pelo item DiretorioBase da seo SalvaEstado no arquivo CliSiTef.ini.
No Windows, a pasta padro utilizada C:\CliSiTef\ChavesCliSiTef.
No Linux, a pasta padro /tmp/ChavesCliSiTef.
[SalvaEstado]
DiretorioBase=<DIRETORIO>
Exemplo Windows:
[SalvaEstado]
DiretorioBase=C:\Chaves
Exemplo Linux:
[SalvaEstado]
DiretorioBase =/home/usuario/chaves
83
Verso:
157
Data: 01/10/2015
Trace
Exemplo Windows:
[CliSiTef]
DiretorioTrace=C:\Trace
Exemplo Linux:
[CliSiTef]
DiretorioTrace=/home/usuario/trace
84
Verso:
157
Data: 01/10/2015
Para facilitar algumas anlises, possvel configurar a CliSiTef para gerar arquivos de trace por
terminal (parmetro IdTerminal da funo ConfiguraIntSiTefInterativo).
Alm da gerao de traces por terminal, tambm possvel alterar a gerao do arquivos de trace do
modo dirio para o modo por hora, em que so gerados diversos arquivos de trace fragmentados por hora.
Ao habilitar o modo multi-terminal da CliSiTef, a gerao de traces automaticamente alterada
para o modo por terminal. Para maiores informaes sobre o modo multi-terminal, consulte o documento
especfico CliSiTef - Configurao Multi-terminal.doc.
Caso no esteja configurada no modo multi-terminal e ainda assim queira habilitar a gerao de
traces por terminal, basta adicionar o item TracePorTerminal na seo CliSiTef do arquivo CliSiTef.ini.
[CliSiTef]
TracePorTerminal=1
Para habilitar a gerao de traces por hora deve ser adicionada a seguinte configurao ao arquivo
CliSitef.ini:
[CliSiTef]
TracePorHora=1
85
Verso:
157
Data: 01/10/2015
Processo de desenvolvimento/homologao
A CliSiTefI possui um mecanismo de auxilio ao desenvolvedor da aplicao que interage com ela
de forma a simplificar a busca por problemas durante a fase de desenvolvimento. Esse mecanismo, uma
vez habilitado, faz com que seja gerado um arquivo de trace contendo os parmetros trocados entre a
CliSiTef e a aplicao. O arquivo fica localizado no diretrio corrente ou em C:\CliSiTef, dependendo se
o ambiente for Linux ou Windows, respectivamente. O nome do arquivo CliSiTef.AAAAMMDD.txt.
Para habilitar essa caracterstica, inclua o seguinte parmetro no arquivo de configurao
CliSiTef.ini:
[Geral]
DataEmAmbienteDeDesenvolvimento=AAAAMMDD
Onde AAAAMMDD corresponde ao dia que o teste em laboratrio est sendo feito.
Como descrito anteriormente, o fluxo descrito neste documento deve ser seguido a risca para que
no ocorram erros estranhos durante a execuo da CliSiTef. Para tanto, existe um parmetro
configurvel que ser utilizado pelos homologadores da Software Express para confirmar que o aplicativo
de automao somente concretiza o processo de venda pela impresso de um comprovante ou pela
chamada
a
funo
FinalizaTransacaoSiTefInterativo
aps
o
retorno
final
da
ContinuaFuncaoSiTefInterativo. Esse parmetro o seguinte:
[Geral]
EmAmbienteDeHomologacao=1
Por introduzir uma mensagem adicional no processo, ele jamais dever ser utilizado em ambiente
de produo.
86
Verso:
157
Data: 01/10/2015
Esta configurao habilita a confirmao do valor da transao no pinpad no caso de transaes sem
coleta de senha pelo pinpad, visto que na coleta de senha j apresentado o valor. At o momento ela s
vlida para transaes de recarga pr-pago e bnus.
Para habilitar esta configurao basta adicionar as seguintes configuraes ao arquivo
CliSiTef.ini:
[Geral]
ConfirmarValorPinPad=1
As mensagens devem ficar em um arquivo no formato INI separado, sob a seo TabTraducao.
Um exemplo deste arquivo seria:
[TabTraducao]
MsgNovoValor=Forneca o novo valor do pagamento
MsgEmbosso=Forneca os 4 digitos finais do cartao
MsgCodigoSeguranca=Informe Cod. Seg, ou\n0 = inexistente\n1 = ilegivel
Como a CliSiTef est em constante incluso de mdulos e mensagens, a lista completa de itens de
traduo encontra-se no documento SiTef - Interface Simplificada com a aplicao - Tabela de
Mensagens.
87
Verso:
157
Data: 01/10/2015
11. Tabelas
Cdigo das Redes Autorizadoras
00000
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
Descrio
Outra, no definida
Tecban
ITA
BRADESCO
Visanet - Especificao 200001
Redecard
Amex
SOLLO
E CAPTURE
Serasa
SPC Brasil
SERASA DETALHADO
TELEDATA
ACSP
ACSP DETALHADO
TECBIZ
CDL DF
Repom
STANDBY
EDMCARD
CREDICESTA
Banrisul
ACC CARD
Clubcard
ACPR
Vidalink
CCC_WEB
Ediguay
Carrefour
Softway
Multicheque
Ticket combustvel
YAMADA
Citibank
Infocard
BESC
EMS
CHEQUE CASH
Central Card
Drogaraia
OUTRO SERVIO
Accor
EPAY GIFT
Parati
TOKORO
88
Verso:
157
Data: 01/10/2015
Coopercred
SERVCEL
Sorocred
Vital
SAX FINANCEIRA
Formosa
Hipercard
Tricard
CHECK OK
Policard
Cetelem Carrefour
LEADER
Consrcio Credicard Venezuela
GAZINCRED
Telenet
Cheque Pr
Brasil Card
Epharma
Total
Consrcio Amex Venezuela
GAX
Peralta
SERVIDOR PAGAMENTO
BANESE
RESOMAQ
Sysdata
CDL POA
BIGCARD
DTRANSFER
VIAVAREJO
CHECK EXPRESS
Givex
Valecard
Portal Card
Banpara
SOFTNEX
SUPERCARD
GetNet
Prevsaude
BANCO POTTENCIAL
SOPHUS
MARISA 2
MAXICRED
BLACKHAWK
EXPANSIVA
SAS NT
LEADER 2
SOMAR
89
Verso:
157
Data: 01/10/2015
CETELEM AURA
CABAL
CREDSYSTEM
Banco Provincial
CARTESYS
CISA
TRNCENTRE
ACPR D
CARDCO
CHECK CHECK
CADASA
PRIVATE BRADESCO
CREDMAIS
GWCEL
CHECK EXPRESS 2
GETNET PBM
USECRED
SERV VOUCHER
TREDENEXX
Bonus Presente Carrefour
CREDISHOP
ESTAPAR
Banco Ibi
WORKERCARD
Telecheque
OBOE
PROTEGE
SERASA CARDS
Hotcard
Banco Panamericano
Banco Mercantil
Sigacred
Visanet Especificao 4.1
SPTRANS
PRESENTE MARISA
COOPLIFE
BOD
G CARD
TCREDIT
SISCRED
FOXWINCARDS
CONVCARD
Voucher
EXPAND CARDS
Ultragaz
Qualicard
HSBC UK
Wappa
90
Verso:
157
Data: 01/10/2015
SQCF
INTELLISYS
BOD DBITO
ACCREDITO
COMPROCARD
ORGCARD
MINASCRED
Farmcia Popular
Fidelidade Mais
ITA SHOPLINE
CDL RIO
FORTCARD
PAGGO
SMARTNET
INTERFARMACIA
VALECON
CARTO EVANGLICO
VEGASCARD
SCCARD
ORBITALL
ICARDS
FACILCARD
FIDELIZE
FINAMAX
BANCO GE
UNIK
TIVIT
VALIDATA
BANESCARD
CSU CARREFOUR
VALESHOP
SOMAR CARD
OMNION
CONDOR
STANDBYDUP
BPAG BOLDCRON
MARISA SAX SYSIN
STARFICHE
ACE SEGUROS
TOP CARD
GETNET LAC
UP SIGHT
MAR
FUNCIONAL CARD
PHARMA SYSTEM
NEUS
SICREDI
ESCALENA
91
Verso:
157
Data: 01/10/2015
N SERVIOS
CSF CARREFOUR
ATP
AVST
ALGORIX
AMEX EMV
COMPREMAX
LIBERCARD
SEICON
SERASA AUTORIZ CRDITO
SMARTN
PLATCO
SMARTNET EMV
PROSA MXICO
PEELA
NUTRIK
GOLDENFARMA PBM
GLOBAL PAYMENTS
ELAVON
CTF
BANESTIK
VISA ARG
AMEX ARG
POSNET ARG
AMEX MXICO
ELETROZEMA
BARIGUI
SIMEC
SGF
HUG
CARTO CONSIGNUM CARTO METTACARD
DDTOTAL
CARTO QUALIDADE
REDECONV
NUTRICARD
DOTZ
PREMIAES RAIZEN
TROCO SOLIDRIO
AMBEV SCIO TORCEDOR
SEMPRE
FIRST DATA
COCIPA
IBI MXICO
SIANET
SGCARDS
CIAGROUP
FILLIP
CONDUCTOR
92
Cdigo da Bandeira
(Carto de Crdito)
00000
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
Verso:
157
Data: 01/10/2015
LTM RAIZEN
INCOMM
VISA PASS FIRST
CENCOSUD
HIPERLIFE
SITPOS
AGT
MIRA
AMBEV 2 SCIO TORCEDOR
JGV
CREDSAT
BRAZILIAN CARD
RIACHUELO
ITS RAIZEN
SIMCRED
BANCRED CARD
CONEKTA
SOFTCARD
ECOPAG
C&A AUTOMAO IBI
C&A PARCERIAS BRADESCARD
OGLOBA
BANESE VOUCHER
RAPP
Monitora POS
SOLLUS
FITCARD
ADIANTI
STONE
DMCARD
ICATU 2
Descrio
Outro, no definido
Visa
Mastercard
Diners
American Express
Sollo
Sidecard (Redecard)
Private Label (Redecard)
Redeshop
Po de Acar
Fininvest (Visanet)
JCB
Hipercard
Aura
Software Express Ltda., 2015
93
Verso:
157
Data: 01/10/2015
Losango
Sorocred
Discovery
(Resultado,
Mensagem,
Trilha1,
Trilha2,
Timeout);
//
Utilize
94
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
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
Verso:
157
Data: 01/10/2015
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
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 cupom 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
95
05/09/2002
09/09/2002
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
29/09/2003
V. 096a
13/10/2003
V. 096j
14/10/2003
Verso:
157
Data: 01/10/2015
96
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
Verso:
157
Data: 01/10/2015
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
02/08/2004
V. 0.98z8
V. 0.98/nv/4
24/08/2004 Includa as funes que permitem interromper a leitura de um carto proprietrio por
V. 0.99
temporizao ou chamada de rotina externa
03/05/2005 Incluso de um novo cdigo de retorno para a funo ConfiguraIntSiTef.
97
Data
26/08/2004
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
27/08/2009
14/09/2009
30/09/2009
07/10/2009
Verso:
157
Data: 01/10/2015
Histrico de Alteraes
Descrio
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 padro
1.00.a.4
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.
1.01.c.94.113
Incluso da rede Algorix
1.01.c.94.129
Incluso do PBM Fidelize
1.01.c.94.135
Incluso da rede CompreMax
1.01.c.94.137
Incluso do cancelamento de carto combustvel genrico
98
1.01.c.94.191
1.01.c.94.195
1.01.c.94.201
1.01.c.94.207
-
06/07/2010
06/08/2010
21/09/2010
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
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
22/09/2011
25/10/2011
15/12/2011
09/05/2012
14/11/2012
4.0.102.12 r1
4.0.102.12 r14
4.0.104.6 b6
-
21/12/2012
02/01/2013
4.0.106.18 r1
4.0.106.18 r1
Verso:
157
Data: 01/10/2015
99
4.0.106.18 r1
26/02/2013
06/03/2013
13/03/2013
4.0.106.20 r1
-
29/04/2013
14/06/2013
17/09/2013
02/10/2013
18/10/2013
02/01/2014
13/01/2014
29/01/2014
4.0.111.3 r1
11/02/2014
27/02/2014
02/04/2014
03/04/2014
09/04/2014
4.0.111.4 r1
-
14/05/2014
10/06/2014
17/06/2014
23/06/2014
4.0.111.16 r1
22/07/2014
18/08/2014
4.0.111.18 r1
21/08/2014
28/08/2014
Verso:
157
Data: 01/10/2015
100
05/09/2014
11/09/2014
23/09/2014
16/10/2014
29/10/2014
31/10/2014
28/11/2014
24/02/2015
26/03/2015
4.0.112.26 r1
09/04/2015
15/04/2015
27/05/2015
29/05/2015
27/08/2015
14/09/2015
01/10/2015
4.0.112.42 r1
Verso:
157
Data: 01/10/2015
3.2.1.
Incluso dos Tipo Campos 3270, 3271 e 3272 que so opes de
menu para TrnCentre PBM.
Atualizao da lista de redes habilitadas.
Detalhamento das funes/modalidades 10 e 11 incluindo a
informao que so especifica para rede Wappa.
Removidos campos legados 141 e 142.
Includas as modalidades/funes 675 e 676.
Incluso das rotinas LeCartaoDiretoSeguroEx e
LeCartaoDiretoSeguroExA.
Atualizada descrio do campo 731.
Incluso do menu reimpresso especifico outros 3675.
Incluso da modalidade 658 para poder efetuar a transao de Saque
Crdito de forma direta.
Incluso na tabela de eventos os campos 5027, 5028, 5029, 5030,
5031, 5036, 5037, 5038, 5039, 5040, 5041, 5042, 5043, 5044.
Incluso dos campos 587 e 588, sero retornados nas transaes de
recarga.
Incluso da modalidade de pagamento Carto Fidelidade ao
TipoCanpo 100.
Incluso dos cdigos de menus 3624, 3625 e 3626.
Incluso do item 3.18 Carga de Tabelas no PinPad sem alterao na
Automao;
Incluso do item 4.1.2 Configurao quando a Automao no
utilizar pinpad;
Incluso do item 4.2.7 Como passar um novo valor da compra da
transao na CliSiTef
Incluso do item 4.1.3 Configurao de um segundo pinpad
Esclarecimento para o item 3.4, Confirmao ou No do Pagamento.
A confirmao da transao deve possuir mesmo nmero de cupom
fiscal e mesma data da transao realizada para ser confirmada com
sucesso.
- Incluso de configurao para realizar transaes com carto Gift
forando a rede (por exemplo Condor).
- Incluso dos campos 2467, 2468 e 2469.
101