Sei sulla pagina 1di 30

Especificação Técnica de Requisitos

Data de Criação: 15 de Julho de 2015


Última Atualização: 10 de Novembro de 2015.
Versão: ER MFE-CFe 1.1.0
CONTROLE DE VERSÕES

Versão Data Legislação Notas Técnicas incorporadas

1.0.0 20/07/2015

1.0.1 27/07/2015

1.0.2 15/09/2015

1.1.0 10/11/2015

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) I


DEFINIÇÕES E SIGLAS

Termo Descrição

Aplicativo Comercial – aplicativo para emissão de Cupons Fiscais de Venda


AC
e de Cancelamento

CFe Cupom Fiscal Eletrônico de Venda ou de Cancelamento

Configurador Software de configuração e ativação do MFE

Módulo Fiscal Eletrônico


MFE É um equipamento SAT dotado de recursos de hardware e software
adicionais

Equipamento do Contribuinte onde está conectado o MFE e que realiza a


PDV
emissão de CFes

Projeto da SEFAZ-CE para implantação do Projeto SAT-CFe acrescido de


Projeto MFE
funcionalidades específicas para o Estado do Ceará.

Conjunto de especificações técnicas definidas pelos documentos de


Especificação de Requisitos (ER) e Manual de Orientação (MO) do Projeto
Projeto SAT-CFe
SAT CF-e definidas a partir das disposições do Ajuste Sinief nº 11 de 24 de
setembro de 2010.

SAT Sistema de Transmissão e Autenticação de documentos fiscais eletrônicos

SEFAZ-CE Secretaria da Fazendo do Estado do Ceará

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) II


ÍNDICE

1. INTRODUÇÃO ............................................................................................................................................. 1
2. REQUISITOS DE HARDWARE DO MFE................................................................................................... 1
2.1. Bateria operacional..................................................................................................................................... 2
2.2. Módulo de Comunicação............................................................................................................................ 2
2.3. Localização................................................................................................................................................. 2
2.4. Sensor de queda/impacto............................................................................................................................ 2
2.5. Unidade de processamento ......................................................................................................................... 3
3. COMPONENTES DE SOFTWARE DO MFE .............................................................................................. 3
3.1. Aplicativo comercial .................................................................................................................................. 3
3.2. Software de Ativação e Configuração ........................................................................................................ 4
3.3. DRIVER MFE............................................................................................................................................ 4
3.3.1. Biblioteca MFE...................................................................................................................................... 4
3.3.2. Comunicador MFE................................................................................................................................. 5
3.3.3. Monitor MFE ......................................................................................................................................... 5
3.4. Driver de Comunicação USB-Serial .......................................................................................................... 6
4. SOFTWARES EMBARCADOS MFE........................................................................................................... 6
4.1. Software Básico.......................................................................................................................................... 6
4.1.1. Comunicação com o PDV...................................................................................................................... 6
4.1.2. Comunicação com o Componente de Segurança ................................................................................... 6
4.1.3. Chaveamento do Canal de Comunicação internet.................................................................................. 7
4.2. Componente de Segurança ......................................................................................................................... 7
4.2.1. Função ConsultaStatusMFE – informações sobre o MFE ..................................................................... 7
5. ANEXO I – Funções adicionais biblioteca MFE.......................................................................................... 11
5.1. Função ConfigurarInterfaceDeRedeMFE................................................................................................. 11
5.2. Função ConsultarStatusOperacionalMFE ................................................................................................ 17
5.3. Função ReiniciarMFE .............................................................................................................................. 23
5.4. Função EnviarStatusAC ........................................................................................................................... 24
6. ANEXO 2 – Controle de modificações do documento................................................................................. 26

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) III


1. INTRODUÇÃO
Este documento tem por objetivo a definição das especificações e critérios técnicos necessários para
orientar a fabricação do MFE (Módulo Fiscal Eletrônico) que será o equipamento emissor de Cupom
Fiscal Eletrônico (CFe) no Estado do Ceará.

A SEFAZ-CE adota todas as Especificações Técnicas do SAT-CFe mas, visando o seu


aperfeiçoamento, adotou componentes de hardware e software adicionais para torna-lo mais eficiente
e padronizado.

Além disso, a SEFAZ-CE proverá alguns componentes de software facilitando assim o seu
desenvolvimento e reduzindo custos para os Contribuintes e Fabricantes de MFE.

O escopo deste documento refere-se a:


• Requisitos de Hardware do MFE;
• Componentes de software do MFE;
• Especificações adicionais do Software Básico;
• Interfaces de comunicação entre os componentes;
• Componentes fornecidos pela SEFAZ-CE;

A SEFAZ-CE fornecerá todo o apoio técnico necessário aos fabricantes de MFE na integração do
Componente de Segurança com o Software Básico e às Software Houses quanto às dúvidas na
emissão de Cupons Fiscais eletrônicos, através dos seguintes meios:

• Sítio da Secretaria da Fazenda


o http://www.sefaz.ce.gov.br
• Email
o Contribuintes: mfe@sefaz.ce.gov.br
o Fabricantes de MFE e Software Houses: suporte.mfe@sefaz.ce.gov.br
• Telefone
o Call Center 0800-707-8585

2. REQUISITOS DE HARDWARE DO MFE


O equipamento MFE deverá possuir todo o hardware e proteções contra violação definidos no Projeto
SAT-CFe e, adicionalmente, terá os recursos listados abaixo.

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 1


2.1. Bateria operacional
O MFE deverá possuir uma bateria recarregável que permita a sua operação por, no mínimo, 2h sem
alimentação externa.
Esta bateria deverá ser capaz de suportar temperaturas de 0ºC a +60ºC e não possuir chumbo em
sua composição.

2.2. Módulo de Comunicação


