Nos últimos dias tenho visto em alguns fóruns de programação um assunto cada
vez mais freqüente, “Dúvidas no processo de Homologação de aplicações PAF-ECF”.
E Tendo em vista a experiência que adquire passando por esse processo por duas vezes,
resolvi elaborar esse tutorial dando as coordenadas para quem esta iniciando os
procedimentos.
A primeira mão parece ser uma tarefa bastante árdua, mas terminado o processo
vimos que não é nenhum bicho de sete cabeças.
Mas sem mais delongas vamos dar inicio ao tutorial.
O
primeiro passo é fazer o download dos manuais e roteiros de homologação que
serão usados para homologar o aplicativo.
No link abaixo você poderá baixar uma cópia do manual de desenvolvimento do
aplicativo. Nele tem detalhado todos os requisitos necessários e legislação
relacionada do aplicativo PAF-ECF.
http://www.fazenda.mg.gov.br/empresas/ecf/manuais/manu_des.pdf
Neste outro link você irá baixar o roteiro de homologação que será usado pelo
órgão credenciado da receita.
http://www.fazenda.mg.gov.br/empresas/ecf/manuais/rafpaf.pdf
Nesta versão do PAF-ECF é necessária a criação de um menu fiscal que deverá
gravar várias informações em arquivos eletrônicos no formato de texto. Nestes
arquivos deverão conter uma assinatura digital EAD que será validada pelo
aplicativo eECFc. Sendo assim, é extremamente aconselhável que você faça essa
validação em todos os arquivos antes de ir para o processo de homologação nos
órgãos credenciados pela receita. Segue abaixo o link para baixar o aplicativo.
http://www.fazenda.mg.gov.br/empresas/ecf/informacoes/eecfc.htm
Para gerar a assinatura digital EAD, é necessário o uso de DLL de terceiros,
bom, pelo menos foi o meio mais fácil que encontrei. No link abaixo eu dou um
exemplo da função que uso em meu aplicativo.
//www.devmedia.com.br/articles/viewcomp.asp?comp=15428
Em uma
das funções exigidas no menu fiscal, será necessário na criação do nome do
arquivo eletrônico no formato de texto, que seja identificado o equipamento ECF
pelo código nacional. Esse código foi criado pela receita e poderá se
encontrado na tabela que poderá ser baixada no no link abaixo:
http://www.fazenda.mg.gov.br/empresas/ecf/informacoes/TABNCIEE_por_marca.pdf
O menu fiscal é um dos mais importantes pontos de um sistema ECF, dentro dos
requisitos atuais de homologação. Nele são concentradas diversas informações
referentes ao processamento dos dados do ECF e deve seguir em detalhes os
padrões exigidos pela receita. A grande notícia é que para os desenvolvedores
que utilizam as dll’s disponibilizadas pelos fabricantes de equipamentos
fiscais, e que as mesmas realizam pelo menos 80% do trabalho pesado no
processamento das informações, cabendo ao desenvolvedor apenas encontrar o
comando certo para criar este menu.
Na
sequência deste tutorial estão os comandos das dll’s referentes a cada
opção do menu fiscal. Os comandos são referentes aos seguintes equipamentos:
Bematech, Daruma, Epson, Elgin e Sweda.
Deve-se elaborar a tela do menu fiscal. A do meu aplicativo ficou parecida com esta da figura:
Os títulos de cada opção do
menu fiscal devem ser idênticos a descrição solicitada no Roteiro de
homologação. Pelo menos foi o que o avaliador me pediu quando realizei a
homologação do meu aplicativo.
Segue os comandos:
LX – Leitura X que é um comando básico de todo sistema de ECF.
Bematech - Bematech_FI_LeituraX;
Daruma - Daruma_FI_LeituraX;
Epson - EPSON_RelatorioFiscal_LeituraX;
Sweda - ECF_LeituraX;
Elgin - Elgin_LeituraX;
Não há parâmetros para esta opção;
LMFC
– Leitura da memória fiscal Completa e LMFC – Leitura da memória fiscal
Simplificada.
Neste requisito terá variações entre faixa de período e ou faixa de reduções-Z
tanto para leitura da memória fiscal Completa como para leitura simplificada. E
também deverá se impressora pela impressora fiscal ou gerada em arquivo texto.
Segue os comandos:
Bematech
Bematech_FI_LeituraMemoriaFiscalDataMFD - Por período na impressora.
Bematech_FI_LeituraMemoriaFiscalSerialDataMFD - Por Período em arquivo.
Bematech_FI_LeituraMemoriaFiscalReducaoMFD - Por Redução na Impressora.
Bematech_FI_LeituraMemoriaFiscalSerialReducaoMFD - Por Redução em Arquivo.
Daruma
Daruma_FI_LeituraMemoriaFiscalData - Por
Período na Impressora.
Daruma_FI_LeituraMemoriaFiscalSerialData - Por Período na Impressora.
Daruma_FI_LeituraMemoriaFiscalReducao - Por Redução na Impressora.
Daruma_FI_LeituraMemoriaFiscalSerialReducao - Por Redução em Arquivo.
Epson
EPSON_RelatorioFiscal_Leitura_MF - Por
Período na Impressora.
EPSON_RelatorioFiscal_Leitura_MF - Por Período na Impressora.
EPSON_RelatorioFiscal_Leitura_MF - Por Redução na Impressora.
EPSON_RelatorioFiscal_Leitura_MF - Por Redução em Arquivo.
Sweda
ECF_LeituraMemoriaFiscalDataMFD - Por
Período na Impressora.
ECF_LeituraMemoriaFiscalSerialDataMFD - Por Período na Impressora.
ECF_LeituraMemoriaFiscalReducaoMFD - Por Redução na Impressora.
ECF_LeituraMemoriaFiscalSerialReducaoMFD - Por Redução em Arquivo.
Elgin
Elgin_LeituraMemoriaFiscalData - Por Período
na Impressora.
Elgin_LeituraMemoriaFiscalSerialData - Por Período na Impressora.
Elgin_LeituraMemoriaFiscalReducao - Por Redução na Impressora.
Elgin_LeituraMemoriaFiscalSerialReducao - Por Redução em Arquivo.
Espelho MFD – Como o
próprio nome diz, este comando irá gerar um arquivo com o espelho de
movimentações efetuadas pelo ECF. Também há variações neste comando que poderá
ser por período de data ou numero de redução.
Bematech - Bematech_FI_DownloadMFD
Daruma - Daruma_FIMFD_DownloadDaMFD
Epson – EPSON_Obter_Dados_MF_MFD
Sweda – ECF_DownloadMFD
Elgin – Elgin_DownloadMFD
Arq. MFD – Este comando não é suportado pelas DLL’s. Então seguindo
orientação do Roteiro apenas coloquei a mensagem “Função Não suportada pelo
modelo do ECF utilizado!”.
Nas Opções que seguintes do menu fiscal (Tabela de Produtos, Estoque, Movimento
por ECF, Meios de Pagamento, DAV Emitido, Transferência de Mesas, Mesas
Abertas), deverá ser extraídos dados da base de dados do sistema e gerado
arquivos textos ou relatórios gerenciais impressos pela impressora fiscal. Os
arquivos gerados deverão segui um layout pré-determinado pela receita que você
encontrará no seguinte link:
http://www.fazenda.gov.br/confaz/confaz/atos/atos_cotepe/2008/ac006_08.htm
Estes arquivos deverão ser assinados digitalmente, e validados pelo aplicativo eECF. Leia mais sobre este assunto no link.
//www.devmedia.com.br/articles/viewcomp.asp?comp=15428
Para emissão dos Relatórios Gerenciais com os respectivos dados solicitados em cada uma das opções deverá usar os seguintes comandos:
Abertura do Gerencial:
Bematech – Não é necessário comando para abertura, ao enviar primeira linha será aberto o gerencial.
Daruma – Daruma_FI_AbreRelatorioGerencial.
Epson – EPSON_NaoFiscal_Abrir_Relatorio_Gerencial.
Sweda – ECF_AbreRelatorioGerencial.
Elgin – Elgin_AbreRelatorioGerencial.
Imprmir Linha no relatório gerencial:
Bematech – Bematech_FI_UsaComprovanteNaoFiscalVinculadoTEF.
Daruma – Daruma_FI_UsaComprovanteNaoFiscalVinculado.
Epson – EPSON_NaoFiscal_Imprimir_LinhaEX.
Sweda – ECF_UsaComprovanteNaoFiscalVinculado.
Elgin – Elgin_UsaComprovanteNaoFiscalVinculado.
Fechar relatório gerencial:
Bematech – Bematech_FI_FechaRelatorioGerencial.
Daruma – Daruma_FI_FechaRelatorioGerencial.
Epson – EPSON_NaoFiscal_Fechar_Relatorio_Gerencial.
Sweda – ECF_FechaRelatorioGerencial.
Elgin – Elgin_FechaRelatorioGerencial.
Observações:
Antes de ir a um agente credenciado pela receita para realizar a certificação, efetue todos os teste detalhadamente em laboratório, observe bem as entrelinhas, revise os layouts gerados pela aplicação, valide a assinatura EAD. Pois tudo isso será observado criteriosamente pelo examinador, e como terá um alto custo para realização da certificação quanto menos tempo se perde acertando detalhes e melhor.
Quando for para a certificação, será necessário levar as declarações exigidas e também alguns envelopes para lacrar o cd com os códigos fontes.
Atenção:
Quando efetuei a homologação do meu aplicativo ainda era usada a
versão 01.03 do roteiro. Foram adicionadas algumas alterações na nova versão do
roteiro. Neste tutorial passo apenas uma base para quem deseja efetuar a
homologação e ainda não sabe por onde começar.
Tive informações que as novas DLL’s dos fabricantes já estão disponibilizado comando para geração do Arquivo MFD, por favor, verifique!