Browser POS-SiTef

ESPECIFICAÇÃO TÉCNICA#

Versão B07.03.07r000 220711 Rev A

Sumário#

Introdução

Objetivo

Público-Alvo

Características das Versões

Arquitetura da Solução

Funcionamento Geral do Browser

Tags HTML suportadas pelo Browser

Arquivo de Restrições

Comunicação com o módulo POS-SiTef

Gerenciamento de imagens para impressão

Fluxos de impressão e confirmação da transação

Mecanismo de reenvio dos dados TEF

Nota Fiscal Eletrônica: NFC-E e CF-E-SAT

Suporte a JavaScript

Suporte a Cookies

Identificação do Browser

Visualização de Licenças

Histórico de Alterações

Introdução#

Este documento tem como objetivo descrever o módulo Browser (navegador web) POS-SiTef.

Objetivo#

Auxiliar os desenvolvedores de automações comerciais a integrarem suas soluções com o Browser POS-SiTef

Público-Alvo#

Todos os desenvolvedores de automações comerciais e equipes da Software Express.

Características das Versões#

Abaixo a descrição das versões:

Versão 01.00

  • Versão inicial do browser.

  • Suporte a WiFi.

  • Suporte a Proxy.

  • Suporte a HTML 4: Interpretação limitada. As descrições das tags aceitas estão presentes na seção Tags HTML suportadas pelo Browser.

  • Integração com POS-SiTef através de formulário.

  • Utilização da arquitetura VMAC da VeriFone.

Versão 01.03

  • Suporte a Ethernet Combo.

  • Suporte a HTML 4: Aceite da tag password.

  • Melhorias na navegação de campos em formulários

  • Aceite limitado de cookies, para uso em sessões.

Versão 01.04

  • Suporte a discagem via Dial Up.

  • Aceite da tag card em campos de formulário.

  • Aceite da resolução de nomes via DNS.

  • Impressão de páginas.

Versão 01.05

  • Correções diversas.

  • Definição de senha de supervisor para acesso à parte de funções.

Versão 01.06

  • Inclusão de cache de páginas.

Versão 01.13

  • Correções diversas referentes à performance e WiFi.

  • Suporte a GPRS.

  • Inclusão de um dicionário de palavras.

  • Inclusão de bloqueio de leitura de cartão para qualquer range.

Versão 01.20

  • Correções diversas referentes à manipulação de memória.

  • Correção da função de histórico de endereços.

  • Inclusão do tipo serial na tag input para leitura da porta serial em formulários.

  • Inclusão do tipo repom-smart na tag input para leitura de smart cards da Repom em formulários.

  • Suporte parcial a JavaScript (opcional).

Versão 01.21

  • Suporte a lista de palavras permitidas.

  • Funcionalidade de impressão de texto através da tag <PRE>.

Versão 01.22

  • Mudança na parte de envio de comprovante através do browser.

Versão 01.29

  • Envio do modelo e do número de série do terminal junto com o header "User-Agent" das mensagens HTTP.

  • Impressão de código de barras dentro do comando de impressão (tag <PRE>).

  • Centralização dos textos no comando de impressão (tag <CENTER> dentro da <PRE>).

  • Comando de pausa na impressão (tag <PRE>).

Versão 01.34

  • Criação da opção TRANS_HAB no form SITEF para escolha pela AC da modalidade de pagamento executada no módulo POS-SiTef.

Versão 01.36

  • Criação da tag <ALARM> para a AC enviar um alerta para o usuário do Browser.

Versão 01.37

  • Criação da opção EMPRESA no form SITEF para definição do código da empresa na transação em questão.

  • Inclusão dos caracteres ?$%()|_ na tecla ALPHA.

  • Correção no método POST (espaços em branco eram bloqueados em pagina ASP)

  • Correção no parser de páginas HTML com a tag de impressão <PRE>

  • Inclusos campos COD_CLIENTE e NUM_PARC na recepção do FORM_TEF

  • Inclusos campos NSU_HOST, NSU_SITEF, NSU_HOST_RECARGA, NSU_SITEF_RECARGA e VLTROCO na resposta de campos FORM_TEF.

  • Correção tratamento do Campo parcelas (parcelas excedentes ou inválidas).

Versão 01.38

  • Incluso cabeçalho de comunicação para exibir sinal e bateria.

  • Correção para aceitar chave de criptografia com letras minúsculas

  • Incluso tratamento para o modo de funcionamento: POS Imprime e Automação Confirma. (modo habilitado no licenciamento da aplicação).

Versão 01.39

  • Melhorias de desempenho em exibição de páginas maiores que 5KB e em requisições HTTP POST

  • Correção no tempo de espera para exibição de páginas

  • Melhorias na exibição de códigos de erro

  • Correção no recebimento de pacotes de dados

  • Configuração - Correção na configuração de APN GPRS "Outra".

  • Configuração - Correção no layout, alteração de títulos e de ordem de coletas.

  • Configuração - Remoção de coletas de número de vias, timeout e ping.

  • Configuração - Opção "cookies" desabilitado por padrão.

  • Configuração - Removido timeout nas telas de coletas.

  • Adicionado mapa de chaves na aplicação Browser.

  • Melhorias na tela de exibição de versão.

  • Adicionada a modalidade de Impressão e Confirmação: POS Imprime e Automação Confirma

Versão 02.00

  • Funcionalidades:

    • Exibição de Bateria e Status de conexão.

    • Configuração para IP SiTef Adicional

    • Configuração para Cabeçalho do ticket - fantasia, endereço, cidade, cnpj

    • Cabeçalho de comunicação c/ ícones de sinal e bateria

    • Menu de informações:

      • exibindo os dados da IP (EMV)

      • exibindo nro logico do terminal

      • impressão do menu de informações

      • ID do sim card e operadora GPRS

    • Telecarga automática: Consulta automática e menu de retaguarda

    • Menu de manutenção (teste de dispositivos)

    • Permitido cancelamento da 2a via do ticket

    • Configuração da 1a via: estabelecimento ou cliente

    • Fluxo de bateria mínima

    • Configuração de bateria idle/off

    • Campos do FormTEF: Retorno do campo código de Autorização para o FormTEF.

  • Melhorias:

    • Adicionada reconexão física entre páginas e transação TEF

    • Configuração manual de comunicação agora só exibe opções possíveis ao terminal

    • Menu de funções: Movido pedido de senha de supervisor para apenas dentro das opções que a requerem

    • Erros de Comunicação:

      • Exibição de mensagens para codigos de erro de pagina:

        • HTTP: 400 (badreq) 401 (auth), 403 (forbidden), 404 (notfound), 503 (internalservererror)

        • Internos: 902 (canc), 905 (timeout), 906 (dns), 907 (resetbypeer)

        • Internos: -52 (dns)

      • Exibição de mensagens para códigos de erro comuns:

        • SIM Card Ausente

        • Sinal insuficiente

        • Falha no registro

        • Falha de attach

Versão 02.01

  • Correção da falta de descrição de erros HTTP 500 (Internal Server Error)

  • Campo TEF EMPRESA:

    • Se estiver presente, mas vazio, a empresa SiTef utilizada será a já configurada no terminal.

    • Caso contrário, é completado em 8 dígitos com zeros à esquerda.

  • Melhoria de performance (reduzidas alocações de memória desnecessárias).

  • Removida exibição do conteúdo da tag HTML <style>. Esta tag e CSS continuam não sendo suportados.

  • Correção da possibilidade de passar mais caracteres em HTML <input type="text"> do que o permitido pelo atributo maxlength.

  • Correção no tratamento de caracteres de texto HTML especiais (ex: &aacute;).

  • Adicionado mostrador de atividade na tela de TEF Insira ou passe o cartão.

  • Correção da não passagem do número do terminal em vendas TEF.

  • Adicionado envio da versão completa e o número de série do equipamento ao requisitar uma telecarga.

Versão 02.02

  • Aumento da quantidade de memória disponível para uso de JavaScript.

Versão 02.03

  • Correção de tratamento dos campos IMP_ e SAC_ (introduzido na versão 02.01).

  • Suporte ao Vx680 WiFi WPA-TKIP

  • Adicionado repasse dos dados locais de comunicação do GerApps ao Browser.

  • WiFi: Remoção da coleta do canal.

  • Adicionada impressão de trecho do KSI no mapa de chaves.

  • Adicionado uso da tecla # (sustenido) como . (ponto) nas configurações de IP.

  • Adicionado suporte à Instalação de POS com URL, cookies e IP TEF adicional.

  • Correção da mensagem de aviso de transação confirmada mas não impressa.

Versão 02.04

  • WiFi: Adição dos modos Vx680 WiFi WPA/WPA2 em TKIP/AES.

  • Correção das impressões de cupom de TEF centralizadas.

  • Uso da Interface Padrão 412-5.0.6. Corrige diversos problemas de tratamento de cartões (ex: 70-Modo inválido).

  • Correção no tratamento de pendências com IP TEF adicional habilitado.

  • Adicionado uso da tecla # (sustenido) como . (ponto) para IP TEF adicional.

Versão 02.05

  • Correção da inconsistência na quantidade de colunas de impressão. Todas as páginas imprimem em 42 colunas (introduzido na versão 01.37).

  • Correção de system error caso faltar a tag HTML </pre>.

  • Correção de invasão de memória durante a formatação de alguns cupons de TEF.

  • Correção no layout de impressão TEF.

    • Terminal liberado por instalação: adicionado descritivo "CNPJ" precedido do valor do mesmo.

    • Terminal liberado por contra-senha: removidas 4 linhas vazias desnecessárias.

  • Tela de informações: adicionada versão do EOS

  • Correção do tratamento da transação Cielo Premia.

Versão 02.06

  • Boleto: correção de invasão de memória para campos grandes.

  • Vx520: correção de leitura de teclas.

  • Alteração no envio de HTTP POST

    • Não utiliza mais o header 100-continue e não mais envia o conteúdo do formulário em uma segunda mensagem, evitando problemas causados por proxies e queda de conexão.
  • Correção de HTTP POST redirecionando a outra página

    • A redireção é realizada com um GET ao invés de POST. Vide "PRG (Post/Redirect/Get) Pattern".
  • Correção de envio de Cookie duplicado no header HTTP pós-redirecionamentos.

Versão 02.07

  • Nova página em branco com diversas opções, caso houver falha de conexão ou não houver página inicial configurada. As opções são:

    • Página inicial (se estiver configurada)

    • SiTef venda e SiTef administrativo (se a modalidade for POS Imprime e Confirma)

    • Informações

    • Mais opções (redireciona ao menu de funções completo).

  • Adicionado suporte à tag HTTP <meta> com atributo http-equiv="refresh".

  • Corrigida a tag <PRE> com atributo URLOK/URLERR utilizando URLs relativos.

  • Removida possibilidade de POST com URL não-relativo, para previnir CSRF.

  • Remoção da restrição de POST com formulário vazio (introduzido na versão 02.06).

  • Adição do método SITEF_MULTPAG, que permite pagamentos múltiplos na modalidade POS Imprime e Confirma.

  • Correção do campo COD_CLIENTE não tendo efeitos em transações administrativas.

  • Removida finalização desnecessária da conexão com servidor TEF entre a impressão do cupom e a confirmação da transação, ganhando tempo em cada TEF realizado.

  • Correção de carregamento de URLs erradas após uso de redirecionamento.

  • Alterada Consulta TEX manual para avisar caso o terminal estiver desconfigurado.

  • Adicionada opção de configuração do tempo máximo para carregamento de página e de recepção de página.

  • Adicionada opção de configuração do tempo máximo de inatividade até abortar uma transação em andamento.

  • VxEOS: Alterado número máximo de sockets para 32 para reduzir a possibilidade do erro "connect 24".

Versão 02.08

  • Correção de erros de redirecionamento a partir de URLs que possuem ? ou # (erro introduzido na versão 02.07).

Versão 02.10

  • Correção de timeout (erro 905) quando o servidor responde redirecionamento para um envio de formulário (erro introduzido em 02.08)

Versão B03.02.01r000

  • Adicionado reuso da conexão TCP em no máximo 5 segundos para carregamento de páginas (depende também da configuração do servidor). Todo redirecionamento reusa a mesma conexão TCP.

  • Adicionada mensagem de erro condizente quando a conexão é recusada (ex: firewall ou servidor de páginas fora do ar)

Versão B03.02.03r000

  • Correção de Erro de JavaScript causado esporadicamente. O motivo era problema no parser de JavaScript quando uma fragmentação TCP (que ocorre comumente em GPRS) ocorria em uma quebra de linha dentro da tag <script>. Este erro poderia ocorrer em todas as versões anteriores com JavaScript.

Versão B03.02.04r000

  • Correção de cookies não aceitando valores com caracteres especiais

  • Correção na função de remoção de todos os cookies, que não funcionava desde a versão 01.39.

  • Correção no tratamento de URLs começadas com barra (/). Este erro foi introduzido na versão 02.07.

Versão B03.02.05r000

  • Adicionado campo de resposta opcional NSU_HOST_DIGITADO, utilizável para atrelar transações como em cancelamentos e reimpressões.

Versão B03.03.00r000

  • Simplificadas mensagens de processamento e status do módulo TEF.

  • Habilitado suporte à compactação das mensagens do módulo TEF (mensagens com o servidor SiTef).