Além da comunicação via rede local do estabelecimento, através das interfaces Ethernet ou WIFI, o
MFE deverá fazer uso da rede celular com as seguintes características:
a) Comunicação no padrão 2G (GPRS) e/ou superior nas bandas de comunicação operadas no
Brasil;
b) O MFE poderá suportar até 02 (dois) SIMCARD instalados simultaneamente;
c) Deverá ser possível a instalação dos SIMCARDs através de abertura no gabinete onde, neste
caso, não poderão estar junto com os componentes internos do MFE para não comprometer o
funcionamento dos mecanismos de blindagem;
d) A antena poderá ser externa ou interna ao gabinete;
e) A interface de modem celular é a única que poderá se conectar diretamente à Internet, podendo
receber endereçamento IP válido.

2.3. Localização
O MFE deverá ter capacidade de informar a sua localização geográfica.
Por isso deverá possuir um receptor GPS com as seguintes características:
a) Sensibilidade mínima de -160 dbm;
b) Suportar pelo menos 32 canais;
c) A antena poderá ser externa ou interna ao gabinete;

O MFE deverá ser capaz de fornecer sua localização mesmo na ausência de sinal GPS através de
localização assistida, ou outro meio, e sem a necessidade de contratação de qualquer serviço
adicional ao de comunicação de dados.

2.4. Sensor de queda/impacto


O MFE poderá ser dotado de um acelerômetro com sensibilidade suficiente para detectar impactos
equivalentes a uma queda de uma altura igual ou superior a 60 cm.

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 2


2.5. Unidade de processamento
A unidade de processamento que executará o Software Básico deverá:
• Ter arquitetura de 32 ou 64 bits;
• Executar os sistemas operacionais Windows ou Linux.

3. COMPONENTES DE SOFTWARE DO MFE


Os componentes de software que integram a comunicação entre o equipamento do Contribuinte
(PDV) e o MFE são descritos a seguir:

Figura 1 – Componentes de software do MFE

Todos os softwares disponibilizados pela SEFAZ-CE poderão ser obtidos no sítio eletrônico:
cfe.sefaz.ce.gov.br

3.1. Aplicativo comercial


Aplicativo para emissão de Cupons Fiscais de venda e de cancelamento.
O Contribuinte deverá utilizar um Aplicativo Comercial que seja compatível com o MFE, módulo
emissor de CFe-SAT.

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 3


3.2. Software de Ativação e Configuração
Aplicativo usado para realizar a configuração, ativação e executar as funções do equipamento SAT
conforme descritas na Especificação de Requisitos do SAT-CFe.
O Fabricante do MFE deverá disponibilizar uma versão junto com o MFE.
As diferenças em relação à Especificação de Requisitos do SAT-CFe são:
• Possibilidade de configurar múltiplas interfaces de comunicação ao mesmo tempo, incluindo a de
modem celular, através da função ConfigurarInterfaceDeRedeMFE;
• Consultar as informações relativas ao hardware adicional, e outras não cobertas na Especificação
de Requisitos do SAT-CFe, através da função ConsultarStatusOperacionalMFE.

Estas funções adicionais são descritas no capítulo 5 - ANEXO I – Funções adicionais biblioteca MFE.

3.3. DRIVER MFE


Para facilitar a instalação e atualização dos componentes de software disponibilizados pela SEFAZ-CE, eles
foram empacotados em uma única instalação chamada DRIVER MFE.

O DRIVER MFE deverá ser instalado no equipamento ao qual o MFE está conectado (PDV) e será
disponibilizado para as plataformas Windows e Linux.

Maiores informações sobre os componentes podem ser obtidas no Manual do Driver MFE, disponível no sítio da
SEFAZ-CE.

Os componentes abaixo descritos fazem parte do DRIVER MFE.

3.3.1. Biblioteca MFE


A Biblioteca MFE é uma biblioteca de funções (DLL no Windows) que disponibiliza para as aplicações
(Aplicativo Comercial, Software de Ativação) todas as funções previstas na Especificação de Requisitos do
SAT-CFe (chamadas Funções SAT), padronizando assim todas as interfaces entre as aplicações e o
MFE.

Além das funções descritas na Especificação de Requisitos do SAT-CFe ela disponibiliza funções adicionais
(chamadas Funções MFE) para a gestão do MFE que são descritas no capítulo 5 - ANEXO I – Funções
adicionais biblioteca MFE.

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 4


O protótipo de todas as funções disponíveis na Biblioteca MFE estão no Manual do Driver MFE.

Para se comunicar com o MFE a Biblioteca MFE utiliza o serviço Comunicador MFE, por esta razão este serviço
nunca deverá ser interrompido.

3.3.2. Comunicador MFE


O Comunicador MFE é uma aplicação executada como um serviço (MFE-COM), que atende pela porta
9012/TCP, e é responsável por realizar a comunicação com o MFE pela porta serial.

Sem este serviço a comunicação com o MFE não é possível.

Ele desempenha as seguintes funções:


• Identifica automaticamente quando um MFE é conectado ou desconectado do PDV e coleta informações a
seu respeito
• Ao receber as funções chamadas via Biblioteca MFE realiza a comunicação com o Componente de
Segurança embarcado no MFE
• Atualiza as informações exibidas pelo Monitor MFE

Uso de compactação na comunicação USB


O volume de dados a ser transmitido via USB pode ser grande e isto impacta diretamente no tempo de
transmissão e na possibilidade de erros na comunicação.
Para diminuir o tempo de transferência em cerca de 10 vezes, e minimizar o risco de erro nos dados, o
Comunicador MFE utiliza tecnologia de compressão de dados baseada na ZLIB na comunicação com o
Componente de Segurança.

3.3.3. Monitor MFE


O Monitor MFE é uma aplicação (MFE-MON) que informa, através de ícones na barra de notificações, a
disponibilidade ou não de um MFE e permite a visualização de algumas informações.

Ela é responsável por:


• Exibir as informações sobre o MFE coletadas pelo serviço Comunicador MFE
• Exibir as versões de software do DRIVER MFE e seus componentes que estão instalados.
• Notificar a existência de nova versão de DRIVER MFE e o caminho para download.

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 5


Ela recebe as informações do serviço Comunicador MFE através da porta 9100/TCP.

3.4. Driver de Comunicação USB-Serial


É um driver de fornecimento do fabricante do MFE e é responsável por fazer a conversão do
dispositivo USB, ao qual o MFE está conectado, em interface serial conforme o sistema operacional
do PDV, tais como COMxx (Windows) ou ttySxx (Linux), e disponibilizá-la para uso pelo serviço
Comunicador MFE.

4. SOFTWARES EMBARCADOS MFE

4.1. Software Básico


É uma aplicação fornecida pelo Fabricante do MFE e responsável por executar todas as
funcionalidades previstas na Especificação de Requisitos do SAT-CFe.
As diferenças em relação à Especificação de Requisitos do SAT-CFe estão relacionadas a seguir:

4.1.1. Comunicação com o PDV


O Software Básico se comunicará com o PDV através do Componente de Segurança, via protocolo
TCP/IP, e não mais diretamente através da porta USB.
A comunicação via porta USB será responsabilidade do Componente de Segurança que repassará ao
Software Básico todas as funções chamadas pelo Aplicativo Comercial e/ou Software de Ativação.

4.1.2. Comunicação com o Componente de Segurança


O Software Básico deverá disponibilizar 02 (duas) portas TCP para que o Componente de Segurança
possa se conectar:
• 9012/TCP: usada para repassar toda comunicação proveniente do Aplicativo Comercial ou
Software de Ativação.
• 9013/TCP: usada pelo Componente de Segurança para solicitar informações sobre o hardware e
status do MFE através da função ConsultarStatusMFE.

A comunicação proveniente do Componente de Segurança será compactada e o algoritmo de


compactação utilizado é baseado na ZLIB.

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 6


4.1.3. Chaveamento do Canal de Comunicação internet
Caso o MFE tenha mais de uma interface de comunicação configurada e suporte o recurso de
redundância na comunicação, quando houver problemas de comunicação com a SEFAZ-CE o
Software Básico deverá tentar todas as interfaces de rede disponíveis, automaticamente, conforme a
prioridade definida.

4.2. Componente de Segurança


É uma aplicação fornecida pela SEFAZ-CE que será obrigatoriamente embarcada no MFE e operará
em conjunto com o Software Básico.
Ele será responsável por:
• Realizar a comunicação com o PDV através do serviço Comunicador MFE pela porta USB;
• Repassar para o Software Básico todas as funções chamadas pelo Aplicativo Comercial ou
Software de Ativação;
• Coletar informações operacionais e fiscais do MFE;
• Informar à SEFAZ-CE sobre eventuais problemas com o MFE e suas condições de operação;

O Componente de Segurança será disponibilizado nas plataformas Windows e Linux.

Arquivo de parametrização
Todas as informações necessárias para o funcionamento do Componente de Segurança estão no
arquivo “ParametrizacaoDaGestao.xml” que deverá ser gravado com o Componente de Segurança no
momento da produção do MFE.

4.2.1. Função ConsultaStatusMFE – informações sobre o MFE


O Componente de Segurança solicitará ao Software Básico, através da função “ConsultaStatusMFE” (porta
9013/TCP), informações sobre o estado de operação do MFE.

O Software Básico deverá retornar as seguintes informações:

# Campo Ele Pai Tipo Ocor Tam Dec Descrição

CSR01 statusMFE Raiz - - - - TAG raiz

CSR02 tpAmb E CSR01 N 1-1 1 Identificação do tipo de

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 7


# Campo Ele Pai Tipo Ocor Tam Dec Descrição
ambiente:
1= Produção
2= Testes
Código da UF na qual o
modulo está ativado, “00” se
o modulo não estiver
CSR03 UF E CSR01 N 1-1 2 ativado
Número de série do MFE
CSR04 numeroSerie E CSR01 N 1-1 9 Formato: 999999999
Agrupamento de dados
referente a informações do
CSR05 MFE G CSR01 MFE
Versão do software básico
CSR06 versaoSoftwareBasico E CSR05 C 1-1 8 Formato “00.00.00”
Estado do MFE:
0= DESBLOQUEADO
1= BLOQUEADO SEFAZ
2= BLOQUEADO
CONTRIBUINTE
3= BLOQUEADO
AUTONOMAMENTE
4= BLOQUEADO PARA
DESATIVACAO
10= VIOLADO

Quando não estiver ativado


o estado retornado será
CSR07 estado E CSR05 N 1-1 1-2 BLOQUEADO SEFAZ
Data/hora da ocorrência de
violação
Formato
”AAAAMMDDhhmmss”
Tag enviada somente se
CSR08 violacao E CSR05 C 0-1 14 ocorreu violação
Data/hora da ocorrência do
ultimo impacto:
Formato:
”AAAAMMDDhhmmss”
Tag enviada somente se
ocorreu impacto.
Informação enviada
imediatamente após a
CSR09 impacto E CSR05 C 0-1 14 ocorrência.
Status da alimentação:
0= Erro na leitura da fonte
de alimentação
1= Fonte AC
2= Bateria
CSR10 alimentacao E CSR05 N 1-1 1 3= USB

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 8