Versão B03.03.01rc01

  • Correção da configuração de senha WiFi não permitindo caracteres especiais (#, ., etc.)

  • Adicionado novo valor do campo TIPO_TRN com valor 3 para permitir uso de qualquer modalidade CliSiTef. Para definir a modalidade, é necessária definição do campo MOD_TRN com a modalidade da CliSiTef desejada.

    • Esta característica permite realizar, por exemplo, Recarga de Celular Pré-Pago.
  • Adicionados campos RECCEL_OPERADORA e RECCEL_DDD_TELEFONE para Recarga de Celular Pré-Pago.

Versão B03.03.02r000

  • Adição dos campos de retorno PAN_CARTAO_CRIPTOGRAFADO e VENCIMENTO_CARTAO quando há uso de .cha habilitado.

  • Adição do form method SITEF_CARTAO para coletar PAN_CARTAO_CRIPTOGRAFADO e VENCIMENTO_CARTAO sem fazer TEF.

Versão B03.03.03r000

  • Adição de todos os outros campos de retorno possíveis com uso do .cha:

    • PAN_CARTAO_MASCARADO

    • NOME_PORTADOR

    • TRILHA1_MASCARADO

    • TRILHA2_MASCARADO

    • TRILHA3_MASCARADO

    • PAN_CARTAO_HASHDINAMICO

    • VENCIMENTO_CARTAO_HASHDINAMICO

    • NOME_PORTADOR_HASHDINAMICO

    • TRILHA1_HASHDINAMICO

    • TRILHA2_HASHDINAMICO

    • TRILHA3_HASHDINAMICO

    • VENCIMENTO_CARTAO_CRIPTOGRAFADO

    • NOME_PORTADOR_CRIPTOGRAFADO

    • TRILHA1_CRIPTOGRAFADO

    • TRILHA2_CRIPTOGRAFADO

    • TRILHA3_CRIPTOGRAFADO

    • PAN_CARTAO_HASHFIXO

    • VENCIMENTO_CARTAO_HASHFIXO

    • NOME_PORTADOR_HASHFIXO

    • TRILHA1_HASHFIXO

    • TRILHA2_HASHFIXO

    • TRILHA3_HASHFIXO.

  • Alterado form method SITEF_CARTAO para que seja possível renegociar de um novo .cha quando a abertura de terminal expira. Até a versão anterior, era necessário iniciar um TEF para que a abertura de terminal, que realiza a negociação do .cha, pudesse ser disparada.

  • Alterados form methods SITEF e SITEF_PAGMULT para devolverem o mesmo Código do Cliente utilizado como entrada.

Versão B03.03.04r000

  • Adição do form method SITEF_INFO para resgatar dados do equipamento. Atualmente estão previstos Terminal SiTef, Empresa SiTef e S/N do Terminal.

  • Extensão do form method SITEF para permitir invocação de qualquer modalidade da CliSiTef via campos TIPO_TRN=3 e MOD_TRN

Versão B03.03.05r000

  • Extensão do form method SITEF para devolver o mesmo campo MOD_TRN utilizado na requisição.

  • Reestruturação do menu de configuração do Pooling (ver manual do usuário).

  • Aumento dos limites internos de Cookies.

Versão B04.00.01rc00

  • Possibilidade de impressão de QRcode usando o comando especial qrcodestart da tag <PRE>

    • Somente modelos Verifone Verix eVo

Versão B05.00.00r000

  • Reestruturação do menu de informações

  • Correção no menu de funções, a página era erradamente renderizada novamente antes de executar a opção.

  • Simplificação/centralização do fluxo de confirmação de cupom via tag <PRE> com atributos URLOK e URLERR

  • Correção no fluxo do pooling

  • Corrigida não exibição do cabeçalho de comunicação imediatamente após uma transação automática alterar a tela

  • Removido suporte à tag HTML <print>, que não é documentada e permitia invasões de memória pela página

Versão B05.00.02r000

Versão B05.01.00r000

  • Removidos valores serial e repom-smart como atributo type da tag <input>.

  • Deprecado valor card como atributo type da tag <input>. Substitua o fluxo por <form method="SITEF_CARTAO">.

  • Adicionados valores date e time para o atributo type da tag <input>

  • Adicionado atributo data-swex-keymap para <input type="text">, servindo como filtro de teclas digitadas

  • Adicionados atributos onfocus e onblur para tags <input> e <select>.

  • JS DOM: Adicionado objeto document.forms, contendo todas as tags <form>

  • JS DOM: Adicionado objeto document.forms[idx].elements (também referenciável via document.<formname>.elements), contendo todas as tags <input> e <select> abaixo da tag <form>.

  • Removida exibição da URL da página sendo carregada (pode ser restaurada via Dados Terminal).

Versão B05.01.01r000

  • Adição do form method SITEF_FINALIZA para permitir finalizar no POS as transações efetuadas nas modalidades Automação Confirma.

  • Adicionado retorno DATAHORA_SITEF para form method SITEF e SITEF_PAGMULT

  • Adicionados retornos VERSAO_APL, MODALIDADE_APL, LIBERACAO, INST_ID_REDE, INST_ID_CHAVE_ATIVACAO, COMP_NOME_FANTASIA, COMP_LOGRADOURO, COMP_CIDADE, COMP_CNPJ para form method SITEF_INFO

  • Correção da documentação: a modalidade "POS Imprime e Confirma" confirma a transação imediatamente antes da impressão do cupom. A documentação informava erradamente que a transação era desfeita. A seção foi reescrita.

Versão B05.01.03r000

  • Suporte para automação informar os dados de subadquirência para o Browser para form method SITEF e SITEF_PAGMULT com os campos SUB_*.

  • Suporte para automação consultar os dados de subadquirência configurados no Browser no momento da instalação com o form method SITEF_INFO.

  • Foi deprecado o campo COMP_CNPJ da resposta do form method SITEF_INFO.

  • Correção de alguns casos o Browser ignorar o valor da transação passado pela automação.

Versão B05.01.04r000

  • Correção submit de formulário via JavaScript não sendo executado quando a página atual foi carregada via <PRE>, <META>, 'página inicial', 'atualizar página' ou 'entrar endereço' (problema surgiu na versão B05.01.00r000).

  • Correção de redirecionamento não sendo executado quando a página atual foi carregada por outro redirecionamento (ex: via <PRE>)

Versão B05.01.05r000

  • Correção da remoção do cartão pós-impressão não ocorrendo na modalidade Browser Imprime e Confirma (problema surgiu na versão B04.00.00r000).

Versão B05.01.06r000

  • Adicionada nesta documentação o atributo data-swex-mask para uso da tag <input type="text"> para coletar dados com máscara na exibição (ex: para CPF e CNPJ). Este atributo já existia desde a versão B05.01.00r000.

  • Adicionado valor decimal para o atributo data-swex-mask para uso da tag <input type="text"> para coletar dados fracionários (ex: volume em litros ou monetário)

  • Adicionado atributo data-swex-fracdigits para definir a quantidade de dígitos da coleta fracionária para o atributo data-swex-mask="decimal".

  • Adição do método de javascript beep(), que emite som pré-definido no POS.

  • Correção da não execução do fluxo de impressão de rodapé dos cupons TEF (campos IMP_XX). Alterada documentação para refletir a implementação - a ordem de impressão sempre foi inversa (ex: IMP_03 IMP_02 - IMP_01). Problema ocorria desde a versão B04.00.00r000.

  • Correção de crash quando o Browser está configurado para exibir título (<title>) mas este não foi fornecido pela página. Problema ocorria em todas as versões.

  • Correção de sujeiras de tela (letras ou fundos invertidos) durante transições de tela. Problema ocorria desde a versão B04.00.00r000.

Versão B05.01.07r000

  • Correção do mecanismo de reenvio dos dados TEF não possuindo em determinadas condições os campos obrigatórios: EMPRESA, TERMINAL, VALOR, CODTRANS

  • Correção da não exibição de aviso quando a última transação foi confirmada mas não houve impressão do cupom

  • Correção de problemas na ativação do Proxy HTTP

Versão B05.01.12r000

  • Adicionada capacidade de não imprimir dados do cabeçalho do cupom (necessário para projetos de Subadquirência)

Versão B05.01.13r000

  • Adicionado suporte aos terminais Verifone VxEOS E265, PAX Prolin S920 e Gertec GEDI GPOS400

  • Correção de travamento do terminal ao configurar Proxy com IP/porta inválida

  • Melhoria de performance de telas durante navegação de páginas

  • Adicionado cabeçalho de comunicação em todas as telas (páginas, editores de campos nas páginas e módulo TEF)

Versão B05.01.14r000

  • Removida exibição repetida de erros de comunicação

  • Melhoria de performance de telas durante navegação de páginas

  • Correções de tela em relação à versão anterior

  • Correções diversas para PAX Prolin

Versão B05.01.15rc01

  • Correção do mecanismo de reenvio dos dados TEF ao reiniciar o terminal

  • Adição do campo RESULTADOS para obter resultados CliSiTef nos métodos SITEF, SITEF_PAGMULT e SITEF_CARTAO

  • Adição dos comandos de impressão \barcode128, \barcode128h e \feed

Versão B05.02.02rc01

  • Adição do campo PAR_TRN_<TIPO CAMPO>_<N> para fornecer dados solicitados pela CliSiTef no método SITEF

Versão B05.03.00r000

  • Junção das versões B05.01.15rc01 e B05.02.02rc01

Versão B05.03.03r000

  • Adição do campo de retorno REENVIO para indicar que a mensagem foi disparada pelo mecanismo de reenvio dos dados TEF.

Versão B05.04.01r000

  • Ingenico Telium 2: Adicionado suporte à impressão de QRCode.

Versão B05.05.00r000

  • Adição de <meta data-swex-ui="pos"> para edição passo a passo

  • Adição de <meta data-swex-ui="inline"> para não utilizar o editor de campos

  • Adição de <meta data-swex-cancel-url="linkcanc.html" data-swex-cancel-action="abort"> para fazer a tecla cancela chamar uma URL

  • Adição de <meta data-swex-ui="pos" data-swex-cancel-url="linkcanc.html" data-swex-cancel-action="abort-if-first"> para fazer a tecla cancela chamar uma URL apenas na primeira edição passo a passo

  • Correção dos campos NSU_SITEF e NSU_HOST não devolvendo o NSU de transação da Recarga de Celular Pré-pago com TEF

  • Adição do campo de entrada RESULTADOS_SEPARADOR nos métodos SITEF, SITEF_CARTAO e SITEF_PAGMULT para obter TipoCampos repetidos dentro de uma mesma transação

  • Alterado campo de retorno COMP_DADOS_CONF para concatenar as confirmações de uma transação encadeada, separando com ;

  • Alterado método SITEF_INFO para retornar o campo PEND_QTDETRANS (quantidade de transações pendentes no terminal) e os campos PEND_CUPOM_FISCAL_<i>, PEND_DATA_FISCAL_<i>, PEND_HORA_FISCAL_<i>, PEND_MOD_TRN_<i>, PEND_VALOR_<i> para cada transação pendente.

  • (Browser Automação Confirma) Alterado método SITEF_FINALIZA para aceitar os campos de entrada COMP_CUPOM_FISCAL, COMP_DATA_FISCAL e COMP_HORA_FISCAL e deprecado uso de COMP_DADOS_CONF e CODRESP. COMP_DADOS_CONF + CODRESP ainda podem ser utilizados para transações iniciadas antes da mudança de versão.

  • (Browser Automação Confirma) Alterado método SITEF para aceitar o COMP_USAR_DADOS_CONF, que faz com que uma transação ainda possa ser finalizada no modo antigo (via COMP_DADOS_CONF) e que o método SITEF_INFO não reporte a transação como pendente.

  • Adicionado atributo TITLE para as tags INPUT e SELECT.

Versão B05.05.01r000

  • Correção de resolução DNS de nomes de domínio grandes

Versão B05.06.09r000

  • Verifone C680: Aumento da fonte de tela.

  • Correção e padronização do módulo de impressão: Terminais Verifone VxEOS com suporte a caracteres acentuados

  • Correção e padronização do módulo de impressão: Terminais Telium 2, Telium Tetra e PAX-Prolin com velocidade maior de impressão

  • Correção e padronização do módulo de impressão: Terminais PAX-Prolin e Gertec GEDI com velocidade maior de impressão, fonte mais forte e espaçamentos entre linhas equalizados com Verifone

Versão B05.06.11r000

  • Correção para que CODRESP 00 + restante dos dados da transação sejam enviados caso houver reinício do terminal durante solicitação da 2a via do cupom na modalidade POS Imprime e Confirma. Anteriormente, o código 98 era enviado.

Versão B05.07.02r000

  • Inclusão dos métodos IMG_CARREGA e IMG_APAGA.

  • Adição do comando de impressão \img

Versão B05.09.06r000

  • Correção da tag <PRE> quando há subcomandos consecutivos (ex: feed seguido de pause), não executando o subcomando corretamente e considerando a impressão como falha, invocando o atributo URLERR.

  • Correção do User-Agent com nome da aplicação e número de série com espaços ao invés de underline (erro existente nas versões B05.07.xx, B05.08.xx, B05.09.04 e B05.09.05)

Versão B06.02.00r000

  • Criação do campo DOC_INTEGRADOR no método SITEF para que a Automação Comercial possa informar ao SiTef o CNPJ do Integrador.

Versão B07.03.00r000 210706

  • Alteração para que seja possível passar, no campo COD_AUTORIZACAO do método SITEF, o NSU estendido retornado do FEPAS de tamanho até 99 caracteres.

Versão B07.03.06r000 220613

  • Criação do campo PAR_TRN_CODBAR_<TIPO CAMPO>_<N> do método SITEF para possibilitar, para a Automação Comercial, a pré-definição do código de barras a ser fornecido em transações de pagamento de contas, evitando assim a intervenção do operador do POS numa eventual coleta.

Versão B07.03.07r000 220711

  • Criação dos campos CD_HABILITADAS e CD_RESTRICOES do método SITEF para possibilitar que a Automação Comercial filtre, para cada transação, as opções exibidas no menu de carteiras digitais;
  • Criação do campo CD_PRIORIZADAS do método SITEF para permitir que a Automação Comercial pré-defina, para cada transação, a ordem em que as opções serão exibidas no menu de carteiras digitais;
  • Criação do campo RESTRICOES_PAGTO do método SITEF para permitir que a Automação Comercial restrinja, para cada transação, as modalidades de pagamento exibidas na tela do POS.

Arquitetura da Solução#

Para fins de nomenclatura, define-se como browser POS-SiTef (referido nesse documento somente por browser) o módulo de navegação web que será carregado dentro do POS, juntamente com o módulo POS-SiTef (referido nesse documento somente por POS-SiTef), que será encarregado de realizar a parte de transferência eletrônica de fundos.

O browser funciona em conjunto com o POS-SiTef e utiliza o seguinte fluxo transacional:

  1. O desenvolvedor da Automação Comercial (AC) escreverá as páginas relativas ao software de automação comercial, que serão interpretadas pelo browser.

  2. Quando for necessário finalizar qualquer transação financeira, o desenvolvedor da AC irá criar um formulário, conforme descrito na seção Formulários.

  3. Ao selecionar o botão de envio de formulário, o browser transferirá o fluxo de execução para o módulo POS-SiTef, que realizará o pagamento conforme descrito na seção Comunicação com o módulo POS-SiTef.

  4. Após a realização do pagamento, o fluxo de execução retornará para o browser. Pode-se continuar a navegação por outras páginas.

Fica a cargo do desenvolvedor de páginas para o servidor AC notar os seguintes itens:

  1. Utilizar código HTML de acordo com as regras descritas na seção Tags HTML suportadas pelo Browser. Tags não descritas nesse documento serão ignoradas. Nem todas as tags HTML 4 são interpretadas conforme a especificação.

  2. O suporte a JavaScript é limitado (suficiente para validação de campos de formulários).

  3. Imagens, sons e vídeos não serão exibidos.

  4. Linguagens de servidor (ASP, ASP.NET, PHP, JSP, entre outros) podem ser utilizadas, desde que o resultado da execução dos scripts seja feito no formato HTML.

  5. Applets não são suportadas.

A arquitetura da solução representada na figura a seguir:

Figura 1

Para comunicação TCP/IP está disponível as tecnologias WIFI, GPRS e Ethernet de acordo com a capacidade de hardware do POS.

POS-SiTef#

Aplicativo que coleta dados transacionais: cartão do cliente, senha criptografada, etc e realiza transações com o SiTef.

Browser POS-SiTef#

Aplicativo responsável por interpretar páginas em formato HTML, executar scripts em JavaScript e conversar com o módulo POS-SiTef.

Funcionamento Geral do Browser#

Telas Iniciais#

Ao ser iniciado, o browser irá mostrar a tela de apresentação para configuração, ou se já estiver configurado e conectado irá exibir a própria página HTML da automação.

Para maiores detalhes sobre o funcionamento Geral e funcionalidades disponíveis, consulte o manual: POS-SiTef - Navegador - Manual do Usuario.pdf.

Terminal já configurado com página inicial configurada e acessível:

#TelaDescrição
1Carregando parametros

Browser POS-SiTef
01.39-20120827-tj
Exibe a versão da aplicação enquanto aplica configurações vindas por meios externos (telecarga ou instalação de POS).
2Conectando...

Browser POS-SiTef
01.39-20120827-tj
Exibe a versão da aplicação enquanto realiza a conexão física do terminal. Esta operação pode demorar até três minutos, dependendo do tipo de conexão (GPRS, WiFi).
3Carregando aplicacao AGUARDE...

Browser POS-SiTef
01.39-20120827-tj
Exibe a versão da aplicação enquanto realiza a inicialização da aplicação.
4«PÁGINA INICIAL»Exibe a página inicial. Usuário: Realiza seus procedimentos internos de acordo com a página exibida. Pode também pressionar a tecla [F2] para acessar o menu de funções.(*)

Tabela 1: Telas iniciais

Terminal não configurado ou com página inicial desconfigurada:

#TelaDescrição
1MENU DE FUNCOES

>TEF DIRETO - VENDA

TEF DIRETO - ADM

PAGINA INICIAL

ATUALIZAR PAGINA

FERRAMENTAS

SUPORTE

DADOS TERMINAL
Exibe a versão da aplicação enquanto aplica
configurações vindas por meios externos
(telecarga ou instalação de POS).

Tabela 2

Tags HTML suportadas pelo Browser#

As páginas HTML que serão visualizadas pelo browser poderão conter qualquer tag HTML padrão versão 4.0. Porém, somente algumas tags serão interpretadas, todas as outras serão ignoradas. Em versões futuras do browser podem ser inclusas novas tags nessa documentação. As tags podem ser escritas em maiúsculas ou minúsculas, conforme a escolha do desenvolvedor.

<META HTTP-EQUIV="REFRESH" CONTENT="tempo;URL=url">#

No momento, o atributo http-equiv="refresh" é suportado de forma limitada.

HTTP-EQUIV#

O parâmetro HTTP-EQUIV aceita apenas o valor "REFRESH", indicando redirecionamento de página após terminar o carregamento da página corrente.

CONTENT#

O parâmetro CONTENT possui os valores necessários ao atributo http-equiv e aceita os seguintes valores:

  1. "tempo": tempo em segundos para redirecionar a página após terminar o carregamento da página corrente. Caso for zero, a página corrente não é armazenada no histórico, para prevenir loops de redirecionamento. Este valor é obrigatório.

  2. "URL=url": URL, relativa ou absoluta, para onde redirecionar a página. Este valor é obrigatório.

<META data-swex-ui="modo" data-swex-cancel-action="acao" data-swex-cancel-url="url">#

data-swex-ui#

Identifica o modo de edição dos campos de um formulário. Utilize um dos seguintes valores:

  • browser ou ausente (UI Browser): digitação de teclas [0-9] ou [ENTER] com o cursor em <INPUT> ou <SELECT> abre uma tela de edição.

  • inline (UI inline): digitação de teclas [0-9], [ALPHA] ou [CLEAR] com o cursor em <INPUT> ou [ESQUERDA] ou [DIREITA] em <SELECT> altera diretamente o dado.

  • pos (UI POS): abre telas de edição sequenciais de todos os <INPUT>s e <SELECT>s do primeiro <FORM> existente. Automaticamente, realiza envio dos dados no último passo. Este modo faz com que as tags <A>, <P>, <BR>, <INPUT TYPE="SUBMIT"> e <INPUT TYPE="RESET"> sejam ignoradas.

data-swex-cancel-url#

Define a URL que será chamada de acordo com as regras do atributo data-swex-cancel-action, descritas a seguir.

data-swex-cancel-action#

Identifica o comportamento da tecla [CANCELA]. Utilize um dos seguintes valores:

  • none ou ausente:

    • Em modo UI Browser, a tecla [CANCELA] faz nada.

    • Em modo UI inline, a tecla [CANCELA] desfaz as alterações feitas no campo selecionado.

    • Em modo UI POS, a tecla [CANCELA] volta à edição do passo anterior.

  • abort: a tecla [CANCELA] chama a URL definida pelo atributo data-swex-cancel-url.

  • abort-if-first: (Modo UI POS apenas) se a edição atual for a primeira, a tecla [CANCELA] chama a URL definida pelo atributo data-swex-cancel-url.

<TITLE> e </TITLE>#

Essas duas tags marcam o início e o fim do título de uma página HTML. Todo o texto contido entre essas duas tags (limitado ao tamanho do display do terminal) será mostrado na segunda linha do browser, como demonstrado a seguir, mas apenas se a exibição estiver habilitada na função Dados Terminal:

http://
Conteúdo de title
Restante da página

<P>#

Deixa uma linha em branco no browser. A tag </p> não é necessária.

<BR>#

Pula para a próxima linha no browser. Atenção: vários comandos <br> em sequência não deixarão várias linhas em branco. Para isso, utilize a tag <p>.

Textos#

Qualquer texto presente que não esteja contido em algum parâmetro de alguma tag específica será mostrado de forma literal na tela do browser. Até essa atual versão, tabelas serão ignoradas.

  • Tags de formatação de texto como <font>, <strong>, etc. serão ignoradas.

  • Qualquer espaço em branco vindo no começo de um texto será ignorado.

Exemplo de página html:

<!DOCTYPE html>
<title>Teste POS SiTef 01</title>
<p>Texto em página html</p>
<p>Linha seguinte</p>
<p>
Linha em branco no meio
<table border="0">
<tr>
<td align="right"><strong>Tabela Ignorada</strong></td>
</tr>
</table>
Texto após a tabela

Será mostrado da seguinte forma no browser:

Texto em página html
Linha Seguinte
Linha em branco no me
io
Tabela Ignorada
Texto após a tabela

Para percorrer o restante de uma página, deve-se pressionar [F3] para subir a página e [F4] para se descer a página.

<SCRIPT> e </SCRIPT>#

Utilizadas para definir um script. Há suporte somente para JavaScript e de uma maneira limitada (veja na seção Suporte a JavaScript.)

Formulários#

A seguir as tags são suportadas para envio de formulários.

<FORM METHOD="metodo" ACTION="acao" ONSUBMIT="script"> e </FORM>#

A tag que indica o início de um formulário possui os seguintes parâmetros aceitos pelo browser:

METHOD#

O parâmetro METHOD, indicando a forma de envio do formulário, aceita os seguintes valores:

  1. GET

  2. POST

  3. SITEF

  4. SITEF_FINALIZA

  5. SITEF_CARTAO

  6. SITEF_INFO

  7. IMG_CARREGA

  8. IMG_APAGA

Os métodos SITEF e SITEF_CARTAO servem para indicar uma chamada ao módulo POS-SiTef, descrito na seção Comunicação com o módulo POS-SiTef.

O método SITEF_FINALIZA finaliza uma transação efetuada (confirmar ou desfazer/não confirmar) nas modalidades Automação Imprime e Confirma e Browser Imprime Automação Confirma.

O método SITEF_CARTAO coleta dados do cartão sem realizar uma transação com o SiTef. Os dados, após coletados, são devolvidos para a página. É necessária inclusão de um arquivo específico no servidor SiTef, de extensão .cha.

O método SITEF_INFO coleta e devolve informações do terminal para a página.

O método IMG_CARREGA carrega uma imagem para impressão no comprovante. Ver mais informações em Método IMG_CARREGA

O método IMG_APAGA apaga uma imagem previamente carregada no POS. Ver mais informações em Método IMG_APAGA

ACTION#

O parâmetro ACTION irá indicar a página de destino do formulário. A página poderá ter o endereço relativo ou absoluto.

ONSUBMIT#

Define um script JavaScript que será executado quando o usuário acionar o comando de envio de formulário. Neste caso, o formulário é enviado somente se o script devolver um valor true. Este parâmetro é tipicamente usado para verificar os valores dos campos antes do envio do formulário. Consulte a seção Confirmação da impressão para obter mais detalhes.

<INPUT TYPE="tipoCampo" NAME="nomeCampo" VALUE="valorInicial" TITLE="titulo" MAXLENGTH="tamanhoMaximo" data-swex-keymap="mapaTeclado" ONFOCUS="script" ONBLUR="script">#

A tag INPUT indica uma coleta de dados, e serão aceitos pelo browser os seguintes parâmetros:

TYPE#

O parâmetro TYPE, que indica qual o tipo de campo será coletado, atualmente aceita os seguintes valores:

  1. TEXT: coleta dados num campo texto. Se o parâmetro TYPE não estiver presente na tag INPUT, será assumido automaticamente o tipo TEXT.

  2. HIDDEN

  3. PASSWORD: coleta dados com máscara. Observação importante: o uso dessa tag é restrito. Verificar seu uso na seção Processo de criação do arquivo de restrições.

  4. DATE: coleta um campo com máscara de data. Introduzido na versão B5.1.0r0.

  5. TIME: coleta um campo com máscara de hora. Introduzido na versão B5.1.0r0.

  6. SUBMIT: envia o formulário.

  7. RESET: limpa o formulário.

NAME#

Identifica o nome do campo a ser enviado para a página que irá receber os dados do formulário. Se esse parâmetro não estiver presente, o campo não será enviado.

TITLE#

Identifica o título exibido durante edição do campo, usado apenas em UI Browser (padrão) e UI POS.

VALUE#

Identifica o valor inicial de um campo. Se o tipo for SUBMIT ou RESET, será o valor do texto do botão.

MAXLENGTH#

Identifica o tamanho máximo de um campo. Se o tipo for DATE, TIME, SUBMIT ou RESET, o parâmetro é ignorado. Nota: não impede que o servidor de páginas forneça um VALUE com tamanho superior ao fornecido.

data-swex-keymap#

Introduzido na versão B5.1.0r0. Disponível apenas para os tipos TEXT e PASSWORD. Pode possuir os seguintes valores:

  • numeric: Permite apenas digitação de teclas numéricas. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • currency: Permite apenas digitação de teclas numéricas e possui exibição com formato de valor monetário. O tamanho máximo é 12, podendo ser diminuído via parâmetro MAXLENGTH. O dado trafegado será em centavos e sem separadores.

  • alpha: Permite apenas digitação de caracteres a-z e A-Z. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphaspace: Permite apenas digitação de caracteres a-z, A-Z e espaço. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphanumeric: Permite apenas digitação de caracteres a-z, A-Z e 0-9. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphanumericspace: Permite apenas digitação de caracteres a-z, A-Z, 0-9 e espaço. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphaupper: Permite apenas digitação de caracteres A-Z. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphaspaceupper: Permite apenas digitação de caracteres A-Z e espaço. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphanumericupper: Permite apenas digitação de caracteres A-Z e 0-9. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphanumericspaceupper: Permite apenas digitação de caracteres A-Z, 0-9 e espaço. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphalower: Permite apenas digitação de caracteres a-z. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphaspacelower: Permite apenas digitação de caracteres a-z e espaço. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphanumericlower: Permite apenas digitação de caracteres a-z e 0-9. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • alphanumericspacelower: Permite apenas digitação de caracteres a-z, 0-9 e espaço. Nota: não impede que o servidor de páginas forneça um VALUE com outros caracteres.

  • all: Valor padrão. Equivale à ausência do parâmetro.

  • allupper: Valor padrão, mas força caracteres maiúsculos.

  • alllower: Valor padrão, mas força caracteres minúsculos.

  • decimal (introduzido na versão B05.01.06r000): Permite apenas digitação de teclas numéricas e possui exibição com formato de valor volumétrico (por padrão, três casas decimais). Diferentemente do valor currency, este valor permite tamanho máximo arbitrário. Assim como currency, o dado trafegado quando o formulário for enviado será sem separadores.

data-swex-fracdigits#

Introduzido na versão B5.1.6r0. Disponível apenas para os tipos TEXT e PASSWORD com uso de data-swex-keymap='decimal'. Define a quantidade de dígitos da parte fracionária. Por exemplo, use "2" para coleta monetária em centavos ou "3" para coleta de litros.

data-swex-mask#

Introduzido na versão B5.1.0r0. Disponível apenas para os tipos TEXT e PASSWORD. Define uma máscara de preenchimento para o dado, onde seus caracteres numéricos serão substituídos pelo dado coletado e seus caracteres não numéricos serão exibidos junto à coleta. A máscara serve apenas para exibição no Browser - a máscara não é enviada junto com o dado quando o formulário for enviado ao servidor. O tamanho da máscara possui prioridade sobre os outros valores (size e maxlength). Veja os seguintes exemplos:

Exemplo para coleta de CPF:

<!DOCTYPE html>
<title>Formulario POS-SiTef</TITLE>
<form action="recebe-cpf.php" method="POST">
<p>Campo CPF:</p>
<input type="text" data-swex-keymap="numeric" data-swex-mask="999.999.999-99" name="campoCPF" value="22233344405">
<input type="submit" value="Enviar">
</form>

Exemplo para coleta de CNPJ:

<!DOCTYPE html>
<title>Formulario POS-SiTef</TITLE>
<form action="recebe-cnpj.php" method="POST">
<p>Campo CNPJ:</p>
<input type="text" data-swex-keymap="numeric" data-swex-mask="99.999.999/9999-99" name="campoCNPJ">
<input type="submit" value="Enviar">
</form>

ONFOCUS#

Introduzido na versão B5.1.0r0. Define um script JavaScript que será executado quando o usuário iniciar a tela de edição do dado. Qualquer resultado do script será ignorado (não é possível cancelar a ação de entrada da edição do dado).

ONBLUR#

Introduzido na versão B5.1.0r0. Define um script JavaScript que será executado quando o usuário sair da tela de edição do dado. Qualquer resultado do script será ignorado (não é possível cancelar a ação de saída da edição do dado).

<SELECT NAME="nomeCampo" TITLE="titulo" ONFOCUS="script" ONBLUR="script"> e </SELECT>#

Identifica um campo para seleção de algum valor. Nessa versão do browser, não é possível realizar seleção múltipla de valores. Serão aceitos os seguintes parâmetros:

NAME#

Identifica o nome do campo a ser enviado para a página que irá receber os dados do formulário. Se esse parâmetro não estiver presente, o campo não será enviado.

TITLE#

Identifica o título exibido durante edição do campo, usado apenas em UI Browser (padrão) e UI POS.

ONFOCUS#

Introduzido na versão B5.1.0r0. Define um script JavaScript que será executado quando o usuário iniciar a tela de edição do dado. Qualquer resultado do script será ignorado (não é possível cancelar a ação de entrada da edição do dado).

ONBLUR#

Introduzido na versão B5.1.0r0. Define um script JavaScript que será executado quando o usuário sair da tela de edição do dado. Qualquer resultado do script será ignorado (não é possível cancelar a ação de saída da edição do dado).

<OPTION VALUE="valorCampo" [SELECTED]> e </OPTION>#

Dentro de uma tag SELECT, a tag OPTION indica a opção que poderá ser selecionada. O texto entre o início e o fim de uma tag OPTION será mostrado como o texto da opção no browser. Serão aceitos os seguintes parâmetros:

VALUE#

Identifica o valor da opção.

SELECTED#

Identifica essa opção como sendo aquela que deverá ser escolhida inicialmente por padrão.

Para o envio de informações através de um formulário, pede-se atenção para as observações a seguir:

  1. Preferencialmente utilizar POST como método de envio de formulários.

  2. Nomear todos os campos de coleta.

  3. Não há uma opção, ao contrário dos browsers tradicionais, para reenvio do formulário caso o browser já esteja mostrando a página de recepção de dados.

  4. Cada campo de coleta será exibido em 1 linha do display.

  5. Na versão atual não é possível colocar texto ao lado de um campo de coleta.

<INPUT TYPE="DATE" NAME="nomeCampo" VALUE="valorInicial" TITLE="titulo" ONFOCUS="script" ONBLUR="script">#

NAME#

Identifica o nome do campo a ser enviado para a página que irá receber os dados do formulário. Se esse parâmetro não estiver presente, o campo não será enviado.

TITLE#

Identifica o título exibido durante edição do campo, usado apenas em UI Browser (padrão) e UI POS.

VALUE#

Identifica o valor inicial de um campo. O valor deve estar no formato AAAA-MM-DD e deve corresponder a uma data válida, conforme as seguintes regras:

  • AAAA corresponde ao ano: exatamente quatro caracteres numéricos.

  • Ano não pode ser 0000.

  • MM corresponde ao mês: exatamente dois caracteres numéricos.

  • Mês não pode ser 00 e não pode ser maior que 12.

  • DD corresponde ao dia: exatamente dois caracteres numéricos.

  • Dia não pode ser 00 e não pode ser maior que 31.

  • Caso o mês for 04, 06, 09 ou 11, o dia não pode ser maior que 30.

  • Caso o mês for 02:

    • Se o ano for divisível por 400 ou o ano for divisível por 4 mas não por 100, o dia não pode ser maior que 29.

    • Caso contrário, o dia não pode ser maior que 28.

Caso o valor for uma data inválida, o valor inicial do campo será vazio.

A exibição do dado é sempre no formato DD/MM/AAAA, enquanto o dado trafegado é sempre no formato AAAA-MM-DD.

ONFOCUS#

Define um script JavaScript que será executado quando o usuário iniciar a tela de edição do dado. Qualquer resultado do script será ignorado (não é possível cancelar a ação de entrada da edição do dado).

ONBLUR#

Define um script JavaScript que será executado quando o usuário sair da tela de edição do dado. Qualquer resultado do script será ignorado (não é possível cancelar a ação de saída da edição do dado).

<INPUT TYPE="TIME" NAME="nomeCampo" TITLE="titulo" STEP="granularidade" VALUE="valorInicial" ONFOCUS="script" ONBLUR="script">#

NAME#

Identifica o nome do campo a ser enviado para a página que irá receber os dados do formulário. Se esse parâmetro não estiver presente, o campo não será enviado.

TITLE#

Identifica o título exibido durante edição do campo, usado apenas em UI Browser (padrão) e UI POS.

STEP#

Identifica a granularidade, em segundos, do valor do campo. Utilize um dos seguintes valores:

  • any, 60 ou ausente: permite coleta de dados no formato HH:MM

  • 1: permite coleta de dados no formato HH:MM:SS

  • 0.001: permite coleta de dados no formato HH:MM:SS.FFF

VALUE#

Identifica o valor inicial de um campo. O valor deve estar no formato de acordo com o parâmetro STEP e deve corresponder a uma hora válida, conforme as seguintes regras:

  • HH corresponde à hora: exatamente dois caracteres numéricos.

    • Hora não pode ser maior que o valor 23.
  • MM corresponde ao minuto: exatamente dois caracteres numéricos.

    • Minuto não pode maior que 59.
  • SS corresponde ao segundo: exatamente dois caracteres numéricos.

    • Segundo não pode ser maior que 59. Não há representação para segundos bissextos (leap seconds).
  • FFF corresponde aos milissegundos: entre 1 e 3 caracteres numéricos.

Caso o valor for uma hora inválida, o valor inicial do campo será vazio. Caso o valor for uma hora válida, mas não cabe no formato definido pelo STEP, os campos extras são ignorados.

A exibição do dado é sempre no formato HH:MM, HH:MM:SS ou HH:MM:SS,FFF (este completado com zeros à direita), enquanto o dado trafegado é sempre no formato HH:MM, HH:MM:SS ou HH:MM:SS.FFF (este completado com zeros à direita). Ou seja, os milissegundos são separados por vírgula na exibição e ponto no tráfego de dados.

ONFOCUS#

Define um script JavaScript que será executado quando o usuário iniciar a tela de edição do dado. Qualquer resultado do script será ignorado (não é possível cancelar a ação de entrada da edição do dado).

ONBLUR#

Define um script JavaScript que será executado quando o usuário sair da tela de edição do dado. Qualquer resultado do script será ignorado (não é possível cancelar a ação de saída da edição do dado).

Exemplo de formulário de coleta#

Exemplo de formulário de coleta em UI Browser (padrão) ou UI inline

<!DOCTYPE html>
<title>Formulario POS-SiTef</title>
<p>Formulario</p>
<p>
<form action="recebe-form1.php" method="POST">
<p>Campo Texto:&nbsp;</p>
<input type="text" size="50" name="campoTexto" value="Texto Inicial">
<p>Campo Seleção:&nbsp;</p>
<select name="campoSelecao">
<option value="1">Opção 01</option>
<option value="2">Opção 02</option>
<option value="3" selected>Opção 03</option>
</select>
<p>Campo Escondido:&nbsp;</p>
<input type="hidden" name="campoHidden" value="Valor Qualquer">
<input type="submit" value="Enviar">
<input type="reset" value="Limpar">
</form>
<!DOCTYPE html>
<meta data-swex-ui="inline">
<title>Formulario POS-SiTef</title>
<p>Formulario</p>
<p>
<form action="recebe-form1.php" method="POST">
<p>Campo Texto:&nbsp;</p>
<input type="text" size="50" name="campoTexto" value="Texto Inicial">
<p>Campo Seleção:&nbsp;</p>
<select name="campoSelecao">
<option value="1">Opção 01</option>
<option value="2">Opção 02</option>
<option value="3" selected>Opção 03</option>
</select>
<p>Campo Escondido:&nbsp;</p>
<input type="hidden" name="campoHidden" value="Valor Qualquer">
<input type="submit" value="Enviar">
<input type="reset" value="Limpar">
</form>

Serão mostrados da seguinte forma no browser:

Formulario
Campo Texto:
[Texto Inicial ]
Campo Seleção:
[Opção 03 ]
Campo Escondido:
«Enviar »
«Limpar »

Para percorrer os diversos campos que um formulário pode conter, utilize os botões [BAIXO] ou [CIMA]. Nesse caso, uma seta indicará qual campo foi selecionado. Para percorrer o restante da página, continue utilizando os botões [BAIXO] ou [CIMA]:

Em modo UI Browser (padrão), para inserir algum dado em um campo presente em um formulário, após ter selecionado o campo, aperte a tecla [0-9] ou [ENTER]

CAMPO: campoTexto
Texto Inicial
>: OK
<: LIMPA | X:CANCELA
CAMPO: campoSelecao
Opção 01
Opção 02
>Opção 03
>:OK | X:CANCELA

Já para modo UI inline, para inserir algum dado em um campo <input>, após ter selecionado o campo, aperte a tecla [0-9], [ALPHA] ou [CLEAR]. Para alterar a seleção de um campo <select>, após ter selecionado o campo, aperte a tecla [ESQUERDA] ou [DIREITA]. A edição será feita na própria exibição.

Para envio do formulário, pressione a tecla [ENTER], após ter selecionado o botão de envio

Campo Seleção
[Opção 03 ]
Campo Escondido:
>«Enviar »
«Limpar »

Exemplo de formulário de coleta em UI POS

<!DOCTYPE html>
<meta data-swex-ui="pos">
<title>Formulario POS-SiTef</title>
<p>Formulario</p>
<p>
<form action="recebe-form1.php" method="POST">
<p>Campo Texto:&nbsp;</p>
<input type="text" size="50" name="campoTexto" value="Texto Inicial" title="Digite texto">
<p>Campo Seleção:&nbsp;</p>
<select name="campoSelecao" title="Selecione opção">
<option value="1">Opção 01</option>
<option value="2">Opção 02</option>
<option value="3" selected>Opção 03</option>
</select>
<p>Campo Escondido:&nbsp;</p>
<input type="hidden" name="campoHidden" value="Valor Qualquer">
<input type="submit" value="Enviar">
<input type="reset" value="Limpar">
</form>

Será mostrado da seguinte forma no browser:

Digite texto
Texto inicial
Selecione opção
Opção 01
Opção 02
>Opção 03

<A HREF="url"> e </A>#

Para inserir um link para uma outra página, utilize as tags A e /A. Qualquer texto colocado entre essas duas tags indicará o texto do link a ser mostrado no browser.

HREF#

Indica o endereço que a página deve ser direcionada. Pode ser relativo ou absoluto.

Para percorrer os diversos links, utilize os botões [BAIXO] ou [CIMA], o link escolhido ficará sublinhado. Após ter escolhido o link, aperte o botão [ENTER] para ativá-lo. Outra maneira de escolher o link a ser acessado é usando uma das teclas de atalho numéricas. No lado esquerdo de cada link é mostrado um número que corresponde à tecla de atalho. Caso a tecla de atalho seja pressionada, o link correspondente é acessado imediatamente, mesmo que outro link esteja selecionado. Note que esse recurso só é usado até o décimo link da página.

Exemplo:

<a href="texto1.php">Link para a pagina que contem o primeiro exemplo</a>
<br>
<a href="texto2.php">Segundo Exemplo</a>
1 Link para a pagina
que contem o primeiro
exemplo
2 Segundo Exemplo

Comando de impressão#

Esta funcionalidade permite a impressão de textos contidos numa página HTML. Todo o conteúdo entre as tags <PRE> e </PRE> é impresso no momento de abertura da página, considerando as seguintes observações.

  • Os espaços entre as palavras e as linhas em branco são preservados. Evite indentar o conteúdo, já que os espaços de indentação serão impressos. Evite também usar as tags <P> e <BR> para quebrar linhas, elas não são necessárias e geram um resultado indefinido.

  • As tags <B> e <EM> permitem alguma formatação da fonte. As letras entre <B> e </B> são impressas com o dobro da largura e as letras entre <EM> e </EM> são impressas com o dobro da altura. É possível combinar as duas opções para imprimir letras com o dobro da largura e o dobro da altura. A fonte normal é de 42 colunas (com tamanho fixo), sendo, portanto, de 21 colunas a fonte de largura dupla.

  • Para imprimir caracteres especiais, deve-se utilizar named entities. Por exemplo, no lugar do caractere <, deve-se utilizar a sequência &lt;. Os acentos também estão neste caso, então, por exemplo, o caractere á deve ser codificado como &aacute;.

  • A tag <CENTER> pode ser utilizada para centralizar as linhas do texto. Qualquer outra tag para este fim não terá o efeito esperado.

Comandos especiais#

Uma linha com o texto

\feed

é substituída por linhas em branco para avançar o papel até a linha de corte.

Uma linha com o texto

\barcode <n> <código>

é substituída pela imagem do código de barras no padrão I25 correspondente à sequência de dígitos código. O parâmetro n determina a espessura em pontos da barra fina. O número de dígitos do código deve ser par. A imagem do código é sempre centralizada horizontalmente. Qualquer texto que estiver na mesma linha de \barcode e depois de <código> será ignorado (não será impresso). Note que o código em dígitos não é impresso automaticamente com o código de barras, isso deve ser feito pelo desenvolvedor da página (veja o exemplo abaixo).

Uma linha com o texto

\barcode128 <n> <código>

é substituída pela imagem do código de barras em vertical no padrão Code128 correspondente à sequência de dígitos código. O parâmetro n determina a espessura em pontos da barra fina. A imagem do código é sempre centralizada horizontalmente. Qualquer texto que estiver na mesma linha de \barcode128 e depois de <código> será ignorado (não será impresso). Note que o código em dígitos não é impresso automaticamente com o código de barras, isso deve ser feito pelo desenvolvedor da página (veja o exemplo abaixo).

Uma linha com o texto

\barcode128h <n> <código>

é substituída pela imagem do código de barras preferencialmente em horizontal no padrão Code128 correspondente à sequência de dígitos código (caso a imagem não caiba na impressora, a impressão será feita automaticamente na vertical). O parâmetro n determina a espessura em pontos da barra fina. A imagem do código é sempre centralizada horizontalmente. Qualquer texto que estiver na mesma linha de \barcode128h e depois de <código> será ignorado (não será impresso). Note que o código em dígitos não é impresso automaticamente com o código de barras, isso deve ser feito pelo desenvolvedor da página (veja o exemplo abaixo).

Uma linha com o texto

\pause [espera] [mensagem]

faz com que a impressão seja interrompida até que o usuário pressione uma tecla ou até que se passe o tempo de espera. O parâmetro opcional espera determina o tempo em segundos dessa espera. Se esse valor for zero, a espera é infinita. O parâmetro mensagem também é opcional e, se informado, é exibido na tela do terminal durante a pausa. Caso contrário, uma mensagem padrão é mostrada.

Uma linha com o texto

\qrcodestart <n> <m> <texto>\qrcodeend

é substituída pela imagem do QR code correspondente ao texto <texto>. O parâmetro <n> é usado para escolher entre o QR code normal (<n>=0) ou o micro QR code (<n>=1). O parâmetro <m> é usado para definir o nível de correção, sendo <m>=0 para o nível baixo (L), <m>=1 para o nível médio (M), <m>=2 para o nível quartil (Q) e <m>=3 para o nível alto (H).

Qualquer texto que estiver depois de \qrcodeend na sua mesma linha será ignorado (não será impresso). Se \qrcodeend for omitido, o trecho codificado vai até o fim de tag </PRE>.


Em Verifone VxEOS, o comando está disponível a partir da versão B04.00.01rc00.

Em Ingenico Telium 2, o comando está disponível a partir da versão B05.04.01r000.

Em Gertec GEDI, o comando está disponível a partir da versão B05.01.04r000.

Em PAX Prolin, o comando está disponível a partir da versão B05.01.13r000.


Devido às limitações impostas pela impressora dos terminais e pelo tamanho do cupom de impressão, para garantir uma leitura consistente do QR code, o Browser trabalha com as versões 1 a 17 do QR code e com as versões M3 e M4 do micro QR code. Portanto, os tamanhos máximos dos dados codificados para cada nível de correção podem ser visualizados pelas seguintes tabelas:

TipoVersãoNível de CorreçãoNúmero máximo de caracteres bináriosCódigo
QR code17L644\qrcodestart 0 0
QR code17M504\qrcodestart 0 1
QR code17Q364\qrcodestart 0 2
QR code17H280\qrcodestart 0 3

Tabela 3

TipoVersãoNível de CorreçãoNúmero máximo de caracteres bináriosCódigo
Micro QR codeM4L15\qrcodestart 1 0
Micro QR codeM4M13\qrcodestart 1 1
Micro QR codeM4Q9\qrcodestart 1 1

Tabela 4

Legenda: L - Nível baixo; M - Nível médio; Q - Nível quartil; H - Nível alto

Uma linha com o texto

\img <nome imagem> <obrigatoria>

imprime uma imagem BMP monocromática previamente carregada no POS, onde

  • <nome imagem> é o nome da imagem que foi gravada no POS e
  • <obrigatoria>
    • 0 ou ausente continua com o restante da impressão do comprovante mesmo se a impressão da imagem falhar;
    • 1 interrompe a impressão como erro se a imagem não for impressa.

Confirmação da impressão#

Existe um mecanismo para confirmar se a impressão teve sucesso ou não. Os atributos URLOK e URLERR da tag <PRE> definem endereços que são acessados após o carregamento da página. O endereço URLOK, caso definido, é acessado se não for detectado nenhum erro de impressão. O endereço URLERR, caso definido, é acessado se algum erro de impressão for detectado. Os dois atributos são independentes entre si e opcionais. Caso não sejam definidos, nenhum redirecionamento ocorre. Se houver mais de uma tag <PRE> na mesma página com endereços de confirmação definidos, o Browser acessa apenas o endereço de sucesso da última tag. No caso de erro, porém, o Browser acessa a URL da tag onde ocorreu o erro.

Se por qualquer motivo o terminal for desligado durante a impressão, o Browser assume que a impressão falhou. Na próxima vez que o terminal for religado, o Browser tenta acessar a URL de erro correspondente. Se essa tentativa falhar, o Browser dá ao usuário as opções de tentar novamente ou desistir para sempre de acessar a URL de erro. Note que no caso de várias tags <PRE> na mesma página, existe uma chance do desligamento ocorrer no momento logo após a impressão de uma tag e imediatamente antes de processar a tag seguinte. Nesse caso, a URL acessada será a de OK da última tag impressa com sucesso.

O caso de queda da conexão é semelhante ao do desligamento.

Exemplo de página com o comando de impressão

<!DOCTYPE html>
<title>Teste de Impress&atilde;o</title>
<p> Este texto aparece na tela, mas o seguinte &eacute; impresso. </p>
<pre urlok="http://www.x.y.z/impressao.php"id=123&res=ok" urlerr="http://www.x.y.z/impressao.php"id=123&res=erro">
Texto normal
Texto normal indentado
Texto normal indentado
<b>Largura Dupla</b>
<em>Altura Dupla</em>
<b><em>Altura e Largura Duplas</em></b>
&lt;ABC&gt;
Tamanhos <em>mis</em><b>tur</b><em><b>ados</b></em>
<center><em>
C&oacute;digo de Barras
\barcode 4 1234567890
<b>1234567890</b>
</em></center>
Tr&ecirc;s linhas em branco:
\feed
\pause 3 Corte o cupom em 3s.
\pause Por favor, pressione uma tecla.
\pause
</pre>

Minimização da Página#

Recomenda-se o uso de minimizadores de HTML e de JavaScript (procure por html minify e javascript minify para encontrar ferramentas online) para reduzir o tamanho das páginas que são enviadas ao POS.

Na maioria dos casos, a redução é de cerca de 80% - isso quer dizer que, na mídia de comunicação GPRS (aprox. 286 bytes/s), uma página de 5000 bytes, carregada em aproximadamente 18 segundos, seria carregada em aproximadamente 4 segundos.

Tratamento de URLs#

URLs podem ser caracterizadas como absolutas ou relativas. As URLs são absolutas quando possuem o caractere : antes de /, ?, # e serão relativas caso contrário.

Por exemplo, todas as URLs que começam com http:/ são consideras absolutas. Já as URLs index.html, /dir/pagina.html, /pos, login.html?user=abc são relativas.

Até a versão B3.2.4r0, diversas inconsistências ocorriam com o uso de URLs relativos. As tags que permitem URLs relativos são as seguintes:

  • <A HREF="url">

  • <FORM ACTION="url">

  • <PRE URLOK="url1" URLERR="url2">

  • <META HTTP-EQUIV="REFRESH" CONTENT="tempo;URL=url">

Há problemas conhecidos de interpretação de URLs relativas entre as versões 02.07 e B3.2.3r0, conforme descrito na seção Características das Versões, causando indevidamente o erro 404 (página não encontrada).

Para evitar que erros ocorram na transição de versões desse período, recomenda-se que páginas não iniciem URLs com / (barra) ou ./ (ponto seguido de barra).

Arquivo de Restrições#

Para que haja segurança na utilização do browser, foi criado um arquivo de restrições para que as páginas lidas no dispositivo não possuam códigos de conteúdo duvidoso.

Processo de criação do arquivo de restrições#

O arquivo que é gerado pela Software Express será carregado em todas as versões do browser, após ele passar por um processo de criptografia 3DES com MD5.

Esse arquivo será responsável por:

  • Restrição das palavras contidas nas páginas lidas

    O arquivo de restrições conterá todas as palavras não permitidas para serem mostradas na tela do browser. Caso seja encontrada alguma palavra dessa lista em alguma página carregada, toda a string e/ou tag que utilizar essa palavra será automaticamente eliminada da página em questão. A string pode compreender a página inteira, caso essa página seja constituída de um único texto que contenha a palavra proibida.

  • Permissão de algumas palavras contendo strings restritas

    Pode haver situações em que a presença de uma palavra restrita no meio de uma palavra conhecida suprima a mesma. Para esses casos, foi criado uma lista de palavras permitidas, para que seja feita a dupla checagem.

  • Restrição da tag <input type="password">

    Nesse caso, o nome do campo deve estar contido na lista de nomes possíveis para essa tag. Caso o nome não esteja na lista descrita no arquivo de restrições, essa tag será ignorada.

  • Lista de palavras que não podem estar presentes em páginas carregadas no browser. Essa lista será alterada conforme seja necessário.

    • 'SENHA' 'S ENHA' 'SE NHA' 'SEN HA' 'SENH A' 'S E N H A'

    • 'CHAVE' 'C HAVE' 'CH AVE' 'CHA VE' 'CHAV E' 'C H A V E'

    • 'ACESSO' 'A CESSO' 'AC ESSO' 'ACE SSO' 'ACES SO' 'ACESS O' 'A C E S S O'

    • 'PASS' 'P ASS' 'PA SS' 'PAS S' 'P A S S' 'PASSWORD' 'P ASSWORD' 'PA SSWORD' 'PAS SWORD'

    • 'PASS WORD' 'PASSW ORD' 'PASSWO RD' 'PASSWOR D'

    • 'P A S S W O R D'

    • 'ACCESSO' 'A CCESSO' 'AC CESSO' 'ACCE SSO' 'ACCES SO' 'ACCESS O' 'A C C E S S O'

    • 'CLAVE' 'C LAVE' 'CL AVE' 'CLA VE' 'CLAV E' 'C L A V E'

    • 'SEÑA' 'S EÑA' 'SE ÑA' 'SEÑ A' 'S E Ñ A' 'SENA' 'S ENA' 'SE NA' 'SEN A' 'S E N A'

    • 'CONTRASEÑA' 'C ONTRASEÑA' 'CO NTRASEÑA' 'CON TRASEÑA' 'CONT RASEÑA' 'CONTR ASEÑA'

    • 'CONTRA SEÑA' 'CONTRAS EÑA' 'CONTRASE ÑA'

    • 'CONTRASEÑ A' 'C O N T R A S E Ñ A' 'CONTRASENA'

    • 'C ONTRASENA' 'CO NTRASENA' 'CON TRASENA' 'CONT RASENA' 'CONTR ASENA' 'CONTRA SENA'

    • 'CONTRAS ENA' 'CONTRASE NA' 'CONTRASEN A'

    • 'C O N T R A S E N A'

    • 'PIN' 'PI N' 'P IN' 'P I N'

  • Lista de palavras permitidas que contenham trechos de palavras restritas. Essa lista será alterada conforme seja necessário.

    • 'PINHEIRO' 'ALPINO' 'PINGA'
  • Lista de nomes permitidos para campos do tipo PASSWORD: 'LOGIN'

Comunicação com o módulo POS-SiTef#

A comunicação com o módulo POS-SiTef, para realizar transações ou coleta de dados do cartão, ocorre via formulário HTML.


Observações importantes ao desenvolvedor da AC:

  • Além dos parâmetros mencionados mais adiante, na seção Características dos campos de resposta ao servidor WEB, o Browser POS-SiTef pode devolver outros sem aviso prévio. Esteja preparado para receber parâmetros extras que podem ser ignorados.
  • Nem todos os parâmetros mencionados na seção Características dos campos de resposta ao servidor WEB, podem estar presentes em todas as transações. Alguns parâmetros podem não ser enviados dependendo da forma de pagamento ou se a transação não for concluída, por exemplo.
  • Para detalhes relacionados a transações com carteiras digitais, consulte o documento "Pagamentos PIX no POS-SITEF e BROWSER - Requisitos e Fluxo".

Características do formulário de envio de informações#

A seguir a lista de características:

  1. O parâmetro METHOD da tag FORM deve ser, obrigatoriamente, composto pelas palavras SITEF, SITEF_FINALIZA, SITEF_CARTAO ou SITEF_INFO (em maiúsculas ou em minúsculas).

  2. O método SITEF_CARTAO, o qual coleta dados de um cartão, só devolve dados caso houver o arquivo .cha no servidor SiTef.

  3. O método SITEF_FINALIZA permite a finalização (confirmação ou desfazimento/não confirmação) de uma transação realizada via modalidades Automação Imprime e Confirma ou Browser Imprime e Automação Confirma.

  4. O parâmetro ACTION da tag FORM irá conter o nome do arquivo para o qual será enviado informações sobre o pagamento realizado. Essa página de resposta deverá ser tratada pelo desenvolvedor do servidor da AC como se, para ela, estivesse sendo enviado um formulário com método POST.

Método SITEF: Campos que podem estar presentes para envio de informações para o módulo POS-SiTef#


Nome:"VALOR"
Tamanho:Até 12
Tipo:Numérico
Opcional:Sim
Descrição:Valor do pagamento a ser realizado. Caso o valor informado seja 0, o POS-Sitef irá efetuar a coleta do campo.
Tipo do Campo: numérico, sendo os dois últimos dígitos considerados como casas decimais. Nota: caracteres ponto e vírgula podem estar presentes, mas são automaticamente removidos.
Exemplos:
100 = será tratado como 1,00
1225 = será tratado como 12,25
100,00 = será tratado como 100,00
12.3,4 = será tratado como 12,34

Nome:"EMPRESA"
Tamanho:8
Tipo:Alfanumérico
Opcional:Sim
Descrição:Código da empresa do SiTef.
Não é recomendado o uso deste campo. Use-o apenas se estritamente necessário.
Este campo é ignorado caso o terminal foi liberado por Instalação POS.
Se não estiver presente, o Browser repassa ao módulo POS-SiTef o código de empresa configurado no terminal.
O campo será completado com zeros à esquerda para completar os 8 caracteres necessários.

Nome:"NUM_PARC"
Tamanho:Até 2
Tipo:Numérico
Opcional:Sim
Descrição:Número de Parcelas.
Somente válido caso o campo Transações Habilitadas TRANS_HAB indique uma transação do tipo parcelada.

Nome:"TIPO_TRN"
Tamanho:1
Tipo:Numérico
Opcional:Sim
Descrição:Tipo de Transação a ser realizada. Valores possíveis:
1: Transação Financeira
2: Transação Administrativa
3: Transação Direta
Se o valor não tiver sido definido, será adotado o valor 1, Transação Financeira.

Nome:"MOD_TRN"
Tamanho:Até 4
Tipo:Numérico
Opcional:Sim
Descrição:[A partir da versão B03.03.01.r000] Modalidade da transação a ser realizada.
Este parâmetro é a modalidade da CliSiTef. Os códigos das modalidades mais usados são os seguintes:
0: Pagamento genérico
113: Reimpressão de Comprovante Específico
114: Reimpressão do Último Comprovante
200: Cancelamento Normal
300: Recarga de Celular Pré-Pago
Observação: este parâmetro somente será utilizado se o TIPO_TRN for passado com valor 3.

Nome:"TRANS_HAB"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Transações Habilitadas.
Modalidades de pagamento que o módulo POS-SiTef disponibiliza em seu menu. Este parâmetro é definido como uma lista de códigos de modalidades de pagamento separados pelo caractere ;. Os códigos das modalidades são os seguintes:
16: Débito à vista
26: Crédito à vista
27: Crédito parcelado com financiamento do estabelecimento
28: Crédito parcelado com financiamento da administradora
Tipo do Campo: numérico com separador ponto e vírgula ;
Exemplos: TRANS_HAB="16;26". Nesse exemplo, o módulo POS-SiTef disponibilizará em seu menu apenas as opções de débito e crédito à vista.
Se apenas uma opção for definida (por exemplo, TRANS_HAB="16"), o menu não é exibido e a modalidade é selecionada automaticamente.
A ausência desse parâmetro ou a sua definição como um texto vazio faz o módulo mostrar as opções default definidas no arquivo de configuração do terminal.

Nome:"PAR_TRN_<TIPO CAMPO>_<N>"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Parâmetros de transação.
Esse campo é utilizado para a AC enviar dados via página, evitando assim algumas coletas e intervenção do operador na realização da transação.
É de total responsabilidade da AC enviar os campos devidamente montados e formatados, com risco de abortar a transação, ocorrer passagem incompleta do dado ou do parâmetro ser ignorado e abrir a coleta.
Por motivos de segurança, alguns parâmetros não serão acatados. Ex: PAN do cartão. Cada vez que o parâmetro é usado, ele é consumido. Isso possibilita a AC passar mais que um valor para coleta caso ela seja executada mais de uma vez durante a transação.
<TIPO CAMPO> é um valor numérico que corresponde a um parâmetro de transação. Cada parâmetro tem o seu formato e tamanho. Veja mais detalhes na tabela 5, logo abaixo. Uma tabela mais completa com a descrição dos TipoCampos também pode ser consultada na seção Tabela de valores para TipoCampo do documento SiTef - Interface Simplificada com a aplicação.
<N> enésima entrada do tipo campo corrente, indicando a ordem que será passado o dado para módulo de pagamento. Começa em 1 e não pode ter buracos na sequência.
Exemplo, para passar 2 tipos campos (999 e 909) um com 3 valores e outro com 2 valores:
PAR\_TRN\_999\_1=abc
PAR\_TRN\_999\_2=defg
PAR\_TRN\_999\_3=xyz
PAR\_TRN\_909\_1=1023
PAR\_TRN\_909\_2=0

Tipo CampoTam.TipoDescrição
146até 13NValor da transação a ser cancelada. Valor em centavos.
5154,8NData da transação a ser cancelada. Formato DDMMAAAA ou DDMM.
516até 20ANNúmero do documento a ser cancelado ou a ser reimpresso.

Tabela 5: TipoCampos para o campo PAR_TRN_<TIPO CAMPO>


Com a evolução natural do POS-SiTef Browser e da especificação das redes adquirentes, a lista de TipoCampos pode sofrer, sem aviso prévio, adições, remoções e alterações em seus formatos e tamanhos.


Nome:"COD_CLIENTE"
Tamanho:Até 20
Tipo:Alfanumérico
Opcional:Sim
Descrição:Código Cliente.
Campo para identificação da transação do cliente no relatório do SiTef. O valor informado neste campo é exibido no relatório do SiTefWEB.

Nome:"COMP_CUPOM_FISCAL"
Tamanho:Até 20
Tipo:Alfanumérico
Opcional:Sim
Descrição:Cupom Fiscal da transação.
Caso não informado, o valor é gerado pelo módulo POS-SiTef.
Em Automação Confirma, é altamente recomendado que este dado seja gerado pela Automação, para que a Automação possa, em retaguarda, resolver possíveis pendências.
A partir da versão B05.00.00r000, este campo é utilizado para finalizar uma transação.

Nome:"COMP_DATA_FISCAL"
Tamanho:8
Tipo:Alfanumérico
Opcional:Sim
Descrição:Data Fiscal da transação.
Caso não informado, o valor é gerado pelo módulo POS-SiTef.
Em Automação Confirma, é altamente recomendado que este dado seja gerado pela Automação, para que a Automação possa, em retaguarda, resolver possíveis pendências.
A partir da versão B05.00.00r000, este campo é utilizado para finalizar uma transação.

Nome:"COMP_HORA_FISCAL"
Tamanho:6
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hora Fiscal da transação.
Caso não informado, o valor é gerado pelo módulo POS-SiTef.
Em Automação Confirma, é altamente recomendado que este dado seja gerado pela Automação, para que a Automação possa, em retaguarda, resolver possíveis pendências.
A partir da versão B05.00.00r000, este campo é utilizado para finalizar uma transação.

Nome:"IMP_XX"
Tamanho:Até 38
Tipo:Alfanumérico
Opcional:Sim
Descrição:Linha a ser impressa no comprovante - servidor AC.
Linha a ser impressa ao final da via do cliente com informações do servidor AC. Exemplo: mensagem de agradecimento.
IMP_01="OBRIGADO PELA PREFERENCIA"
IMP_02="VOLTE SEMPRE"

Nome:"SAC_XX"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Campos para serem enviados junto com o resultado de pagamento para o servidor AC. Esses campos servem para que o servidor AC possa, por exemplo, identificar a transação original.

Nome:"SUB_NOME_FANTASIA"
Tamanho:Até 22
Tipo:Alfanumérico
Opcional:Sim
Descrição:Nome fantasia da subadquirência que será enviado para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"SUB_LOGRADOURO"
Tamanho:Até 40
Tipo:Alfanumérico
Opcional:Sim
Descrição:Logradouro da subadquirência que será enviado para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"SUB_CIDADE"
Tamanho:Até 13
Tipo:Alfanumérico
Opcional:Sim
Descrição:Cidade da subadquirência que será enviada para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"SUB_UF"
Tamanho:2
Tipo:Alfanumérico
Opcional:Sim
Descrição:Unidade federativa da subadquirência que será enviada para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"SUB_PAIS"
Tamanho:3
Tipo:Alfanumérico
Opcional:Sim
Descrição:País da subadquirência que será enviado para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"SUB_CEP"
Tamanho:8
Tipo:Numérico
Opcional:Sim
Descrição:CEP da subadquirência que será enviado para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"SUB_MCC"
Tamanho:4
Tipo:Numérico
Opcional:Sim
Descrição:Merchant Category Code da subadquirência que será enviado para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"SUB_CNPJ_CPF"
Tamanho:Até 14
Tipo:Numérico
Opcional:Sim
Descrição:CNPJ/CPF da subadquirência que será enviado para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"SUB_TEL"
Tamanho:Até 11
Tipo:Numérico
Opcional:Sim
Descrição:Telefone da subadquirência que será enviado para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"SUB_SOFT_DESC"
Tamanho:Até 22
Tipo:Alfanumérico
Opcional:Sim
Descrição:Software Descriptor da subadquirência que será enviado para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"SUB_EMAIL"
Tamanho:Até 99
Tipo:Alfanumérico
Opcional:Sim
Descrição:E-mail da subadquirência que será enviado para o autorizador.
O tratamento desse campo pode ser desabilitado via serviço de instalação.
Este campo altera o cabeçalho do cupom TEF.

Nome:"RESULTADOS"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Requisição de dados CliSiTef.
Campo com valores TipoCampo que serão resgatados do Cliente SiTef, separados por colchetes.
Exemplo: [133][136][160]
Consulte a seção Tabela de valores para TipoCampo do manual SiTef - Interface Simplificada com a aplicação para verificar os possíveis valores. Para valores relacionados a transações com carteiras digitais, consulte a seção Códigos de Campos do manual CliSiTef - Interface com a aplicação - Carteiras Digitais.

Nome:"RESULTADOS_SEPARADOR"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:[A partir da versão B05.05.00r000] Usado em conjunto com RESULTADOS.
Permite resgatar TipoCampos múltiplos em uma mesma transação (como é o caso em transações encadeadas).
Se estiver ausente, apenas o último TipoCampo reportado é resgatado.
O valor deste campo define o separador utilizado entre os TipoCampos reportados. Exemplo: ;

Nome:"DOC_INTEGRADOR"
Tamanho:14
Tipo:Numérico
Opcional:Sim
Descrição:[A partir da versão B06.02.00r000] Permite que a Automação Comercial informe um CNPJ de Integrador, informação que será passada no id 2 da configuração ParmsClient nos ParametrosAdiconais da rotina ConfiguraIntSiTefInterativoEx da CliSiTef. Consulte a seção Informações Adicionais da Automação/Estabelecimento do manual da CliSiTef SiTef - Interface Simplificada com a aplicação para mais detalhes.
O CNPJ deve ser informado apenas com números, isto é, sem ., - ou /. Se o dado informado não corresponder a um CNPJ válido, ele será ignorado.

Nome:"PAR_TRN_CODBAR_<TIPO CAMPO>_<N>"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:[A partir da versão B07.03.06r000 220613] Pré-definição de um código de barras que será solicitado durante a transação.

Este campo é utilizado para a AC enviar um código de barras via página, evitando assim a intervenção do operador do POS na realização da transação. O código de barras fornecido pela AC é repassado pelo browser para a clisitef quando ela emite um comando 35. Detalhes sobre os comandos emitidos pela CliSitef podem ser consultados no documento SiTef - Interface Simplificada com a aplicação. A seção Tabela de códigos de Comando deste documento contém uma tabela com a descrição dos comandos.

Ao passar o código de barras, a AC deve informar também se ele foi coletado manualmente ou pela leitora, o que é indicado prefixando a sequência numérica correspondente ao código com 0: ou 1: respectivamente.

É de total responsabilidade da AC enviar o valor do campo devidamente montado e formatado, sob o risco de abortar a transação, ocorrer a passagem incompleta do dado ou do parâmetro ser ignorado e, com isso, uma coleta ser exibida na tela do POS exigindo a intervenção do operador.

Cada vez que um código de barras é usado, ele é consumido. Isso possibilita que a AC pré-defina mais que um valor para a coleta caso ela seja feita mais que uma vez durante a transação.

<TIPO CAMPO> é um valor numérico que corresponde a um parâmetro da transação que esteja em formato de código de barras. Os tipos campos tratados pela aplicação no comando 35 atualmente são os seguintes: -1, 624 e 1116. Uma tabela com a descrição dos tipos campos pode ser consultada na seção Tabela de valores para TipoCampo do documento SiTef - Interface Simplificada com a aplicação.
<N> enésima entrada do tipo campo, indicando a ordem em que será passado o dado para módulo de pagamento. Começa em 1 e não pode ter buracos na sequência.

Exemplo: para passar 3 códigos de barras correspondentes ao tipo campo -1 em uma transação em que o comando 35 seja emitido 3 vezes, a página pode fornecer os seguintes campos

PAR_TRN_CODBAR_-1_1=0:23791111036000000010301000222206148622000000000
PAR_TRN_CODBAR_-1_2=1:00190500954014481606906809350314337370000000100
PAR_TRN_CODBAR_-1_3=1:03399493803800000000000422701011256740000042000

Neste caso, a página informou também que o primeiro código de barras foi coletado manualmente e os outros dois foram lidos pela AC usando uma leitora de código de barras.

Nome:"CD_HABILITADAS"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:[A partir da versão B07.03.07r000 220711] Carteiras digitais habilitadas.
Definição das opções a serem exibidas no menu de carteiras digitais do módulo POS-SiTef. Este parâmetro é definido como uma lista de códigos de menu de carteiras digitais separados pelo caractere ; ou pelo caractere ,. Uma tabela de códigos de menu de carteiras digitais e seus respectivos nomes pode ser consultada na seção Códigos de Menu do documento Carteiras Digitais - Biblioteca CliSiTef.
Exemplo: CD_HABILITADAS=00380009;00760023;00600012
Nesse exemplo, o módulo POS-SiTef disponibilizará, no menu de carteiras digitais, apenas as opções Itaú, AME Digital e PicPay.
Se apenas uma opção for definida, como por exemplo em CD_HABILITADAS=00600012, o menu não é exibido e a carteira digital é selecionada automaticamente.
A ausência desse parâmetro ou a sua definição como um texto vazio faz o módulo mostrar todas as opções de carteiras digitais disponíveis.

Nome:"CD_RESTRICOES"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:[A partir da versão B07.03.07r000 220711] Carteiras digitais restringidas.
Restrição das opções a serem exibidas no menu de carteiras digitais do módulo POS-SiTef. Este parâmetro é definido como uma lista de códigos de menu de carteiras digitais separados pelo caractere ; ou pelo caractere ,. Uma tabela de códigos de menu de carteiras digitais e seus respectivos nomes pode ser consultada na seção Códigos de Menu do documento Carteiras Digitais - Biblioteca CliSiTef.
Exemplo: CD_RESTRICOES=00380009;00760023;00600012
Nesse exemplo, o módulo POS-SiTef não irá exibir, no menu de carteiras digitais, as opções Itaú, AME Digital e PicPay.
A ausência desse parâmetro ou a sua definição como um texto vazio faz o módulo mostrar todas as opções de carteiras digitais disponíveis.

Nome:"CD_PRIORIZADAS"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:[A partir da versão B07.03.07r000 220711] Definição da posição das opções de carteiras digitais no menu.
Este parâmetro é definido como uma lista de códigos de menu de carteiras digitais separados pelo caractere ; ou pelo caractere ,. Uma tabela de códigos de menu de carteiras digitais e seus respectivos nomes pode ser consultada na seção Códigos de Menu do documento Carteiras Digitais - Biblioteca CliSiTef.
Exemplo: CD_PRIORIZADAS=00380009;00760023;00600012.
Nesse exemplo, o módulo POS-SiTef irá exibir, no menu de carteiras digitais e nesta ordem, as opções Itaú, AME Digital e PicPay. Caso existam mais carteiras digitais a serem exibidas no menu além dessas três, elas aparecerão após as opções deste menu fixo priorizado.

Nome:"RESTRICOES_PAGTO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:[A partir da versão B07.03.07r0000 220711] Transações restringidas.
Modalidades de pagamento que não devem ser exibidas no menu do módulo POS-SiTef. Este parâmetro é definido como uma lista de códigos de modalidades de pagamento separados pelo caractere ; ou pelo caractere ,. Os códigos das modalidades podem ser consultados na seção Tabela de códigos de meios de pagamento, configurações e menus do documento SiTef - Interface Simplificada com a aplicação.
Exemplo: RESTRICOES_PAGTO=16;26. Nesse exemplo, o módulo POS-SiTef não exibirá, em seu menu, as opções de débito e crédito à vista.

Método SITEF_FINALIZA: Campos que podem estar presentes para envio de informações para o módulo POS-SiTef#


Nome:"COMP_DADOS_CONF"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Não (apenas se a finalização for realizada via este campo)
Descrição:[Uso deprecado a partir da versão B05.05.00r000] Dados de Confirmação.
Este dado é retornado por uma transação efetuada nas modalidades Automação Confirma.
Apenas uma transação por vez pode ser finalizada. Em transações encadeadas, como Recarga de Celular Pré-Pago com TEF, a Automação precisará separar os dados de confirmação, que possuem ponto-e-vírgula ; entre eles.
Ao usar este dado para finalizar a transação, a resposta conterá os campos
COMP_DADOS_CONF e CODRESP.
A partir da versão B05.05.00r000, utilize os campos COMP_CUPOM_FISCAL, COMP_DATA_FISCAL e COMP_HORA_FISCAL. Em caso de uma transação encadeada, esses três dados são idênticos, realizando a finalização de todas as partes.

Nome:"COMP_CUPOM_FISCAL"
Tamanho:Até 20
Tipo:Alfanumérico
Opcional:Não (apenas se a finalização for realizada via Cupom, Data e Hora Fiscais)
Descrição:[A partir da versão B05.05.00r000] Cupom Fiscal da transação.
Todas as transações com o mesmo Cupom Fiscal e a mesma Data Fiscal no terminal serão finalizadas ao mesmo tempo.
Ao usar este dado para finalizar a transação, a resposta conterá os campos
COMP_CUPOM_FISCAL, COMP_DATA_FISCAL e COMP_HORA_FISCAL.

Nome:"COMP_DATA_FISCAL"
Tamanho:8
Tipo:Alfanumérico
Opcional:Não (apenas se a finalização for realizada via Cupom, Data e Hora Fiscais)
Descrição:[A partir da versão B05.05.00r000] Data Fiscal da transação.
Todas as transações com o mesmo Cupom Fiscal e a mesma Data Fiscal no terminal serão finalizadas ao mesmo tempo.
Ao usar este dado para finalizar a transação, a resposta conterá os campos
COMP_CUPOM_FISCAL, COMP_DATA_FISCAL e COMP_HORA_FISCAL.

Nome:"COMP_HORA_FISCAL"
Tamanho:6
Tipo:Alfanumérico
Opcional:Não (apenas se a finalização for realizada via Cupom, Data e Hora Fiscais)
Descrição:[A partir da versão B05.05.00r000] Hora Fiscal da transação.

Nome:"COMP_VALOR_CONF"
Tamanho:1
Tipo:Numérico
Opcional:Não
Descrição:Valor da Confirmação. Valor utilizado para finalizar a transação:
0: Desfaz (não confirma) a transação
1: Confirma a transação

Método SITEF_CARTAO: Campos que podem estar presentes para envio de informações para o módulo POS-SiTef#


Nome:"RESULTADOS"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Campo com valores TipoCampo que serão resgatados do Cliente SiTef, separados por colchetes.
Exemplo: [133][136][160]
Consulte a seção Tabela de valores para TipoCampo do manual SiTef - Interface Simplificada com a aplicação para verificar os possíveis valores. Para valores relacionados a transações com carteiras digitais, consulte a seção Códigos de Campos do manual CliSiTef - Interface com a aplicação - Carteiras Digitais.

Nome:"RESULTADOS_SEPARADOR"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:[A partir da versão B05.05.00r000] Usado em conjunto com RESULTADOS. Permite resgatar TipoCampos múltiplos de uma mesma transação (como é o caso em transações encadeadas).
Se estiver ausente, apenas o último TipoCampo reportado é resgatado.
O valor deste campo define o separador utilizado entre os TipoCampos reportados. Exemplo: ;.

Método SITEF_INFO: Campos que podem estar presentes para envio de informações para o módulo POS-SiTef#

No momento, não há campos de entrada para o método SITEF_INFO.

Exemplos#

Exemplo de uma página que permite realizar Recarga de Celular Pré-pago (modalidade 300):

<!DOCTYPE html>
<TITLE> Sitef </TITLE>
<form action="recebe-tef.php" method="SITEF">
<input type="hidden" name="TIPO_TRN" value="3">
<input type="hidden" name="MOD_TRN" value="300">
<select name="TRANS_HAB">
<option value="60;61;62;63;16;26">Todas formas pgto</option> <option value="60">Dinheiro</option>
<option value="61">Cheque</option>
<option value="62;16">Débito</option>
<option value="63;26;30">Crédito</option>
</select>
<br>
<input type="submit" value="Enviar">
<input type="reset" value="Limpar">
</form>

Exemplo de página para chamada do método SITEF_CARTAO:

<!DOCTYPE html>
<TITLE>Recebe Cartao</TITLE>
<form action="exemplo/recebe/cartao.php" method="SITEF_CARTAO">
<input type="submit" value="Coletar Dados do Cartão">
</form>

Exemplo de página para chamada do método SITEF_INFO:

<!DOCTYPE html>
<TITLE>Dados Terminal</TITLE>
<form name="formsitef" action="exemplo/recebe-dados-terminal.php" method="SITEF_INFO">
<input type="submit" value="Coleta Dados Terminal">
</form> <script> document.formsitef.submit();
</script>

Exemplo de página para chamada do método SITEF_FINALIZA, para finalizar manualmente uma transação na modalidade Automação Confirma:

<!DOCTYPE html>
<TITLE>Finaliza Transação (Automação Confirma apenas)</TITLE>
<form name="formsitef" action="exemplo/recebe-finaliza.php" method="SITEF_FINALIZA">
<input type="text" name="COMP_CUPOM_FISCAL">
<p>Data original para confirmar</p>
<input type="text" name="COMP_DATA_FISCAL">
<p>Hora original para confirmar</p>
<input type="text" name="COMP_HORA_FISCAL">
<p>1=Confirma, 0=Não Confirma</p>
<p>
<input type="text" name="COMP_VALOR_CONF" size="1" value="1" data-swex-keymap="numeric">
<input type="submit" value="Finalizar manualmente">
</form>

Para confirmar automaticamente uma transação, troque <input type="text"> por <input type="hidden"> e adicione envio automático de formulário:

<script>document.formsitef.submit();</script>


Em algumas versões do Browser, envio automático de um formulário não funciona quando não há a tag <input type="submit">. Por isso, é recomendada a sua inclusão.


Características dos campos de resposta ao servidor WEB#

Após a realização do pagamento (e se necessário, impressão do comprovante) através do módulo POS-SiTef, o browser enviará ao servidor AC, via servidor WEB (através da página indicada no formulário inicial), alguns campos referentes ao pagamento realizado.

Para fins de referência, a página que recebe os dados deverá tratá-los como se tivessem sido enviados por um formulário que estava usando método POST.

Método SITEF: Campos que podem estar presentes para resposta de informações do POS para o servidor WEB#


Nome:"EMPRESA"
Tamanho:8
Tipo:Alfanumérico
Opcional:Não
Descrição:Código da empresa utilizado no SiTef.

Nome:"TIPO_TRN"
Tamanho:1
Tipo:Numérico
Opcional:Sim
Descrição:Tipo de Transação. Mesmo valor enviado na requisição.

Nome:"MOD_TRN"
Tamanho:Até 4
Tipo:Numérico
Opcional:Sim
Descrição:Modalidade da Transação. Mesmo valor enviado na requisição.

Nome:"TERMINAL"
Tamanho:8
Tipo:Alfanumérico
Opcional:Não
Descrição:Identificação Terminal. Identificação do terminal utilizada no SiTef

Nome:"COD_CLIENTE"
Tamanho:Até 20
Tipo:Alfanumérico
Opcional:Sim
Descrição:Código Cliente. Mesmo valor enviado na requisição.

Nome:"CODRESP"
Tamanho:2
Tipo:Alfanumérico
Opcional:Sim
Descrição:Código de resposta da transação realizada com CliSiTef

Nome:"CODTRANS"
Tamanho:2
Tipo:Alfanumérico
Opcional:Não
Descrição:Código Transação.
Indica código da transação realizada. Possíveis valores:
"00": Consulta Cheque
"01": Cartão Débito
"02": Cartão Crédito
Nota: para transações que não se comunicam com autorizadores (ex: Reimpressão), este campo virá preenchido com "00".

Nome:"VALOR"
Tamanho:Até 12
Tipo:Numérico
Opcional:Não
Descrição:Valor Pago.
Campo com o valor pago na transação com o SiTef. Numérico, sendo os dois últimos dígitos decimais (centavos).

Nome:"REDE_AUT"
Tamanho:4 a 5
Tipo:Alfanumérico
Opcional:Sim
Descrição:Rede Autorizadora.
Campo contendo a rede autorizadora da transação TEF realizada. Valores para referência:
0001: Tecban
0004: Visanet
0005: Redecard
00006: Amex
00021: Banrisul
00031: Ticket combustível
00082: GetNet
00125: Visanet - Especificação 4.1

Nome:"BANDEIRA"
Tamanho:5
Tipo:Alfanumérico
Opcional:Sim
Descrição:Campo contendo a bandeira da transação TEF realizada.
A lista completa de códigos de bandeiras está disponível no documento Bandeira Padrao SiTef.pdf.
Abaixo alguns exemplos.
00000: Outro, não definido
00001: Visa (Crédito)
00002: Mastercard (Crédito)
00004: American Express (Crédito)
00011: JCB (Crédito)
10014: Discovery (Voucher)
20001: Maestro (Débito)
20002: Visa Electron (Débito)
20137: Telenet (Débito)

Nome:"NUM_PARC"
Tamanho:Até 2
Tipo:Numérico
Opcional:Sim
Descrição:Parcelas.
Campo contendo a quantidade de parcelas da transação. Caso ele esteja ausente, ou tiver valor "0" ou "1", considerar venda a vista.

Nome:"TIPO_PARC"
Tamanho:2
Tipo:Alfanumérico
Opcional:Sim
Descrição:Tipo do parcelamento.
Valores possíveis:
"00": À vista
"01": Pré-Datado
"02": Parcelado Estabelecimento
"03": Parcelado Administradora

Nome:"NSU_SITEF"
Tamanho:6
Tipo:Alfanumérico
Opcional:Sim
Descrição:NSU do SiTef.

Nome:"NSU_SITEF_RECARGA"
Tamanho:6
Tipo:Alfanumérico
Opcional:Sim
Descrição:NSU do Sitef correspondente a transação de pagamento da Recarga com Cartão

Nome:"NSU_HOST"
Tamanho:Até 15
Tipo:Alfanumérico
Opcional:Sim
Descrição:NSU do Host Autorizador.

Nome:"NSU_HOST_RECARGA"
Tamanho:Até 15
Tipo:Alfanumérico
Opcional:Sim
Descrição:NSU do Host Autorizador correspondente a transação de pagamento da Recarga com Cartão.

Nome:"NSU_HOST_DIGITADO"
Tamanho:Até 15
Tipo:Alfanumérico
Opcional:Sim
Descrição:NSU do Host digitado pelo operador durante a coleta de dados antes da transação.
Este dado é exatamente o que o operador digita. Comumente é utilizado apenas quando o código de resposta é 00.
Este campo pode ser utilizado em Cancelamentos e Reimpressões Específicas para atrelar esta transação à transação original.

Nome:"COD_AUTORIZACAO"
Tamanho:Até 99
Tipo:Alfanumérico
Opcional:Sim
Descrição:Código de autorização da transação de crédito (presente somente em transações com cartão de crédito).

Nome:"VLTROCO"
Tamanho:Até 12
Tipo:Numérico
Opcional:Sim
Descrição:Valor Troco / Saque.
Contém o valor aprovado para o troco em dinheiro. Utilizado em compra com Saque disponível para algumas redes.

Nome:"COMP_1VIA"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Primeira via do comprovante.
Texto contendo a primeira via do comprovante a ser impresso pelo servidor da AC.
A Automação Comercial deve considerar caracteres @ como quebra de linha.
Este dado é fornecido apenas quando a modalidade for Automação Imprime e a transação for aprovada.

Nome:"COMP_2VIA"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Segunda via do comprovante.
Texto contendo a segunda via do comprovante a ser impresso pelo servidor da AC.
A Automação Comercial deve considerar caracteres @ como quebra de linha.
Este dado é fornecido apenas quando a modalidade for Automação Imprime e a transação for aprovada.

Nome:"COMP_DADOS_CONF"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Dados de Confirmação.
Dados utilizados em Automação Confirma (modo deprecado) para finalizar uma transação por meio do método SITEF_FINALIZA.
A partir da versão B05.05.00r000, utilize o método SITEF_FINALIZA com os campos COMP_CUPOM_FISCAL, COMP_DATA_FISCAL e COMP_HORA_FISCAL.

Nome:"COMP_CUPOM_FISCAL"
Tamanho:Até 20
Tipo:Alfanumérico
Opcional:Sim
Descrição:Cupom Fiscal da transação.
Em Automação Confirma, a partir da versão B05.05.00r000, este dado é necessário para finalizar uma transação via método SITEF_FINALIZA.

Nome:"COMP_DATA_FISCAL"
Tamanho:8
Tipo:Alfanumérico
Opcional:Sim
Descrição:Data Fiscal da transação.
Em Automação Confirma, a partir da versão B05.05.00r000, este dado é necessário para finalizar uma transação via método SITEF_FINALIZA.

Nome:"COMP_HORA_FISCAL"
Tamanho:6
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hora Fiscal da transação.
Em Automação Confirma, a partir da versão B05.05.00r000, este dado é necessário para finalizar uma transação via método SITEF_FINALIZA.

Nome:"DATAHORA_SITEF"
Tamanho:14
Tipo:Numérico
Opcional:Sim
Descrição:Data e hora da transação perante o SiTef.
Data hora da transação perante o SiTef no formato AAAAMMDDHHMMSS

Nome:"SAC_XX"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Informações Adicionais.
Os mesmos campos (com os mesmos valores) que foram enviados para o browser através do formulário inicial serão reenviados para o servidor AC.

Nome:"RECCEL_OPERADORA"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Nome da operadora utilizado para Recarga de Celular Pré-pago, em caixa-alta. Exemplos: "CLARO", "OI", "TIM", "VIVO".

Nome:"RECCEL_DDD_TELEFONE"
Tamanho:Variável
Tipo:Numérico
Opcional:Sim
Descrição:DDD + Telefone utilizado para Recarga de Celular Pré-pago. Exemplo: "1199998888".

Nome:"PAN_CARTAO_MASCARADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:PAN do cartão mascarado, exibindo os 6 primeiros (BIN do cartão) e os 4 últimos do cartão.
Normalmente, 16 caracteres.
Requer instalação do arquivo de extensão .cha no servidor SiTef.
Exemplo: 123456******1234.

Nome:"VENCIMENTO_CARTAO"
Tamanho:4
Tipo:Numérico
Opcional:Sim
Descrição:Data de vencimento do cartão, no formato "AAMM".
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"NOME_PORTADOR"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Nome do portador do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA1_MASCARADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 1 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA2_MASCARADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 2 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA3_MASCARADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 3 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"PAN_CARTAO_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt do PAN do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"VENCIMENTO_CARTAO_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt do vencimento do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"NOME_PORTADOR_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt do nome do portador do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA1_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt da trilha 1 do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA2_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt da trilha 2 do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA3_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt da trilha 3 do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"PAN_CARTAO_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:PAN do cartão criptografado.
Normalmente, 16 caracteres.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"VENCIMENTO_CARTAO_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Data de vencimento do cartão criptografada.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"NOME_PORTADOR_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Nome do portador do cartão criptografado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA1_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 1 criptografada do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA2_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 2 criptografada do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA3_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 3 criptografada do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"PAN_CARTAO_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash Fixo do PAN do Cartão.
Normalmente, 16 caracteres.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"VENCIMENTO_CARTAO_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash Fixo da Data de Vencimento do Cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"NOME_PORTADOR_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash fixo do nome do portador do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA1_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash fixo da trilha 1 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA2_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash fixo da trilha 2 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA3_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash fixo da trilha 3 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"SUB_NOME_FANTASIA"
Tamanho:Até 22
Tipo:Alfanumérico
Opcional:Sim
Descrição:Nome fantasia da subadquirência que foi enviado para o autorizador.

Nome:"SUB_LOGRADOURO"
Tamanho:Até 40
Tipo:Alfanumérico
Opcional:Sim
Descrição:Logradouro da subadquirência que foi enviado para o autorizador.

Nome:"SUB_CIDADE"
Tamanho:Até 13
Tipo:Alfanumérico
Opcional:Sim
Descrição:Cidade da subadquirência que foi enviada para o autorizador.

Nome:"SUB_UF"
Tamanho:2
Tipo:Alfanumérico
Opcional:Sim
Descrição:Unidade federativa da subadquirência que foi enviada para o autorizador.

Nome:"SUB_PAIS"
Tamanho:3
Tipo:Alfanumérico
Opcional:Sim
Descrição:País da subadquirência que foi enviado para o autorizador.

Nome:"SUB_CEP"
Tamanho:8
Tipo:Numérico
Opcional:Sim
Descrição:CEP da subadquirência que foi enviado para o autorizador.

Nome:"SUB_MCC"
Tamanho:4
Tipo:Numérico
Opcional:Sim
Descrição:Merchant Category Code da subadquirência que foi enviado para o autorizador.

Nome:"SUB_CNPJ_CPF"
Tamanho:Até 14
Tipo:Numérico
Opcional:Sim
Descrição:CNPJ/CPF da subadquirência que foi enviado para o autorizador.

Nome:"SUB_TEL"
Tamanho:Até 11
Tipo:Numérico
Opcional:Sim
Descrição:Telefone da subadquirência que foi enviado para o autorizador.

Nome:"SUB_SOFT_DESC"
Tamanho:Até 22
Tipo:Alfanumérico
Opcional:Sim
Descrição:Software Descriptor da subadquirência que foi enviado para o autorizador.

Nome:"SUB_EMAIL"
Tamanho:Até 99
Tipo:Alfanumérico
Opcional:Sim
Descrição:E-mail da subadquirência que foi enviado para o autorizador.

Nome:"RESULTADOS"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Campo com valores TipoCampo resgatados do Cliente SiTef, separados por colchetes, em formato chave=valor.
O valor pode ser vazio, indicando que não houve valor correspondente.
Exemplo:
[133=][136=400970][160=123456]
Exemplo com RESULTADOS_SEPARADOR=; em transação encadeada:
[133=][136=400970;400970][160=123456;123457]
Nota: a ordem dos TipoCampos de entrada não é necessariamente preservada.

Nome:"REENVIO"
Tamanho:1
Tipo:Numérico
Opcional:Sim
Descrição:[A partir da versão B05.03.03r000] Indicativo de que esta mensagem foi disparada pelo mecanismo de reenvio de dados TEF.

Método SITEF_FINALIZA: Campos que podem estar presentes para resposta de informações do POS para o servidor WEB#

Nome:"COMP_DADOS_CONF"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Não (apenas se a finalização foi realizada via este campo)
Descrição:Dados de Confirmação. Este é o mesmo dado enviado na requisição.

Nome:"CODRESP"
Tamanho:2
Tipo:Alfanumérico
Opcional:Sim
Descrição:Código Resposta.
Retorno da finalização:
"00": Finalização enviada ao SiTef.
"00" ou ausente: Finalização não pode ser enviada ao SiTef.
Nota: O retorno apenas indica se o SiTef recebeu a requisição. Não há códigos de retorno para casos em que os parâmetros de entrada são inválidos perante o SiTef ou se a transação já havia sido finalizada – nesses casos, o retorno é "00" e a operação é ignorada.

Nome:"COMP_CUPOM_FISCAL"
Tamanho:Até 20
Tipo:Alfanumérico
Opcional:Não (apenas se a finalização foi realizada via Cupom, Data e Hora Fiscais)
Descrição:[A partir da versão B05.05.00r000] Cupom Fiscal da transação. Este é o mesmo dado enviado na requisição.

Nome:"COMP_DATA_FISCAL"
Tamanho:8
Tipo:Alfanumérico
Opcional:Não (apenas se a finalização foi realizada via Cupom, Data e Hora Fiscais)
Descrição:[A partir da versão B05.05.00r000] Data Fiscal da transação. Este é o mesmo dado enviado na requisição.

Nome:"COMP_HORA_FISCAL"
Tamanho:6
Tipo:Alfanumérico
Opcional:Não (apenas se a finalização foi realizada via Cupom, Data e Hora Fiscais)
Descrição:[A partir da versão B05.05.00r000] Hora Fiscal da transação. Este é o mesmo dado enviado na requisição.

Método SITEF_CARTAO: Campos que podem estar presentes para resposta de informações do POS para o servidor WEB#


Nome:"PAN_CARTAO_MASCARADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:PAN do cartão mascarado, exibindo os 6 primeiros (BIN do cartão) e os 4 últimos do cartão.
Normalmente o tamanho é de 16 caracteres.
Requer instalação do arquivo de extensão .cha no servidor SiTef.
Exemplo: 123456******1234.

Nome:"VENCIMENTO_CARTAO"
Tamanho:4
Tipo:Numérico
Opcional:Sim
Descrição:Data de vencimento do cartão, no formato "AAMM".
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"NOME_PORTADOR"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Nome do portador do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA1_MASCARADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 1 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA2_MASCARADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 2 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA3_MASCARADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 3 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"PAN_CARTAO_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt do PAN do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"VENCIMENTO_CARTAO_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt do vencimento do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA1_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt da trilha 1 do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA1_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt da trilha 1 do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA2_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt da trilha 2 do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA3_HASHDINAMICO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash com salt da trilha 3 do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"PAN_CARTAO_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:PAN do cartão criptografado.
Normalmente, o tamanho é de 16 caracteres.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"VENCIMENTO_CARTAO_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Data de vencimento do cartão criptografada.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"NOME_PORTADOR_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Nome do portador do cartão criptografado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA1_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 1 criptografada do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA2_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 2 criptografada do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA3_CRIPTOGRAFADO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Trilha 3 criptografada do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"PAN_CARTAO_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:PAN do cartão criptografado.
Normalmente o tamanho é de 16 caracteres.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"VENCIMENTO_CARTAO_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash do vencimento do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"NOME_PORTADOR_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash do nome do portador do cartão.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA1_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash da trilha 1 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA2_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash da trilha 2 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"TRILHA3_HASHFIXO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hash da trilha 3 do cartão utilizado.
Requer instalação do arquivo de extensão .cha no servidor SiTef.

Nome:"CODRESP"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Não
Descrição:Código de Resposta.
Principais códigos de resposta, de acordo com a lista abaixo:
0: Dados coletados
2: Cartão fornecido não está na lista de BIN permitidos do .cha
4: Chave de acesso do .cha está vencida
6: Chave de criptografia existente no .cha está inválida
Normalmente, o tamanho é de 1 à 4 dígitos. Para outros erros, consulte o manual da CliSiTef, seção Leitura do cartão - rotinas de captura segura.

Nome:"RESULTADOS"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Campo com valores TipoCampo resgatados do Cliente SiTef, separados por colchetes, em formato chave=valor.
O valor pode ser vazio, indicando que não houve valor correspondente.
Exemplo:
[133=][136=400970][160=123456].
Exemplo com RESULTADOS_SEPARADOR=; em transação encadeada:
[133=][136=400970;400970][160=123456;123457]
Nota: a ordem dos TipoCampos de entrada não é necessariamente preservada.


Este método não aceita informações adicionais (SAC_XX).


Método SITEF_INFO: Campos que deverão estar presentes para resposta de informações do POS para o servidor WEB#


Nome:"TERMINAL"
Tamanho:8
Tipo:Alfanumérico
Opcional:Sim
Descrição:Identificação do terminal utilizado no SiTef.

Nome:"EMPRESA"
Tamanho:8
Tipo:Alfanumérico
Opcional:Sim
Descrição:Código da empresa utilizada no SiTef.

Nome:"NUMERO_SERIE"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Número de série do terminal POS. Normalmente, até 31 caracteres

Nome:"VERSAO_APL"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Versão da aplicação do Browser
Ex: B05.01.00r000 160627

Nome:"MODALIDADE_APL"
Tamanho:1
Tipo:Alfanumérico
Opcional:Sim
Descrição:Modalidade da aplicação Browser
1:Automação Imprime e Confirma
2: Automação Imprime e POS Confirma
3: Browser Imprime e Confirma
4: Browser Imprime e Automação Confirma

Nome:"LIBERACAO"
Tamanho:1
Tipo:Alfanumérico
Opcional:Sim
Descrição:Forma de como a aplicação foi liberada.

Nome:"INST_ID_REDE"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Identificador de rede do servidor de instalação. Disponível apenas se a aplicação foi liberada via instalação.

Nome:"INST_ID_CHAVE_ATIVACAO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Chave de ativação / número lógico utilizado para liberar a aplicação via Instalação POS.

Nome:"COMP_NOME_FANTASIA"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Nome fantasia do estabelecimento. Em modalidades POS Imprime, é o campo impresso acima do cupom TEF.

Nome:"COMP_LOGRADOURO"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Logradouro do estabelecimento. Em modalidades POS Imprime, é o campo impresso acima do cupom TEF.

Nome:"COMP_CIDADE"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Cidade do estabelecimento. Em modalidades POS Imprime, é o campo impresso acima do cupom TEF.

Nome:"COMP_CNPJ"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Esse campo foi deprecado. CNPJ do estabelecimento.
Somente retorna se houver somente o CNPJ configurado. Veja COMP_CNPJ_CPF. CNPJ do estabelecimento sem separadores.

Nome:"COMP_CNPJ_CPF"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:CNPJ do estabelecimento ou CPF do lojista sem separadores. Em modalidades POS Imprime, é o campo impresso acima do cupom TEF.

Nome:"SUB_NOME_FANTASIA"
Tamanho:Até 22
Tipo:Alfanumérico
Opcional:Sim
Descrição:Nome fantasia da subadquirência.
Nome fantasia do cliente da subadquirente que está configurado no POS.

Nome:"SUB_LOGRADOURO"
Tamanho:Até 40
Tipo:Alfanumérico
Opcional:Sim
Descrição:Logradouro da subadquirência.
Logradouro do cliente da subadquirente que está configurado no POS.

Nome:"SUB_CIDADE"
Tamanho:Até 13
Tipo:Alfanumérico
Opcional:Sim
Descrição:Cidade da subadquirência.
Cidade do cliente da subadquirente que está configurado no POS.

Nome:"SUB_UF"
Tamanho:2
Tipo:Alfanumérico
Opcional:Sim
Descrição:Unidade federativa da subadquirência.
Unidade federativa do cliente da subadquirente que está configurado no POS.

Nome:"SUB_PAIS"
Tamanho:3
Tipo:Alfanumérico
Opcional:Sim
Descrição:País da subadquirência.
País do cliente da subadquirente que está configurado no POS.

Nome:"SUB_CEP"
Tamanho:8
Tipo:Numérico
Opcional:Sim
Descrição:CEP da subadquirência.
CEP do cliente da subadquirente que está configurado no POS.

Nome:"SUB_MCC"
Tamanho:4
Tipo:Numérico
Opcional:Sim
Descrição:Merchant Category Code da subadquirência.
MCC do cliente da subadquirente que está configurado no POS.

Nome:"SUB_CNPJ_CPF"
Tamanho:Até 14
Tipo:Numérico
Opcional:Sim
Descrição:CNPJ/CPF da subadquirência.
CNPJ ou CPF do cliente da subadquirente que está configurado no POS.

Nome:"SUB_TEL"
Tamanho:Até 11
Tipo:Numérico
Opcional:Sim
Descrição:Telefone da subadquirência.
Telefone do cliente da subadquirente que está configurado no POS.

Nome:"SUB_SOFT_DESC"
Tamanho:Até 22
Tipo:Alfanumérico
Opcional:Sim
Descrição:Software Descriptor da subadquirência.
Software descriptor do cliente da subadquirente que está configurado no POS.

Nome:"SUB_EMAIL"
Tamanho:Até 99
Tipo:Alfanumérico
Opcional:Sim
Descrição:E-mail da subadquirência.
E-mail do cliente da subadquirente que está configurado no POS.

Nome:"PEND_QTDETRANS"
Tamanho:Variável
Tipo:Numérico
Opcional:Sim
Descrição:Quantidade de transações pendentes de finalização no terminal.

Nome:"PEND_CUPOM_FISCAL_<N>"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Cupom fiscal da N-ésima transação pendente, onde N é um número entre 1 e a quantidade de transações pendentes.

Nome:"PEND_DATA_FISCAL_<N>"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Data fiscal da N-ésima transação pendente, onde N é um número entre 1 e a quantidade de transações pendentes.

Nome:"PEND_HORA_FISCAL_<N>"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Hora fiscal da N-ésima transação pendente, onde N é um número entre 1 e a quantidade de transações pendentes.

Nome:"PEND_MOD_TRN_<N>"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Modalidade CliSiTef da N-ésima transação pendente, onde N é um número entre 1 e a quantidade de transações pendentes.

Nome:"PEND_VALOR_TRN_<N>"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Sim
Descrição:Valor da N-ésima transação pendente, onde N é um número entre 1 e a quantidade de transações pendentes.

Exemplos#

Exemplo de página para resgatar os dados do cartão, utilizando o método SITEF_CARTAO:

<!DOCTYPE html>
<title>Recebe Dados...</title>
<p>Recebe Dados do Cartao...</p>
<p>
<?php
codresp = isset($_POST["CODRESP"]) ? $_POST["CODRESP"] : "Erro!";
$panCartao = isset($_POST["PAN_CARTAO_CRIPTOGRAFADO"]) ?
$_POST["PAN_CARTAO_CRIPTOGRAFADO"] : "Erro!";
$vencimentoCartao = isset($_POST["VENCIMENTO_CARTAO"]) ?
$_POST["VENCIMENTO_CARTAO"] : "Erro!";
echo "codresp: $codresp <br>";
echo "panCartao: $panCartao <br>";
echo "vencimentoCartao: $vencimentoCartao <br>";
echo ’<p>’;
echo ’<a href="Pagina_Teste.php ">Nome_Botão</a> <br>’;
?>

Exemplo de página para resgatar os dados do terminal, utilizando o método SITEF_INFO:

<!DOCTYPE html>
<title>Resposta SiTef</title>
<p>Recebe Dados do Terminal...</p> <p>
<?php
function getHttpPost($key) {
return isset($_POST[$key]) ? $_POST[$key] : "N/D";
}
$EmpresaSitef = getHttpPost("EMPRESA");
$terminalSitef = getHttpPost("TERMINAL");
$numeroSerieterminal = getHttpPost("NUMERO_SERIE_TERMINAL");
echo "EmpresaSitef: $EmpresaSitef <br>";
echo "terminalSitef: $terminalSitef <br>";
echo "numeroSerieterminal: $numeroSerieterminal <br>";
echo ’<p>’;
echo ’<a href="dados-terminal.php">Voltar</a> <br>’;
echo ’<a href="login.php">Inicio</a> <br>’;
?>

Exemplo de página para receber resposta da finalização de transação (Automação Confirma apenas), utilizando o método SITEF_FINALIZA:

<!DOCTYPE HTML>
<title>Resposta Finalização</title>
<p>Recebe Finalização...</p>
<p>
<?php
function getHttpPost($key)
{
return isset($_POST[$key]) ? $_POST[$key] : "N/D";
}
$codresp = getHttpPost("CODRESP");
$cupomEcho = getHttpPost("COMP_CUPOM_FISCAL");
$dataEcho = getHttpPost("COMP_DATA_FISCAL");
$horaEcho = getHttpPost("COMP_HORA_FISCAL");
echo "codresp: $codresp <br>";
echo ’<p>’;
echo "cupomEcho: $cupomEcho <br>";
echo "dataEcho: $dataEcho <br>";
echo "horaEcho: $horaEcho <br>";
echo ’<p>’;
?>

Gerenciamento de imagens para impressão#

O aplicativo browser pode imprimir imagens em comprovantes através de um comando na tag <PRE>.

Para isto, é necessário que a imagem seja carregada previamente no POS. A carga e remoção de imagens são feitas através de formulários.

Método IMG_CARREGA#

Este método carrega uma imagem no POS. A imagem deve estar no formato BMP monocromático. A largura máxima das impressoras de POS é de 384 pixels. Não se recomenda utilização de imagens com largura maior que 384 pixels.

Campos de envio do método IMG_CARREGA#


Nome:"URL_IMG"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Não
Descrição:[A partir da versão B05.07.02r000] Endereço da imagem a ser carregada no POS.

Nome:"NOME_IMG_POS"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Não
Descrição:[A partir da versão B05.07.02r000] Nome com que a imagem será gravada no POS.
Este nome deverá ser utilizado no comando \img da tag <PRE> para imprimir a imagem no comprovante.

Campos de reposta do método IMG_CARREGA#


Nome:"RESULT_ACAO_IMG"
Tamanho:Variável
Tipo:Numérico
Opcional:Não
Descrição:Resultado da carga da imagem.
0 - Carga OK.
101 - Imagem inválida
102 - Imagem não encontrada
103 - Campo obrigatório ausente.
104 - Nome do arquivo inválido. Não pode conter :

Nome:"URL_IMG"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Não
Descrição:Mesmo valor do envio

Nome:"NOME_IMG_POS"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Não
Descrição:Mesmo valor do envio

Exemplo de formulário utilizando o método IMG_CARREGA#

<!DOCTYPE html>
<TITLE>Carrega imagem</TITLE>
<form name="carregaimagem" action="recebe-carregaImagem.php" method="IMG_CARREGA">
<input type="hidden" name="URL_IMG" value="http://www.x.y.z/imagem.bmp">
<input type="hidden" name="NOME_IMG_POS" value="imagem.bmp">
</form>
<script>
document.carregaimagem.submit();
</script>

O parâmetro ACTION da tag FORM irá conter o nome do arquivo para o qual será enviado o resultado da carga de imagens. Essa página de resposta deverá ser tratada pelo desenvolvedor do servidor AC como se, para ela, estivesse sendo enviado um formulário com método GET.

Exemplo:

<!DOCTYPE html>
<title>Titulo Carrega Imagem</title>
<p>Carrega Imagem</p>
<?php
$RetImagem = isset($_GET["RESULT_ACAO_IMG"]) ? $_GET["RESULT_ACAO_IMG"] : "N/D";
$urlImagem = isset($_GET["URL_IMG"]) ? $_GET["URL_IMG"] : "N/D";
$NomeImagem = isset($_GET["NOME_IMG_POS"]) ? $_GET["NOME_IMG_POS"] : "N/D";
echo "<br>Resultado: $RetImagem <br>";
echo "URL Imagem: $urlImagem <br>";
echo "Nome Img POS: $NomeImagem <br>";
?>

Método IMG_APAGA#

Este método apaga uma imagem previamente carregada no POS.

Campos de envio do método IMG_APAGA#


Nome:"NOME_IMG_POS"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Não
Descrição:Nome com que a imagem foi gravada no POS.
Este nome é o nome que foi passado no método IMG_APAGA

Campos de reposta do método IMG_APAGA#


Nome:"RESULT_ACAO_IMG"
Tamanho:Variável
Tipo:Numérico
Opcional:Não
Descrição:Resultado da carga da imagem.
0 - Remoçao OK.
103 - Campo obrigatório ausente.

Nome:"NOME_IMG_POS"
Tamanho:Variável
Tipo:Alfanumérico
Opcional:Não
Descrição:Mesmo valor do envio

Exemplo de formulário utilizando o método IMG_APAGA#

<!DOCTYPE html>
<TITLE>Apaga imagem</TITLE>
<form name="apagaimagem" action="recebe-apagaImagem.php" method="IMG_APAGA">
<input type="hidden" name="NOME_IMG_POS" value="imagem.bmp">
</form>
<script>
document.apagaimagem.submit();
</script>

O parâmetro ACTION da tag FORM irá conter o nome do arquivo para o qual será enviado o resultado da carga de imagens. Essa página de resposta deverá ser tratada pelo desenvolvedor do servidor AC como se, para ela, estivesse sendo enviado um formulário com método GET.

Exemplo:

<!DOCTYPE html>
<title>Titulo Apaga Imagem</title>
<p>Apaga Imagem</p>
<?php
$RetImagem = isset($_GET["RESULT_ACAO_IMG"]) ? $_GET["RESULT_ACAO_IMG"] : "N/D";
$NomeImagem = isset($_GET["NOME_IMG_POS"]) ? $_GET["NOME_IMG_POS"] : "N/D";
echo "<br>Resultado: $RetImagem <br>";
echo "Nome Img POS: $NomeImagem <br>";
?>

Fluxos de impressão e confirmação da transação#

O aplicativo Browser pode trabalhar de diversas formas quanto à impressão da transação e à confirmação da transação. A seleção do modo é feita na liberação da aplicação onde se escolhe em qual modalidade o aplicativo irá operar:

ModalidadeDescrição
1: Automação Imprime e ConfirmaA Automação Comercial é responsável pela impressão do cupom e confirmação da transação.

Na solicitação da transação, a automação gera os campos COMP_CUPOM_FISCAL, COMP_DATA_FISCAL e COMP_HORA_FISCAL.

Na resposta do POS ao servidor WEB constarão:
•    Os campos com a imagem do comprovante a ser impresso: COMP_1VIA e COMP_2VIA
•    Campos necessários para a finalização da transação no SiTef: COMP_CUPOM_FISCAL, COMP_DATA_FISCAL, COMP_HORA_FISCAL.

A partir da versão B05.01.01r000, utilize o método SITEF_FINALIZA para confirmar ou desfazer a transação. Antes desta versão, a única forma de finalizar a transação era utilizando o SiTefWeb ou utilizando função disponibilizada na LibSiTef no servidor da automação comercial.
2: Automação Imprime e POS ConfirmaA Automação Comercial é responsável pela impressão do cupom da transação, e o POS pela confirmação da transação.

Nesta modalidade, o POS confirma a transação e posteriormente envia para automação os campos necessários para impressão. Caso a automação não consiga imprimir o comprovante, pode-se implementar uma opção de reimpressão da ultima transação.

Na resposta do POS ao servidor WEB, constarão os campos com a imagem do comprovante a ser impresso: COMP_1VIA e COMP_2VIA.

Esta modalidade não é recomendada, sendo desejável o uso da modalidade Automação Imprime e Confirma, que provê os controles necessários.
3: POS Imprime e ConfirmaO POS é responsável pela impressão do cupom e confirmação da transação.

Neste modo, o pagamento múltiplo (método SITEF_PAGMULT ou via TEF Direto) pode ser utilizado.
4: POS Imprime e Automação ConfirmaO POS é responsável pela impressão do cupom da transação e a Automação pela confirmação.

Na solicitação da transação, a automação gera os campos COMP_CUPOM_FISCAL, COMP_DATA_FISCAL e COMP_HORA_FISCAL.

Na resposta do POS ao servidor WEB constarão os campos necessários para a confirmação da transação no Sitef: COMP_CUPOM_FISCAL, COMP_DATA_FISCAL, COMP_HORA_FISCAL.

A partir da versão B05.01.01r000, utilize o método SITEF_FINALIZA para confirmar ou desfazer a transação. Antes desta versão, a única forma de finalizar a transação era utilizando o SiTefWeb ou utilizando função disponibilizada na LibSiTef no servidor da automação comercial.

Esta modalidade não é recomendada, sendo desejável o uso da modalidade Automação Imprime e Confirma, que provê os controles necessários.

Tabela 6: Modalidades do Browser e fluxo de impressão

Fluxo transacional da modalidade Automação Imprime e Confirma#

  1. (Opcional) Automação gera o Cupom, a Data e a Hora fiscal da transação. Estes dados serão usados para a finalização da transação.

  2. Browser efetua transação e o display do terminal exibe, por exemplo, "TRANSACAO OK". O relatório do SiTef exibe a transação no status "PENDENTE".

  3. Browser envia os dados da transação à Automação Comercial (com as vias do cupom).

  4. (Opcional) Automação realiza a impressão do cupom com a tag HTML <pre> com os atributos URLOK e URLERR.

  5. (Opcional) Automação realiza a confirmação da transação com o formulário <form method="SITEF_FINALIZA"> e JavaScript para envio automático do formulário.

Caso houver queda de energia no terminal após o passo 1 e antes do passo 3, ao religar o terminal, a transação continuará no mesmo estado "PENDENTE". A partir da versão B05.00.00r000 160331, o Browser forçará o reenvio do passo 3 até que suceda.

Caso houver queda de energia no terminal após o passo 3 e antes do passo 4, sugere-se que a Automação Comercial utilize cookies e/ou session para identificar que a última transação não foi impressa e então redirecionar o POS para a página responsável pela impressão ou para a página responsável pelo desfazimento da transação.

Caso houver queda de energia no terminal entre o passo 4 e o passo 5, o POS carregará a página definida no atributo URLERR. Sugere-se que essa página refaça a impressão requisitada ou desfaça a transação.

Caso houver queda de energia no terminal no passo 5, sugere-se que a Automação Comercial utilize cookies e/ou session para identificar que a última transação não foi finalizada e então redirecionar o POS para a página responsável pela confirmação ou desfazimento da transação.

Fluxo transacional da modalidade POS Imprime e Confirma#

  1. Browser efetua transação e o display do terminal exibe, por exemplo, "TRANSACAO OK". O relatório do SiTef exibe a transação no status "PENDENTE".

  2. Browser confirma a transação. O relatório do SiTef exibe a transação no status "EFETUADA".

  3. Browser imprime o cupom da transação.

  4. Browser envia os dados da transação à Automação Comercial (sem as vias do cupom).

Caso houver queda de energia no terminal após o passo 1 e antes do passo 2, ao religar o terminal e tentar realizar alguma operação com o módulo TEF interno, a transação será desfeita. O relatório exibe a transação no status "CANC PDV".

Caso houver queda de energia no terminal durante o passo 3, a partir da versão B05.00.00r000 160331, o Browser forçará o reenvio do passo 4 até que suceda.


  1. Transações negadas não necessitam de finalização (confirmação ou desfazimento).
  2. Antes da versão B05.00.00r000 160331, a Automação Comercial não conseguia inferir se a transação foi efetuada ou abortada a não ser realizando a reimpressão da última transação.
  3. O método de formulário SITEF_FINALIZA foi adicionado na versão B05.01.01r000 160624. Até então, era necessário finalizar a transação no SiTefWeb manualmente ou utilizando a biblioteca LibSiTef no servidor da Automação Comercial.

Impressão do cupom TEF nas modalidades Automação Imprime#

Quando a Automação é responsável pela impressão do cupom, os campos de retorno COMP_1VIA (via do estabelecimento) e COMP_2VIA (via do cliente) devem ser impressos via tag HTML <pre>.

Segue exemplo abaixo em PHP de um fluxo de impressão do cupom TEF, considerando o tratamento de erros de impressão, como falta de papel.

<!DOCTYPE html>
<title>recebe-tef.php</title>
<?php
$cupomFiscal = $_POST["COMP_CUPOM_FISCAL"];
//gravar dados da transação no banco de dados
if (isset($_POST["COMP_1VIA"])) {
echo "<pre urlerr=’reimprime.php?trn=$cupomFiscal&via=loja’>";
echo str_replace("@", "\n", $_POST["COMP_1VIA"]);
echo "\\feed\n\\pause 30 Destaque a via da loja</pre>";
}
if (isset($_POST["COMP_2VIA"])) {
echo "<pre urlerr=’reimprime.php?trn=$cupomFiscal&via=cliente’>";
echo str_replace("@", "\n", $_POST["COMP_2VIA"]);
echo "\\feed\n\\pause 30 Destaque a via do cliente</pre>";
}
?>

Mecanismo de reenvio dos dados TEF#

Caso o terminal for desligado após o início de uma transação, mas antes do HTTP POST com os dados da transação a serem enviados à Automação, o Browser, ao ligar, tentará enviar o HTTP POST à Automação com os dados daquela transação.

Se o desligamento ocorreu antes de todos os dados TEF serem processados, o HTTP POST terá, como retorno CODRESP, o valor 98, indicando que o status da transação pode ter ficado pendente no SiTef e uma ação de conciliação/retaguarda deve ser tomada pela Automação Comercial.


Dependendo da rede autorizadora da transação, transações pendentes podem ser automaticamente confirmadas após alguns dias, debitando o valor do cartão do cliente, enquanto a Automação pode não ter liberado o produto/serviço adquirido. Por isso, a ação de conciliação/retaguarda por parte da Automação é importantíssima.


Se houver problemas de comunicação, o HTTP POST será tentado por 3 vezes. Caso ainda assim o HTTP POST não puder ser enviado, as seguinte telas são exibidas no POS:

*** AVISO ***
REPASSE DE DADOS
PARA A PAGINA FALHOU
PRESSIONE UMA TECLA
FALHA REPASSE DADOS
>TENTAR NOVAMENTE
CANCELAR REPASSE
FUNCOES
>:OK | X:CANCELA

Selecionar a opção TENTAR NOVAMENTE, reiniciar o terminal ou teclar cancela fará com que o POS retente o HTTP POST.

Selecionar a opção CANCELAR REPASSE requisitará a senha do supervisor para que o HTTP POST seja descartado e o POS seja liberado para carregar a página inicial.

Selecionar a opção FUNCOES exibirá o menu de funções com as opções SUPORTE e DADOS TERMINAL.


A partir da versão B05.03.03r000, o HTTP POST contém o campo de retorno REENVIO.


Nota Fiscal Eletrônica: NFC-E e CF-E-SAT#

O SiTef e o Browser não se comunicam com a Secretaria da Fazenda, cabendo à automação realizar os procedimentos necessários.

Contudo, é possível instalar, no SiTef, o módulo "SAT-NFCE" e configurar, no SiTef, o CNPJ da fonte pagadora para cada produto existente no SiTef. Considera-se produto o nome que a bandeira oferece. Por exemplo, a bandeira Mastercard oferece os produtos "Mastercard" e "Maestro", a bandeira "Visa" oferece os produtos "Visa Crédito", "Visa Electron" e "Visa Vale".

Após realizar uma transação, a automação poderá receber os seguintes campos:

NomeTamanhoOpcionalDescrição
"CNPJ_CREDENCIADORA_NFCE"VariávelSimCNPJ da credenciadora em NFC-e do produto da bandeira utilizada e cadastrada no SiTef
"BANDEIRA_CARTAO_NFCE"VariávelSimBandeira do cartão em NFC-e do produto da bandeira utilizada e cadastrada no SiTef
"NUMERO_AUTORIZACAO_NFCE"VariávelSimNúmero da autorização em NFC-e do produto da bandeira utilizada e cadastrada no SiTef
"CODIGO_CREDENCIADORA_SAT"VariávelSimCódigo da credenciadora em CF-eSAT do produto da bandeira utilizada e cadastrada no SiTef

Tabela 7

Cabe à automação realizar a impressão do QRCode (via tag <pre>). A Secretaria da Fazenda exige, para NFC-e, o uso do QRCode normal em nível de correção médio (\qrcodestart 0 1) e, para CF-e-SAT, o uso de QRCode normal em nível de correção baixo (\qrcodestart 0 0).

Nas modalidades da forma "Automação Imprime", os cupons e os campos acima são enviados para a automação, que devem ser impressos junto com o QRCode via tag <pre>.

Nas modalidades da forma "POS Imprime", o cupom TEF é impresso e então a automação recebe os campos acima. Ou seja, a impressão do cupom TEF e a impressão do QRCode são feitos em momentos distintos, o que faz com que a automação se preocupe com quedas de energia de forma que, ao ligar, a página inicial da automação deverá refazer a impressão do QRCode.

Recomenda-se fortemente o uso do atributo URLERR da tag <pre> para que, caso haja queda de energia durante a impressão do QRCode, ao ligar, o POS chame uma página da automação que deve ser responsável pela reimpressão do QRCode.

Suporte a JavaScript#

O browser oferece um interpretador JavaScript baseado na implementação de referência SpiderMonkey 1.70 (equivale à especificação ECMAScript ECMA-262 Edition 3).

Como exigência da licença da implementação SpiderMonkey, as alterações feitas no código fonte original do interpretador JavaScript podem ser solicitadas à Software Express.

A integração entre o browser e o interpretador é limitada, sendo somente suficiente para a validação de formulários. Os objetos HTML DOM e o suporte para DHTML não são oferecidos. Isso significa que os objetos Window, Navigator, Screen, History e Location não podem ser usados e o objeto Document é limitado apenas para obtenção de valores dos elementos de formulários.

Até antes da versão B05.03.00r000, a única forma de acessar um formulário era via

document.<nome do formulário>.

A partir da versão B05.03.00r000, é possível também acessar formulários via

document.forms[<índice numérico do formulário>].

Até antes da versão B05.03.00r000, a única forma de acessar um elemento de um formulário era via

document.<nome do formulário>.<nome do elemento>.

A partir da versão B05.03.00r000, é possível também acessar os elementos de um formulário via

document.forms[<índice numérico do formulário>].elements[<índice numérico do elemento>].

Além da linguagem JavaScript pura (inclusive com os objetos String, Date, Array, Boolean, e Math), o desenvolvedor das páginas para o servidor AC tem disponíveis os seguintes recursos:

  • Execução de scripts através da tag <SCRIPT>.

  • Execução de script no momento de envio de formulário através do atributo ONSUBMIT da tag <FORM>.

  • Execução de script no momento de entrada e saída da edição de um elemento <INPUT> ou <SELECT> de formulário através dos atributos ONFOCUS e ONBLUR.

  • Acesso de leitura e escrita aos valores dos campos de formulários através da propriedade value (document.NAME.value).

  • Envio automático de um formulário através do método document.FORMNAME.submit().

  • Comando alert(mensagem) usado para mostrar mensagens de erro. Ao ser chamado, o comando exibe o texto contido em mensagem na tela do browser até que o usuário pressione uma tecla.

  • [A partir da versão B05.01.06r000] Comando beep(), que emite um som pré-definido.


Em algumas versões do Browser, envio automático de um formulário não funciona quando não há a tag <input type="submit">. Por isso, é recomendada sua inclusão.


Entre os recursos não disponíveis (não estão extensivamente descritos aqui), estão:

  • Uso dos atributos ONCLICK, ONCHANGE, ONKEYUP, ONKEYPRESS, ONKEYDOWN, ONLOAD, ONUNLOAD, ONBEFOREUNLOAD, ONSCROLL, ONABORT, ONERROR, entre outros.

  • Uso de comentários HTML (<!-- -->) dentro da tag <script>. Caso isso for tentado, haverá exibição de erro de JavaScript.

  • Acesso aos objetos history, location, window e navigator.

  • Acesso a qualquer método de document, como document.getElementById() ou document.createElement().

As alterações feitas pelos scripts no ambiente JavaScript são mantidas dentro de cada página carregada. Por exemplo, uma variável criada no escopo global pode ser acessada tanto em diferentes blocos <SCRIPT> como no atributo ONSUBMIT.

Exemplo de formulário com validação:

<!DOCTYPE html>
<title>Formulário JavaScript</title>
<script>
function validaForm(form) {
if (form.campoTexto.value.length > 0) {
return true;
} else {
alert("Campo Texto deve ter um valor!");
return false;
}
}
</script>
<p>Formulario com JavaScript</p> <p>
<form action="recebe.php" method="POST" onsubmit="return validaForm(this);">
<p>Campo Texto:&nbsp;</p>
<input type="text" size="10" name="campoTexto">
<input type="submit" value="Enviar">
<input type="reset" value="Limpar">
</form>

Exemplo de uso da função própria beep():

<!DOCTYPE html>
<title>beep</title>
<p>Mensagem</p>
<script>
if (typeof beep ==function) {
beep();
}
</script>

Suporte a Cookies#

Nas versões B05.07.xx, B05.08.xx e a partir da versão B05.09.04, o tratamento de Cookies é delegado à biblioteca cURL, e a expiração de Cookies passa a ser tratada. Anteriormente, o Browser possuía implementação própria limitada, que não seguia à risca a especificação RFC 2109 (HTTP State Management Mechanism).

Até a versão B03.03.04r000, os limites internos eram extremamente reduzidos:

  • Tamanho máximo do valor de cada cookie: 193 caracteres

  • Tamanho máximo do arquivo interno para cada host: 4096 caracteres

  • Tamanho máximo global: depende do limite do equipamento

A partir da versão B03.03.05r000, os limites internos foram aumentados para:

  • Tamanho máximo do valor de cada cookie: 4096 caracteres

  • Tamanho máximo do arquivo interno para cada host: 8192 caracteres

  • Tamanho máximo global: depende do limite do equipamento

Quando o limite é alcançado, é provável que o arquivo de gerência de cookies fique corrompido e perca dados. Recomenda-se utilizar a função de limpeza de todos os cookies (ver manual do usuário) caso houve uso de cookies com tamanho maior que o limite.

Recomenda-se evitar o uso de cookies com valores grandes em comunicação GPRS, pois todo aumento do tráfego de dados entre o Browser e Automação Comercial aumenta as chances de quedas de comunicação.

Identificação do Browser#

O Browser envia uma identificação através do header "User-Agent" de todas as mensagens HTTP que envia. O formato deste texto de identificação é o seguinte.

<nome da aplicação>/<versão>/<modelo do terminal>/<num. de série do terminal>/<outros componentes>

Por exemplo:

Browser_POS−SiTef/B05.09.06r000/VX680/300000986/libwww/5.3.1−pos libcurl/7.54.0 mbedTLS/2.1.4

Nota importante: algumas versões distribuídas possuíram o formato do User-Agent com conteúdo diferente do apresentado aqui. Recomenda-se uso do método de formulário SITEF_INFO para a obtenção dos dados aqui apresentados. Versões B05.07.xx, B05.08.xx, B05.09.04 e B05.09.05 possuíam campos com espaços ao invés de underlines. Ex: nome da aplicação como Browser POS-SiTef. Versões abaixo de B05.07.xx, B05.08.xx e B05.09.04 possuíam erradamente o número de série com o texto VVX na frente.


Visualização de Licenças#

Adicionamos no menu Suporte uma forma de visualizar as licenças das bibliotecas utilizadas.


libqrencode
https://fukuchi.org/works/qrencode/
http://www.gnu.org/licenses/lgpl.txt

LICENSING INFORMATION

Copyright (C) 2006-2012 Kentaro Fukuchi

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA



libcurl
https://curl.haxx.se/
https://curl.haxx.se/docs/thanks.html

COPYRIGHT AND PERMISSION NOTICE

Copyright (c) 1996 - 2017, Daniel Stenberg, <daniel@haxx.se>, and many contributors, see the THANKS file.

All rights reserved.

Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder.


Histórico de Alterações#

RevisãoAlteraçãoResponsável
01.00aVersão Inicial do Documento.Rodrigo K. Tomotani
01.01Inclusão do campo tipo password. Limitação das opções sem estar configurado.Rodrigo K. Tomotani
01.03Inclusão das funções de limpar histórico, limpar cookies e iluminação de tela no menu de funções.Rodrigo K. Tomotani
01.04Inclusão da função de impressão de páginas. Inclusão da função de desconexão. Inclusão do campo tipo card. Explicação sobre a conexão.Rodrigo K. Tomotani
01.05Inclusão da função de senha de supervisor.Rodrigo K. Tomotani
01.06Inclusão da parte de cache.Rodrigo K. Tomotani
01.13Bloqueio de palavras através de dicionário. Leitura de cartão permitida somente para ranges específicos. Acrescentadas informações extras da transação TEF realizada.Rodrigo K. Tomotani
01.13aModificações nos valores retornados de uma transação de TEF para que sejam compatíveis com a especificação da CliSiTef.Rodrigo K. Tomotani
01.20 (04/05/2007)Inclusão do tipo serial na tag input para leitura da porta serial (código de barras).
Inclusão do tipo repom-smart na tag input para leitura de cartão smart da Repom. Implementação inicial de JavaScript.
Leo Kazuhiro Ueda
01.20 (16/05/2007)Inclusão da opção de avançar no histórico de endereços visitados.Leo Kazuhiro Ueda
01.21 (24/07/2007)Inclusão de lista de palavras permitidas. Inclusão da tag de impressão.Leo Kazuhiro Ueda
01.22 (27/08/2007)Reformulação do envio de comprovante TEF através do browserRodrigo K. Tomotani
01.29 (28/03/2008)Envio do modelo e do número de série do terminal junto com o header "User-Agent"das mensagens HTTP.
Impressão de código de barras dentro do comando de impressão (tag <PRE>). Centralização dos textos no comando de impressão (tag <CENTER> dentro da <PRE>).Impressão de código de barras dentro do comando de impressão (tag <PRE>). Centralização dos textos no comando de impressão (tag <CENTER> dentro da <PRE>).
Leo Kazuhiro Ueda
01.29 (10/04/2008)Esclarecimentos sobre a tag <PRE>.Leo Kazuhiro Ueda
01.29 (15/04/2008)Comando \pause na tag <PRE>.Leo Kazuhiro Ueda
01.29 (25/04/2008)Atualização do comando \pause da tag <PRE>. Mais esclarecimentos sobre a tag <PRE>.Leo Kazuhiro Ueda
01.30 (03/10/2008)Mecanismo de confirmação de impressão na tag <PRE>.Leo Kazuhiro Ueda
01.31 (10/10/2008)Descrição das teclas de atalho para links.Leo Kazuhiro Ueda
01.31 (22/10/2008)Mais esclarecimentos sobre a confirmação de impressão da tag <PRE>.Leo Kazuhiro Ueda
01.34 (12/01/2009)Descrição da opção TRANS_HAB do form SITEF.Leo Kazuhiro Ueda
01.36 (07/07/2009)Descrição da tag <ALARM>.Leo Kazuhiro Ueda
01.38 (06/07/2010)Mais informações sobre o Javascript. Descrição da opção EMPRESA do form SITEF.Leo Kazuhiro Ueda
01.39 (05/07/2010)Retirada a opção IMPRIMIRCOMP do form SITEF.Ana Paula Adinolfi
01.40 (29/04/2011)Inclusão dos campos NUM_PARC e COD_CLIENTE no recebimento do form SITEF.
Inclusão dos campos NSU_SITEF, NSU_SITEF_RECARGA, NSU_HOST, NSU_HOST_RECARGA, VLRTROCO retorno ao form SITEF.
Ana Paula Adinolfi
01.40 (29/04/2011)Inclusão dos campos NUM_PARC e COD_CLIENTE no recebimento do form SITEF.
Inclusão dos campos NSU_SITEF, NSU_SITEF_RECARGA, NSU_HOST, NSU_HOST_RECARGA, VLRTROCO retorno ao form SITEF.
Ana Paula Adinolfi
01.41 (26/07/2011)Adicionados novos retornos para o campo Rede Autorizadora - REDE_AUT.
Adicionados novos retornos para o campo Bandeira - BANDEIRA
Incluído o campo TIPO_TRATAMENTO, para identificação de tratamentos especiais. (Plataforma Promocional)
Retirados os campos FORMATCODBAR e CODBAR. A impressão de código de barras deve ser chamada pelas funções de impressão.
Tag <PRE>
Ana Paula Adinolfi
01.42 (15/12/2011)Adicionado observação a respeito dos campos POST enviados e recebidos pelo browser.Rodrigo Kuaye Tomotani
01.43 (10/12/2012)Adicionados novos retornos para o campo Código de Autorização - COD_AUTORIZACAO
Atualização da Arquitetura da Solução e Funcionamento Geral do Browser.
Atualização do item "Características das Versões"
Histórico de alterações movido para o final deste documento.
Ana Paula Adinolfi
02.07 (17/10/2013)Adicionado histórico de alterações de versão entre 02.00 e 02.07.
Alterado campo EMPRESA para opcional.
Novo formato da página em branco.
Correção: o Browser aceita o campo VLTROCO, e não VLRTROCO.
Adição do método SITEF_MULTPAG, que permite pagamentos múltiplos na modalidade POS Imprime e Confirma.
Marcelo Massahiro Meikaru
02.08 (12/12/2013)Corrigido histórico de alterações de versão 02.07. Adicionado histórico de alterações da versão 02.08. Adicionada seção sobre tratamento de URLs relativas.Marcelo Massahiro Meikaru
B03.02.01r000 (22/09/2014)Adicionado histórico de alterações da versão 02.10 e B3.2.1r0
Adicionada seção sobre minimização da página
Marcelo Massahiro Meikaru
B03.02.04r000 (06/01/2015)Adicionado histórico de alterações até a versão B3.2.4r0 Adicionados trechos reforçando a limitação da aplicação com relação aos elementos suportados.
Adicionado trecho reforçando que o tratamento de URLs não está correto para todas as condições entre as versões 02.07 e B3.2.3r0
Adicionado trecho notificando que https não está disponível
Marcelo Massahiro Meikaru
B03.02.05r000 (09/03/2015)Adicionada informação sobre o valor do campo de resposta CODTRANS em transações como Reimpressão.
Adicionado campo de resposta opcional NSU_HOST_DIGITADO
Marcelo Massahiro Meikaru
B03.03.01rc01 (13/07/2015)Adicionado campo MOD_TRN para executar qualquer modalidade da CliSiTef. Necessita do campo TIPO_TRN com valor 3. Adicionado exemplo de como realizar Recarga de Celular Pré-Pago Adicionados campos RECCEL_OPERADORA e RECCEL_DDD_TELEFONEMarcelo Massahiro Meikaru
B03.03.02r000 (03/08/2015)Adicionados campos PAN_CARTAO_CRIPTOGRAFADO e VENCIMENTO_CARTAO Adição do método SITEF_CARTAO, que permite coletar dados de um cartão (requer .cha) sem realizar TEF.Marcelo Massahiro Meikaru
B03.03.03r000 (31/08/2015)Adicionados todos os outros campos do .cha Alterado método SITEF_CARTAO para que seja possível renegociar um .cha quando a abertura de terminal expira.
Alterados métodos SITEF e SITEF_PAGMULT para devolverem o mesmo dado de entrada COD_CLIENTE
Marcelo Massahiro Meikaru
B03.03.04r000 (19/10/2015)Adicionado método SITEF_INFO para resgatar dados do módulo de TEF, como empresa e terminal SiTef. Alterado método SITEF para que seja possível utilizar modalidades de CliSiTef diretamente, via campos TIPO_TRN=3 e MOD_TRN.Carlos E. J. Silva

Marcelo Massahiro Meikaru
B03.03.05r000 (20/10/2015)Alterado método SITEF para devolver à Automação Comercial o mesmo campo MOD_TRN utilizado na requisição. Aumento dos limites internos de CookiesMarcelo Massahiro Meikaru
B05.01.00r000 24/05/2016Revisão dos tamanhos e dos tipos dos campos do módulo TEF

Possibilidade de impirmir um QR code (somente Verifone Verix eVo)

Visualização de licenças Remoção do tópico Bookmark

Removidos <input type="serial"> e <input type="repom-smart">
Deprecado <input type="card"> em favor de <form method="SITEF_CARTAO">
Adicionados <input type="date"> e <input type="time">
Adicionado atributo data-swex-keymap para <input type="text">
Adicionados atributos onfocus e onblur para <input> e <select>
Adicionado JSDOM: document.forms
Adicionado JSDOM: document.forms[idx].elements
Removida exibição por padrão da URL da página sendo carregada.
Marcelo Massahiro Meikaru

Lucas Machado Rafael Timóteo

Ricardo Honda
B05.01.01r000 24/06/2016Reduzidos exemplos HTML
Adicionada nota sobre finalização via POS em Automação Confirma
Adicionado <form method="SITEF_FINALIZA">
Adicionado retorno DATAHORA_SITEF para <form method="SITEF"> e <formmethod="SITEF_PAGMULT">
Adicionados retornos VERSAO_APL, MODALIDADE_APL, LIBERACAO, INST_ID_REDE, INST_ID_CHAVE_ATIVACAO, COMP_NOME_FANTASIA, COMP_LOGRADOURO, COMP_CIDADE, COMP_CNPJ para <form method="SITEF_INFO">
Correção da documentação do fluxo de confirmação em Browser Imprime e Confirma. Adição de explicações dos fluxos das modalidades.
Marcelo Massahiro Meikaru
B05.01.01r000 04/07/2016Correção da documentação do fluxo de confirmação em Browser Imprime e Confirma. Adição de explicações dos fluxos das modalidades.Marcelo Massahiro Meikaru
B05.01.03r000 03/08/2016Suporte ao dados de subadquirência informados pela automação Correção de alguns casos o Browser ignorar o valor da transação passado pela automação.Rafael Oliveira Freitas Timóteo
B05.01.06r000 05/09/2016Adicionado histórico de alterações da versão B5.1.4r0 e B5.1.5r0 (versões com correções) Adicionado atributos data-swex-mask e data-swex-fracdigits
Adição da função JavaScript beep()
Correção da não execução do fluxo dos campos IMP_XX
Correção da documentação do campo IMP_XX ? os campos sempre foram invertidos
Correção de crash ao exibir <title> mas este não foi fornecido pela página.
Correção de sujeiras de tela durante transições de tela.
B05.01.06r000 Rev A 26/12/2016Conversão do documento para Latex.
Acertos de textos que haviam na versão em Word
Rafael Oliveira Freitas Timóteo
B05.01.13r000 Rev A 10/01/2017Adicionado histórico de alterações até a versão B5.1.13r0Marcelo Massahiro Meikaru
B05.01.15rc00
170203 Rev A
Adicionado o campo PAR_TRN_<TIPO CAMPO>
Reformatação das tabelas para remover a coluna "Nome" que não fazia sentido.
Remoção dos hifens quando a palavra é trecho de código das tabelas, facilitando a leitura e a cópia dos mesmos.
As colunas campos são agora flexíveis e não quebrarão as palavras de código.
Acerto de referências dentro das tabelas.
Rafael Oliveira Freitas Timóteo
B05.01.15rc00 170203 Rev BReformatado as tabelas de campos para tabelas para campo.Rafael Oliveira Freitas Timóteo
B05.01.15rc01 Rev A 14/02/2017Adicionado histórico de alterações até a versão B5.1.15rc1Marcelo Massahiro Meikaru
B05.02.02rc01 170412 Rev A 17/04/2017Alteração do PAR_TRN_<TIPO CAMPO> para PAR_TRN_<TIPO CAMPO>_<N> e alteração na documentação deste campo para facilitar o seu entendimentoAna Paula Adinolfi
Rafael Oliveira Freitas Timóteo
B05.03.00r000 170509 Rev A 09/05/2017Adicionado histórico de alterações até a versão B5.3.0r0Marcelo Massahiro Meikaru
B05.03.00r000 170509 Rev B 13/06/2017Adicionada informação sobre necessidade de conciliação/retaguarda em alguns casos de desligamento na transação.
Adicionada seção Mecanismo de reenvio dos dados TEF.
Adicionada seção Impressão do cupom TEF nas modalidades Automação Imprime.
Marcelo Massahiro Meikaru
B05.03.03r000 170622 Rev A 22/06/2017Adicionado campo de retorno REENVIO quando a mensagem for disparada pelo mecanismo de reenvio dos dados TEF.
Corrigidos níveis recomendados para a impressão de QRCode em NFC-e (nível M) e CF-e-SAT (nível L).
Alteradas tabelas dos códigos para impressão de QRCode para facilitar entendimento.
Marcelo Massahiro Meikaru
B05.03.03r000 170622 Rev B 11/08/2017Correções de exemplos de uso de SITEF_CARTAO e SITEF_INFO. Adição de recomendação para inclusão de <input type="submit"> em formulários que usam envio automático via JavaScript.
Correção da versão mínima para uso de JavaScript document.forms e FORM.elements.
Adição da versão mínima para uso de JavaScript beep().
Adição de não existência dos objetos JavaScript history, location, window e navigator.
Adição de não existência de métodos do objeto JavaScript document.
Marcelo Massahiro Meikaru
B05.04.01r000 170815 Rev A 15/08/2017Ingenico Telium 2: Adicionado suporte à impressão de QRCode.Marcelo Massahiro Meikaru
B05.04.01r000 170815 Rev B 21/08/2017Correção do exemplo de validação com JavaScriptMarcelo Massahiro Meikaru
B05.04.01r000 170815 Rev C 22/08/2017Retirada de referências ao método SITEF_PAGMULT (o controle das transações deveria ser feito pela Automação para permitir finalização de todo um lote).
Retirada de referências ao input type="card" (deprecado, substituído pelo método SITEF_INFO).
Limpeza geral do documento.
Marcelo Massahiro Meikaru
B05.05.00r000 171016 Rev A 16/10/2017Adicionados atributos data-swex-ui, data-swex-cancel-url e dataswex-cancel-action para tag META.
Adicionado atributo TITLE para tags INPUT e SELECT.
Adicionado campo de entrada RESULTADOS_SEPARADOR nos métodos SITEF, SITEF_CARTAO e SITEF_PAGMULT.
Alterado formato do campo de retorno COMP_DADOS_CONF.
Adicionadas pendências do terminal no método SITEF_INFO.
Alterada forma de uso do método SITEF_FINALIZA.
Adicionado campo COMP_USAR_DADOS_CONF no método SITEF.
Marcelo Massahiro Meikaru
B05.06.05r000 180131 Rev A 09/02/2018Adicionados exemplos para método SITEF_FINALIZA
Adicionada recomendação de não uso do campo EMPRESA
Marcelo Massahiro Meikaru
B05.06.11r000 180502 Rev A 02/05/2018Adicionado histórico de versões de B05.06.11r000 180502 e B05.06.09r000 180417Marcelo Massahiro Meikaru
B05.07.02r000 180507 Rev A 07/05/2018Inclusão dos métodos IMG_CARREGA e IMG_APAGA para impressão de imagens
Correção do exemplo do método SITEF_FINALIZA.
Marcelo Simão
B05.09.06r000 1808xx Rev A 15/08/2018Correção da documentação: o atributo URLERR da tag pre estava escrito como URLERRO. Esta versão passa a tratar ambos os casos para não impactar clientes Adicionadas explicações de alterações do User-Agent Adicionada explicação de que o tratamento de Cookies foi delegado à libcURL nas versões B05.07.xx, B05.08.xx e acima de B05.09.04Marcelo Massahiro Meikaru
B05.09.06r000 1808xx Rev B 31/07/2019Alteração dos exemplos do campo Bandeira de acordo com o pedido da trac 44734.Rafael Oliveira Freitas Timoteo
B06.02.00r000 201106 Rev A 09/11/2020Inclusão da descrição do novo campo DOC_INTEGRADOR do método SITEF.Rafael Pereira Luna
B07.03.00r000 210706 Rev A 03/09/2021Novo leiaute do documento com logotipo Fiserv. Documentação da alteração para que torna possível passar, no campo COD_AUTORIZACAO do método SITEF, o NSU estendido retornado do FEPAS de tamanho até 99 caracteres. Inclusão de referências a documentos com informações sobre carteiras digitais.Rafael Pereira Luna
B07.03.07r000 220711 Rev A 18/07/2022Documentação dos novos campos do método SITEF: PAR_TRN_CODBAR_<TIPOCAMPO>_<N>, CD_HABILITADAS, CD_RESTRICOES, CD_PRIORIZADAS e RESTRICOES_PAGTO.Rafael Pereira Luna