# Campo Ele Pai Tipo Ocor Tam Dec Descrição
Nivel da bateria de
alimentação:
0= Removida / Falha
1= Baixo
2= Medio
CSR11 bateria E CSR05 N 1-1 1 3= Alto
Canal de comunicação ativo
podendo assumir os
seguintes valores: “ETHE”,
“WIFI”, “GPR1”, “GPR2” ou
“NA” se não houver
CSR12 canal E CSR05 C 1-1 2-4 comunicação ativa
Agrupamento de dados
referente a informações de
CSR13 CFE G CSR01 Cupom Fiscal Eletronico
Quantidade de CFE´s
CSR14 qtdCFePendentes E CSR13 N 1-1 1-5 pendentes de transmissão
Agrupamento de dados
referente a informações de
CSR15 LOCALIZACAO G CSR01 localização
Posicionamento obtido via
GPS. Latitude em graus. S
negativo e N positivo.
Longitude em graus. W
negativo e E positivo, ou
“NA” se não houver a
informação.
Ex: “23.321353, -
CSR16 GPSPosicao E CSR15 C 1-1 2-21 45.312531”
Data e hora do último
posicionamento obtido via
GPS no formato
”AAAAMMDDhhmmss” ou
14 zeros “0” se não houver
CSR17 GPSDH E CSR15 C 1-1 14 a informação
Erro da posição em metros
ou 5 noves “9” se não
CSR18 GPSErro E CSR15 N 1-1 1-5 houver informação
Posicionamento obtido via
LBS. Latitude em graus. S
negativo e N positivo.
Longitude em graus. W
negativo e E positivo ou
“NA” se não houver
informação.
Ex: “23.321353, -
CSR19 LBSPosicao E CSR15 C 1-1 2-21 45.312531”

CSR20 LBSDH E CSR15 C 1-1 14 Data e hora do último

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 9


# Campo Ele Pai Tipo Ocor Tam Dec Descrição
posicionamento obtido via
LBS no formato
”AAAAMMDDhhmmss” ou
14 zeros “0” se não houver
informação
Erro estimado em metros da
posição adquirida via LBS
ou 5 noves “9” se não
CSR21 LBSErro E CSR15 N 1-1 1-5 houver informação
Quantidade de satélite de
GPS identificados no
CSR22 quantidadeSatelites E CSR15 N 1-1 1-2 momento
Agrupamento de dados
referente a informações da
CSR23 GSM G CSR01 rede GSM
Nome da operadora de
celular em uso ou “NA” se
CSR24 GSM_Operadora E CSR23 C 1-1 2-32 não estiver conectado
Qualidade de sinal rede
celular ou 999 se não
estiver conectado.
Qualidade é definida entre 0
CSR25 nivelGSM E CSR23 N 1-1 1-3 e 100%
Agrupamento de dados
referente a informações da
CSR26 WIFI G CSR01 rede WIFI
SSID da rede Wifi ou “NA”
se não houver informação.
Limitar aos primeiros 32
CSR27 SSID E CSR29 C 1-1 2-32 caracteres.
Qualidade de sinal rede
celular ou 999 se não
estiver conectado.
Qualidade é definida entre 0
CSR28 nivelWIFI E CSR29 N 1-1 1-3 e 100

Tabela 1 – Informações retornadas pelo Software Básico na função ConsultaStatusMFE

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 10


5. ANEXO I – Funções adicionais biblioteca MFE
Além das funções previstas na Especificação de Requisitos do SAT-CFe as seguintes funções estão
disponíveis na Biblioteca MFE.

5.1. Função ConfigurarInterfaceDeRedeMFE


Deve ser usada para realizar a configuração das interfaces de rede do MFE, similar à função
“ConfigurarInterfaceDeRede” definida no Projeto SAT-CFe, que ainda poderá ser utilizada para
configurar a interface de rede cabeada ou WIFI, porém com um formato readequado para possibilitar:
• A configuração de uma ou mais interfaces de rede simultaneamente;
• A configuração da interface de modem celular;
• A definição de uma prioridade para cada interface.

Observações:
• Os parâmetros permitem que uma ou mais interfaces sejam configuradas ao mesmo tempo,
cabendo a cada fabricante determinar se este recurso será usado ou não para configurar o seu
produto;
• Não é necessário que todas as TAGs sejam informadas, ou seja, para cada tipo de interface
somente as tags pertinentes ao seu tipo precisam ser preenchidas;
• A possibilidade de definição de prioridade nas interfaces permite que seja criado um recurso de
contingência de comunicação automático. Neste caso se a interface principal perder a
comunicação a secundária assumirá se estiver configurada. Ficará a critério de cada fabricante
usar ou não este recurso;
• As interfaces GPR1 e GPR2 representam os SIMCARDs 1 e 2 da interface de modem celular;

A. Parâmetros da Função

A função deve receber os parâmetros definidos abaixo.

Parâmetro Descrição Tipo Exemplo

Número aleatório gerado pelo AC para


numeroSessao Numérico Ex: “002101”
controle da comunicação

codigoDeAtivacao Senha definida pelo contribuinte String Ex: “senha123456”

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 11


Parâmetro Descrição Tipo Exemplo

04 (quatro) arquivos de configuração no


formato XML separados por “|” (pipe).
Mesmo que não exista o arquivo de
configuração o “|” (pipe) deverá ser
dadosConfiguracao String Exemplo abaixo
informado.
Abaixo segue tabela com as descrições de
todos os parâmetros do arquivo de
configuração.

Tabela I-1 – Parâmetros da função ConfigurarInterfaceRedeMFE

B. Protótipo da função

char* ConfigurarInterfaceDeRedeMFE ( unsigned int numeroSessao, char* codigoDeAtivacao, char*


dadosConfiguracao);

Exemplo de chamada da função:


Retorno = ConfigurarInterfaceDeRedeMFE ( 123456, “senha123456”, “<?xml version="1.0"
encoding="UTF-8"?><config><tipoInter>ETHE</tipoInter><tipoLan>DHCP</tipoLan>
<proxy>0</proxy></config>|||”);

C. Parâmetro “dadosConfiguracao”

Neste parâmetro podem ser configuradas até 04 (quatro) interfaces de rede simultaneamente cuja
configuração deve ser separada por um “|” (pipe).
Os 03 (três) “|” (pipes) deverão ser sempre informados, mesmo que não exista configuração.
A configuração de uma interface é um arquivo XML, similar ao definido na função
“ConfigurarInterfaceDeRede” conforme descrito abaixo.

TAG “tipoInter”

A TAG “tipoInter” teve seu conteúdo alterado para acrescentar a interface de modem e ficou assim
definida:

1 tipoInter 4 Tipo de interface de rede “ETHE” = ethernet


utilizada pelo equipamento “WIFI” = WIFI
“GPR1” = modem SIMCARD 1
“GPR2” = modem SIMCARD 2

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 12


TAGs adicionais

Quant.
Item TAG Descrição Exemplo
Caract.

TAGS definidas no Projeto SAT-CFe, Tabela 34 – Dados da


1 a 17
Configuração – Função ConfigurarInterfadeDeRede

18 prioridade - Prioridade de conexão 0, 1, 2, 3


(quanto menor, maior a
prioridade).
19 wepAuthType 2 Indica tipo de autenticação OP = Open
WEP. SH = Shared
20 wepDefTxKey 1 Indica índice da chave 1, 2, 3 ou 4
padrão de transmissão
WEP.
21 wepENC 3 Indica quantidade de bits de 64 ou 128
criptografia WEP.
wepKey1 26 Chave 1 WEP. Máximo 10 F4C71BA891
22 digitos hexa para cript. 64 ou
bits ou 26 digitos hexa para DBEFE3F9EF8E3239E5E34F258A
cript. 128 bits.
23 wepKey2 26 Chave 2 WEP. (Ídem
Chave1)
24 wepKey3 26 Chave 3 WEP. (Ídem
Chave1)
25 wepKey4 26 Chave 4 WEP. (Ídem
Chave1)
26 phone 25 Número para iniciar conexão *99#
móvel
27 apn 64 APN (Access Point Name) tim.br, claro.com.br
para conexão móvel

Tabela I-2 – Dados de configuração das interfaces de rede

D. Arquivo de configuração em formato XML

• TAGs não suportadas devem ser ignoradas pelo Software Básico, não possuindo nenhum efeito
para a configuração da rede;
• O arquivo XML poderá ser criado somente com as informações (TAGs) necessárias para a
configuração de um determinado tipo de interface de rede;
• Cada interface deve possuir uma prioridade diferente;

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 13


Estrutura completa do arquivo de configuração:

<?xml version="1.0" encoding="UTF8"?>


<config>
<tipoInter></tipoInter>
<SSID></SSID>
<seg></seg>
<codigo></codigo>
<tipoLan></tipoLan>
<lanIP></lanIP>
<lanMask></lanMask>
<lanGW></lanGW>
<lanDNS1></lanDNS1>
<lanDNS2></landDNS2>
<usuario></usuario>
<senha></senha>
<proxy></proxy>
<proxy_ip></proxy_ip>
<proxy_porta></proxy_porta>
<proxy_user></proxy_user>
<proxy_senha></proxy_senha>
<prioridade></prioridade>
<wepAuthType></wepAuthType>
<wepDefTxKey></wepDefTxKey>
<wepENC></wepENC>
<wepKey1></wepKey1>
<wepKey2></wepKey2>
<wepKey3></wepKey3>
<wepKey4></wepKey4>
<phone></phone>
<apn></apn>
</config>

E. Exemplos de arquivos XML

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 14


01 Interface: Rede ethernet com DHCP
<?xml version="1.0" encoding="UTF-8"?><config><tipoInter>ETHE</tipoInter>
<tipoLan>DHCP</tipoLan><proxy>0</proxy></config>|||

01 Interface: Rede ethernet com IP fixo


<?xml version="1.0" encoding="UTF-8"?><config><tipoInter>ETHE</tipoInter>
<tipoLan>IPFIX</tipoLan><lanIP>10.0.24.66</lanIP><lanMask>255.255.128.0</lanMask><lanGW>
10.0.24.1</lanGW><lanDNS1>8.8.8.8</lanDNS1><proxy>0</proxy></config>|||

01 Interface: Rede WIFI com DHCP


<?xml version="1.0" encoding="UTF-8"?><config><tipoInter>WIFI</tipoInter>
<tipoLan>DHCP</tipoLan><proxy>0</proxy><SSID>RedeWIFI</SSID><codigo>SenhaDaRede
</codigo><seg>WPA2-PERSONAL</seg></config>|||

02 Interfaces: Rede ethernet com IP fixo e WIFI com DHCP


<?xml version="1.0" encoding="UTF-8"?><config><tipoInter>ETHE</tipoInter><tipoLan>IPFIX
</tipoLan><lanIP>10.0.24.66</lanIP><lanMask>255.255.128.0</lanMask><lanGW>10.0.24.1
</lanGW><lanDNS1>8.8.8.8</lanDNS1><proxy>0</proxy></config>|<?xml version="1.0"
encoding="UTF-8"?><config><tipoInter>WIFI</tipoInter><tipoLan>DHCP</tipoLan><proxy>0</proxy>
<SSID>RedeWIFI</SSID><codigo>SenhaDaRede</codigo><seg>WPA2-PERSONAL</seg>
</config>||

01 Interface: Rede celular, SIM card 1, exemplo com operadora TIM


Deve-se verificar com a operadora os parâmetros corretos a serem utilizados na região do
Contribuinte.
<?xml version="1.0" encoding="UTF-8"?><config><name>gsm1</name><prioridade>2</prioridade>
<tipoInter>GPR1</tipoInter><tipoLan>DHCP</tipoLan><usuario>tim</usuario><senha>tim</senha>
<proxy>0</proxy><phone>*99#</phone><apn>tim.com.br</apn></config>|||

04 Interfaces: Todas as interfaces de rede com DHCP e os 2 SIMcards, exemplo com as


operadoras TIM e Claro

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 15


Deve-se verificar com a operadora os parâmetros corretos a serem utilizados na região do
Contribuinte.
<?xml version="1.0" encoding="UTF-8"?><config><tipoInter>ETHE</tipoInter><tipoLan>DHCP
</tipoLan><proxy>0</proxy></config>|<?xml version="1.0" encoding="UTF-8"?><config><tipoInter>
WIFI</tipoInter><tipoLan>DHCP</tipoLan><proxy>0</proxy><SSID>RedeWIFI</SSID><codigo>
SenhaDaRede</codigo><seg>WPA2-PERSONAL</seg></config>|<?xml version="1.0"
encoding="UTF-8"?><config><tipoInter>GPR1</tipoInter><tipoLan>DHCP</tipoLan><phone>*99#
</phone><apn>tim.com.br</apn><usuario>tim</usuario><senha>tim</senha><proxy>0
</proxy></config>|<?xml version="1.0" encoding="UTF-8"?><config><tipoInter>GPR2</tipoInter>
<tipoLan>DHCP</tipoLan><phone>*99#</phone><APN>claro.com.br</APN><usuario>claro
</usuario><senha>claro</senha><proxy>0</proxy></config>

F. Retorno da Função
A função retornará um valor do tipo string contendo os dados separados por pipe “|”.

Retorno: “numeroSessao|EEEEE|mensagem|cod|mensagemSEFAZ”

Descrição:

Parâmetro Descrição Exemplo

Número aleatório gerado pelo AC para


numeroSessao Ex: “000000”, “002101”
controle da comunicação

O código EEEEE é substituído por um


dentre os possíveis códigos de retorno
EEEE conforme Projeto SAT-CFe, Tabela 49 – Ex: “12000”
Códigos de Retorno do Equipamento SAT
– Função ConfigurarInterfaceDeRede

Descrição do código EEEE - conforme


Projeto SAT-CFe, Tabela 49 – Códigos de Ex: “Rede configurada com
mensagem
Retorno do Equipamento SAT – Função sucesso”
ConfigurarInterfaceDeRede

“cod” é o código de referência de cada


mensagemSEFAZ (conforme Projeto SAT-
cod Ex: “002”, “999”
CFe, Tabela 5 – Códigos para o
Comando_008).

Mensagem de texto enviada pela SEFAZ


Ex: “Existem atualizações para o
referente ao “Envio de avisos ao usuário”
mensagemSEFAZ SAT, porém o prazo para
(conforme Projeto SAT-CFe, Tabela 5 –
instalação é menor que 30 dias”
Códigos para o Comando_008)

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 16


Tabela I-3 – Parâmetros de retorno da função ConfigurarInterfaceDeRedeMFE

Descrições do código “EEEE”:

Código de Fluxo Mensagem Observação


Retorno
12000 SAT/AC Rede Configurada com Sucesso Efetuada a configuração de rede
12001 SAT/AC Código ativação inválido Verificar o código e tentar novamente
12002 SAT/AC Dados fora do padrão a ser Corrigir dados
informado
12098 SAT/AC SAT em processamento. Em casos onde o MFE estiver
Tente novamente. processando outra função
12099 SAT/AC Erro desconhecido Informar o administrador
TIMEOUT 20 Tempo limite para o processamento da função
SEGUNDOS

Tabela I-4 – Descrição das mensagens de retorno da função ConfigurarInterfaceDeRede

5.2. Função ConsultarStatusOperacionalMFE


Usada para consultar a situação de funcionamento e características do MFE, similar à função
“ConsultarStatusOperacional” definida no Projeto SAT-CFe, porém contendo informações não
cobertas pelo Projeto SAT-CFe e relativas ao hardware adicional.

A. Parâmetros da função

A função deve receber os parâmetros definidos abaixo.

Parâmetro Descrição Tipo Exemplo

Número aleatório gerado pelo AC


numeroSessao Numérico Ex: “002101”
para controle da comunicação

codigoDeAtivacao Senha definida pelo contribuinte String Ex: “senha123456”

Tabela I-5 – Parâmetros da função ConsultarStatusOperacionalMFE

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 17


B. Protótipo da função

char* ConsultarStatusOperacionalMFE ( unsigned int numeroSessao, char* codigoDeAtivacao);

Exemplo de chamada da função:


Retorno = ConsultarStatusOperacionalMFE(123456, “senha123456”);

C. Retorno da função

A função retornará um valor do tipo string contendo os dados separados por pipe “|”.

Retorno: “numeroSessao|EEEEE|mensagem|ConteudoRetorno|cod|mensagemSEFAZ”

Descrição:

Parâmetro Descrição Exemplo

Número aleatório gerado pelo AC para


numeroSessao Ex: “000000”, “002101”
controle da comunicação

O código EEEEE é substituído por um


dentre os possíveis códigos de retorno
EEEE conforme Projeto SAT-CFe, Tabela 49 – Ex: “12345”
Códigos de Retorno do Equipamento SAT
– Função ConsultarStatusOperacional

Descrição do código EEEE - conforme


Projeto SAT-CFe, Tabela 49 – Códigos de
mensagem Ex: “Resposta com sucesso”
Retorno do Equipamento SAT – Função
ConsultarStatusOperacional

“cod” é o código de referência de cada


mensagemSEFAZ (conforme Projeto SAT-
cod Ex: “002”, “999”
CFe, Tabela 5 – Códigos para o
Comando_008).

Mensagem de texto enviada pela SEFAZ


Ex: “Existem atualizações para o
referente ao “Envio de avisos ao usuário”
mensagemSEFAZ SAT, porém o prazo para
(conforme Projeto SAT-CFe, Tabela 5 –
instalação é menor que 30 dias”
Códigos para o Comando_008)

Corresponde às informações descritas no


ConteudoRetorno
item “D”

Tabela I-6 – Parâmetros de retorno da função ConsultarStatusOperacionalMFE

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 18


Descrições do código “EEEE”:

Código de Fluxo Mensagem Observação


Retorno
10000 SAT/AC Resposta com Sucesso Informações de status do SAT
10001 SAT/AC Código ativação inválido Verificar o código e tentar novamente
10098 SAT/AC SAT em processamento. Em casos onde o MFE estiver
Tente novamente. processando outra função
10099 SAT/AC Erro desconhecido Informar o administrador
TIMEOUT 20 Tempo limite para o processamento da função
SEGUNDOS

Tabela I-7 – Descrição das mensagens de retorno da função ConfigurarInterfaceDeRede

D. Conteúdo do campo ConteudoRetorno

Descrição das informações retornadas pelo MFe

Quant
Item TAG Descrição Exemplo
Caract

TAGs definidas no Projeto SAT-CFe, Tabela 30 – Conteúdo de


1 a 23
retorno - Função ConsultarStatusOperacional
1= Produção
24 TIPO_AMBIENTE 1 Identificação do ambiente
2= Testes
Código do eStado da Federação
no qual o MFE foi ativado.
25 UF 2 “23”
Se não foi ativado ainda
informar “00”
“0”= Removida / falha
“1”= Baixo
26 BATERIA 1 Nível da bateria externa
“2”= Médio
“3”= Alto
“0”= Erro leitura da fonte de
Informa se o MFE está sendo alimentação
27 ALIMENTACAO 1 alimentado pela bateria ou fonte “1”= Fonte externa
externa “2”= Bateria
“3”= USB
“ETHE”= ethernet
“WIFI”= wifi
“GPR1”= modem SIMcard 1
Canal de comunicação em uso
28 CANAL_ATIVO 4 “GPR2”= modem SIMcard 2
no momento
“NA”= se não houver canal
de comunicação disponível
no momento

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 19


Descrição das informações retornadas pelo MFe

Quant
Item TAG Descrição Exemplo
Caract

<?xml version="1.0"
encoding="UTF-8"?>
Configuração atual da primeira <config>
interface de rede ou “NA” se <prioridade>2</prioridade>
essa interface não estiver <tipoInter>GPR1</tipoInter>
configurada. <tipoLan>DHCP</tipoLan>
29 LAN_CONFIGURACAO_1 1024
Devem ser retornadas as <usuario>tim</usuario>
mesmas tags de configuração <senha>tim</senha>
usadas na função <proxy>0</proxy>
ConfigurarInterfaceDeRedeMFE. <phone>*99#</phone>
<apn>tim.br</apn>
</config>
Configuração atual da segunda
30 LAN_CONFIGURACAO_2 1024 interface de rede ou “NA” se não “NA”
estiver configurada
Configuração atual da terceira
31 LAN_CONFIGURACAO_3 1024 interface de rede ou “NA” se não “NA”
estiver configurada
Configuração atual da quarta
32 LAN_CONFIGURACAO_4 1024 interface de rede ou “NA” se não “NA”
estiver configurada
Nome da operadora de celular
33 GSM_OPERADORA 32 ou “NA” se não houver “vivo”
informação
“GPRS”, “EDGE”, “3G”,
34 GSM_REDE 5 Tecnologia da rede celular “4G” ou “NA” se não houver
informação

35 ICCID1 20 Identificação do SIMCARD 1

Identificador do assinante na
36 IMSI1 15
operadora do SIMCARD 1

37 ICCID2 20 Identificação do SIMCARD 2

Identificador do assinante na
38 IMSI2 15
operadora do SIMCARD 2
Data e hora da violação no
formato: “AAAAMMDDhhmmss”
39 VIOLACAO 1 “20150312011423”
ou 14 ZEROS se não houve
violação
Data e hora do último impacto
no formato:
40 IMPACTO 1 “20150312011423”
“AAAAMMDDhhmmss” ou 14
ZEROS se não houve impacto

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 20


Descrição das informações retornadas pelo MFe

Quant
Item TAG Descrição Exemplo
Caract

Endereço MAC address da


41 ETH_MAC 17 “A1:B2:C3:D4:E5:F6”
interface de rede ethernet
Endereço MAC address da
42 ETH_WIFI 17 “A1:B2:C3:D4:E5:F6”
interface de WIFI
IMEI do MODEM ou “NA” se não
43 IMEI 15 “350845555897085”
houver interface deste tipo
Posicionamento obtido via GPS.
Latitude em graus. S negativo e
44 GPS_POSICAO 21 N positivo. Longitude em graus. “23.321353, -45.312531”
W negativo e E positivo, ou “NA”
se não houver informação
Data e hora do último
posicionamento obtido via GPS
no formato
45 GPS_DH 14 “2040101120000”
”AAAAMMDDhhmmss” ou 14
zeros “0” se não houver
informação
Erro da posição em metros ou 5
46 GPS_ERRO 5 noves “9” se não houver “10”
informação
Posicionamento obtido via LBS.
Latitude em graus. S negativo e
47 LBS_POSICAO 21 N positivo. Longitude em graus. “NA”
W negativo e E positivo ou “NA”
se não houver informação
Data e hora do último
posicionamento obtido via LBS
no formato
48 LBS_DH 14 “00000000000000”
”AAAAMMDDhhmmss” ou 14
zeros “0” se não houver
informação
Erro estimado em metros da
posição adquirida via LBS ou 5
49 LBS_ERRO 5 “99999”
noves “9” se não houver
informação

50 QUANTIDADE_SATELITES 2 Quantidade de satélite de GPS “5”

Qualidade de sinal rede celular


ou “NA” se não estiver
51 GSM_NIVEL 3 40
conectado. Qualidade é definida
entre 0 e 100%.
Lista até 15 redes Wifi <?xml version="1.0"
52 WIFI_REDES 2048
disponíveis com melhor nível de encoding="UTF-8"?>

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 21


Descrição das informações retornadas pelo MFe

Quant
Item TAG Descrição Exemplo
Caract

sinal em formato XML ou “NA” <redes>


caso não existam redes <rede>
disponíveis. <ssid>rede1</ssid>
Formato do XML “REDES” <cripto>WEP</cripto>
descrito abaixo <cripto>WPA-
PERSONAL</cripto>
<sinal>80</sinal>
</rede>
<rede>
<ssid>rede2</ssid>
<cripto>WEP</cripto>
<sinal>30</sinal>
</rede>
</redes>
Quantidade de Cupons
53 CFEPEND 4 “12”
pendentes de envio

Tabela I-8 – Informações retornadas pela função ConsultarStatusOperacionalMFE

Formato do XML “REDES”


<?xml version="1.0" encoding="UTF-8"?>
<redes>
<rede>
<ssid>nome da rede<;ssid>
<cripto>criptografia 1 disponível</cripto>
<cripto>criptografia 2 disponível</cripto>
<sinal>qualidade do sinal de 0 a 100</sinal>
</rede>
</redes>

• Tipos de criptografia:

NONE
WEP
WPA-PERSONAL
WPA2-PERSONAL
WPA-ENTERPRISE

• Caso a rede permita mais de um tipo de criptografia informar cada uma em uma tag <cripto>.

• Limitar o SSID aos 100 primeiros caracteres do nome da rede.

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 22


E. Preenchimento quando não ativado

Os seguintes campos devem ser preenchidos com ZEROs caso o MFE não tenha sido ativado ainda.

Ordem Campo Tam Descrição Valor


Max
16 ULTIMO_CF-E-SAT 44 Número sequencial do último CF-e- Preencher com 44
SAT Emitido zeros “0”
17 LISTA_INICIAL 44 Número sequencial do primeiro CF-e- Preencher com 44
SAT armazenado na memória de zeros “0”
trabalho
18 LISTA_FINAL 44 Número sequencial do último CF-e- Preencher com 44
SAT armazenado na memória de zeros “0”
trabalho
19 DH_CFe 14 Data e hora da última transmissão de Preencher com 14
CF-e-SAT para SEFAZ no formato zeros “0”
AAAAMMDDhhmmss
20 DH_ULTIMA 14 Última comunicação com a SEFAZ no Preencher com 14
formato aaaammddHHMMSS zeros “0”
21 CERT_EMISSAO 08 Data de emissão do certificado Preencher com 8 zeros
instalado no formato AAAAMMDD “0”
22 CERT_VENCIMENTO 08 Data de vencimento do certificado Preencher com 8 zeros
instalado no formato AAAAMMDD “0”

Tabela I-9 – Preenchimento das informações função ConsultarStatusOperacionalMFE

5.3. Função ReiniciarMFE


Como o MFE é dotado de bateria, caso precise ser reiniciado só existem duas formas:
• Remover a alimentação e esperar a bateria se esgotar – o que não é recomendado por reduzir o
tempo de vida da bateria.
• Ter o seu reinício comandado por uma função.

A. Parâmetros da função

A função deve receber os parâmetros definidos abaixo.

Parâmetro Descrição Tipo Exemplo

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 23


Parâmetro Descrição Tipo Exemplo

Número aleatório gerado pelo AC


numeroSessao Numérico Ex: “002101”
para controle da comunicação

codigoDeAtivacao Senha definida pelo contribuinte String Ex: “senha123456”

Tabela I-10 – Parâmetros da função EnviarStatusAC

B. Protótipo da função

void ReiniciarMFE(unsigned int numeroSessao, char* codigoDeAtivacao);

Exemplo de chamada da função:


ReiniciarMFE(“123456”,”senha123456”);

C. Retorno da função

Não há retorno para esta função.

5.4. Função EnviarStatusAC


Usada pelo Aplicativo Comercial disponibilizado pela SEFAZ-CE para informar a versão em uso.
Não deve ser implementada pelo Software Básico, pois é de uso exclusivo do Componente de Segurança.

A. Parâmetros da função

A função deve receber os parâmetros definidos abaixo.

Parâmetro Descrição Tipo Exemplo

descricaoFabricante Fabricante do AC String Ex: “SEFAZ-CE”

versaoAC Versão do AC String Ex: “01.01.01”

Tabela I-10 – Parâmetros da função EnviarStatusAC

B. Protótipo da função

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 24


void EnviarStatusAC(unsigned int numeroSessao, char* codigoDeAtivacao, char*
descricaoFabricante, char* versaoAC);

Exemplo de chamada da função:


EnviarStatusAC(123456,“senha123456”,”SEFAZ-CE”,”01.00.00”);

C. Retorno da função

Não há retorno para esta função.

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 25


6. ANEXO 2 – Controle de modificações do documento

Versão – 1.1.0 a 1.1.0

Pág. Antes Depois Motivo

Revisão geral.

Especificação Técnica de Requisitos MFE-CFe 1.1.0 (Direitos Reservados) 26