ÍNDICE
Integrador NFS-e
O que é?
O IntegradorNFSe é uma solução para emissão de Notas Fiscais Eletrônicas de Serviços (NFS-e). O principal objetivo desta aplicação é integrar o DMS da concessionária (Apollo/BRAVOS, Sisdia ou Dealer) com as Prefeituras para envio das notas fiscais de serviço eletrônicas.
Como ele funciona?
O IntegradorNFSe é um serviço WebService que roda em ambiente Windows através do IIS. Este serviço realiza a comunicação entre o DMS utilizado e os sistemas das Prefeituras para envio e consulta de NFS-e. Para atender aos diferentes modelos de comunicação definidos por cada prefeitura o integradorNFSe implementa uma arquitetura de plugins. Sendo assim, além do IntegradorNFSe é necessário o plugin com as configurações da Prefeitura com a qual a concessionária estará se comunicando.
Pré-requisitos:
- Possuir um DMS Linx (Apollo/BRAVOS, Dealer, Sisdia);
- Possuir um servidor Windows com acesso a Internet;
- Instalação do IIS;
- Instalação do serviço, IntegradorNFSe.exe;
Configuração do plugin de comunicação com a Prefeitura.
Instalação
Segue fluxo de instalação do integrador de NFS-e:
Instalação do IIS
Execute os passos a seguir para instalação/ativação do IIS, de acordo a versão do Windows utilizada pela sua concessionária:
Utilizando o Windows XP
- Acesse o menu <Iniciar > Painel de Controle>, clique em <Adicionar ou Remover Programas> e em seguida na opção <Adicionar/Remover componentes do Windows>;
- Marque a opção <Internet Information Services (IIS>)>, clique no botão <Avançar> até o final (pode ser necessário o CD de instalação do Windows);
Utilizando o Windows 7/Vista
- Acesse o menu <Iniciar > Painel de Controle >, clique na opção <Programas> e em seguida em <Ativar ou Desativar Recursos do Windows>;
- Marque a opção <Serviços de Informações da Internet (IIS)> e todas as opções filhas(não precisa Servidor FTP), em seguida, clique em <OK>;
Instalação do Servidor Apache
Execute os passos a seguir para instalação/ativação do Apache:
Faça download da última versão do Apache, no link http://httpd.apache.org/download.cgi;
Faça download do módulo ASP.NET para Apache: http://sourceforge.net/projects/mod-aspdotnet/+
Execute o arquivo de instalação do Apache:
Após a instalação do Apache, execute o instalador do módulo ASP.NET e siga as instruções na tela para a instalação.
Após a instalação, acesse a pasta onde foi instalado o Apache e acesse a pasta de configuração.
- Exemplo: C:\Program Files (x86)\Apache Software Foundation\Apache2.2\conf;
- Faça uma cópia de segurança do arquivo de configuração httpd.conf;
- Editar o arquivo de configuração com um editor de texto qualquer e alterar os dados conforme abaixo:
o Adicionar no final do arquivo os comandos abaixo:
- Use the asp.net handler for all common ASP.NET file types
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
licx rem resources resx soap vb vbproj vsdisco webinfo
<IfModule mod_aspdotnet.cpp> - Mount the sampleapp example application
AspNetMount /IntegradorNFSe "C:/IntegradorNFSe" - Map all requests for /sampleapp to the sampleapp application files
Alias /IntegradorNFSe "C:/IntegradorNFSe" - Allow asp.net scripts to be executed in the sampleapp example
<Directory "C:/IntegradorNFSe">
Options FollowSymlinks ExecCGI
Order allow,deny
Allow from all
DirectoryIndex Default.htm Default.html Default.aspx Default.asmx
</Directory> - For all virtual ASP.NET webs, we need the aspnet_client files
- to serve the client-side helper scripts.
- NOTICE "C:/Windows/" – change to %systemroot%
- "C:/Windows/" for WinXP, "C:/WINNT/" for Win2k
AliasMatch /aspnet_client/system_web/(\d+)(\d+)(\d+)_(\d+)/(.*) \
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4" NOTICE "C:/Windows/" – change to %systemroot%
"C:/Windows/" for WinXP, "C:/WINNT/" for Win2k
<Directory "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
Options FollowSymlinks
Order allow,deny
Allow from all
</Directory>
</IfModule>Certifique-se que a pasta informada nas linhas:
AspNetMount /IntegradorNFSe "C:/IntegradorNFSe"
Alias /IntegradorNFSe "C:/IntegradorNFSe"
<Directory "C:/IntegradorNFSe">
são as mesmas onde estão instalados os plugins de emissão de NFS-e, conforme tópico Integrador NFSe.
Inicie o serviço do Apache pelo menu iniciar ou na barra de tarefa do Windows:
Para mais informações referente a instalação do Apache, consulte através do site http://httpd.apache.org/docs/2.2/platform/windows.html;
Em caso de Windos 7, pode ocorrer erro na inicialização do serviço que pode ser resolvido com os passos abaixo:
Passo 1:
Selecione a opção Programs and Features no Painel de Controle.
Passo 2:
Selecione ao lado esquerdo Turn Windows Features on or off com isso aparecerá a janela de Windows Features, aguarde até as informações serem carregadas
Passo 3:
Expanda as informações da opção Microsoft .NET Framework 3.5.1 e selecione as opções de HTTP e salvar as alterações.
Instalação do Integrador
Execute o programa IntegradorNFSe.exe e clique em <Avançar> até o final.
Na tela a seguir, onde é informada a pasta de instalação, serão armazenados todos os aplicativos referente a NFS-e.
No final da instalação será feito um teste para verificar se o WebService foi instalado corretamente. O resultado deste teste deve ser semelhante à tela a seguir:
Configuração do Plugin
A comunicação com as Prefeituras será feita através de Plugins. O WebService deverá ser configurado com informações referente ao Plugin a ser utilizado e o certificado digital. Execute os procedimentos abaixo para configuração:
- Atualize o plugin da sua Prefeitura, conforme instruções recebidas da Distribuição;
- Execute o programa "\IntegradorNFSe\bin\Configurador.exe" e verifique que será apresentada a tela a seguir:
- Clique no botãoe preencha os campos, conforme segue abaixo:
Campos disponíveis:
- CNPJ: Preencha com o CNPJ da concessionária;
- Plugin: Selecione neste campo o plugin referido no item 2.3.a;
- URL Homologação: Ajuste as informações sugeridas neste campo, de acordo com as informações do webservice do ambiente de homologação obtidas da Prefeitura.Caso este campo venha preenchido com a informação "PASTA_COMPARTILHADA_NO_SERVIDOR", leia atentamente o item "2.3.1 Geração de Arquivos" para fazer o correto preenchimento deste campo.
- URL Produção: Ajuste as informações sugeridas neste campo, de acordo com as informações do webservice do ambiente de produção obtidas da Prefeitura.Caso este campo venha preenchido com a informação "PASTA_COMPARTILHADA_NO_SERVIDOR", leia atentamente o item "2.3.1 Geração de Arquivos" para fazer o correto preenchimento deste campo.
- Homologação: Esta opção só deve ser marcada quando utilizado o ambiente de homologação da prefeitura;
- Senha: Informe a senha referente ao Certificado Digital que será utilizado para a emissão de NFS-e;
Arquivo: Clique no botão <Procurar> e selecione o Certificado Digital em formato .pfx que será utilizado para a emissão de NFS-e;
Para os casos em que a prefeitura não exige a assinatura digital no arquivo XML, os campos <Senha> e <Arquivo>, referente ao quadro <Certificado Digital A1>, não devem ser informados.RPS: Clique no botão <Procurar> e selecione um modelo para impressão do RPS para o município, caso exista.
Na pasta do IntegradorNFSe está disponível dois modelos de RPS padrões que podem ser alterados de acordo com as necessidades da concessionária: Modelo_1_rps.rtf e Modelo_2_rps.rtf. Para alteração ou criação de um novo modelo, consulte o item "Impressão de RPS e NFS-e".- NFSe: Clique no botão <Procurar> e selecione um modelo para impressão da NFS-e para o município, caso exista. Na pasta do IntegradorNFSe há um modelo padrão de NFS-e disponível que pode ser alterado de acordo com as necessidades da concessionária: Modelo_1_nfse.rtf. Para alteração ou criação de um novo modelo, consulte o item "Impressão de RPS e NFS-e".
- Tentativas: Este campo vem preenchido com o número padrão de tentativas de envio da NFS-e. No caso de lentidão no retorno da Prefeitura, este valor pode ser alterado para um valor maior;
- Intervalo (segundos): Este campo vem preenchido com o tempo padrão entre cada tentativa de envio da NFS-e. Caso o valor sugerido seja alterado para um valor maior, o tempo de emissão de cada NFS-e aumentará de acordo com o valor informado.
- Variáveis Formatação: Nesta opção são disponibilizados os campos que podem ser impressos no RPS e NFS-e. Consulte o item "3.2 Formatação dos documentos para impressão de RPS e NFS-e" para mais informações.
- Número da nota sem formatação: Ao marcar a opção, o sistema irá gravar antes do número de RPS, o respectivo ano, conforme a necessidade de cada Prefeitura.
Exemplo: Com a opção desmarcada, será gravado "118" (número do RPS), com a opção marcada, será gravado "2014118" (ano + número do RPS). (2.10U01).
Geração de Arquivos
A comunicação com a maioria das prefeituras é feita diretamente através de webservices, porém algumas prefeituras fazem a comunicação através de upload/download de arquivos através do site. Esses arquivos podem ser gerados em formato XML ou em formato TEXTO.
Nesses casos, o Integrador NFSe vai apenas gerar os arquivos e o usuário será responsável por fazer o upload (envio) conforme instruções da prefeitura, e em alguns casos, para as prefeituras que tem arquivo de retorno, o usuário também será responsável por fazer o download (recepção), conforme instruções da prefeitura.
Os plugins que tratam prefeituras que trabalham com arquivos, ao invés de sugerirem a URL de comunicação para o configurador, irão fazer a seguinte sugestão (tanto para produção quanto para homologação): "PASTA_COMPARTILHADA_NO_SERVIDOR".
O usuário então deverá criar uma pasta no servidor para gravação/leitura desses arquivos e deverá informar o caminho dessa pasta nos campos URL Homologação e URL Produção do Configurador de plugin.
Essa pasta do servidor deverá ser compartilhada e possuir permissões de acesso para que possa ser lida/gravada pelas estações de trabalho.
O processo então funcionará da seguinte forma:
- Geração e envio de arquivos: Quando o usuário quiser enviar um lote de RPS, ele deverá gerar o lote pelo sistema (conforme instruções do manual de integração NFS-e com o sistema utilizado), depois deverá fazer o upload no site da prefeitura (seguindo instruções da prefeitura), enviando o arquivo que foi gerado na pasta do servidor que foi mapeada na sua estação;
- Processamento de arquivos de retorno: No caso de prefeituras que tem retorno, quando o usuário quiser processar o retorno, ele deverá fazer o download do arquivo no site da prefeitura (seguindo instruções da prefeitura) e gravá-la na pasta do servidor que foi mapeada na sua estação. Depois disso, ele deverá executar o processo de consulta pelo sistema (conforme instruções do manual de integração NFS-e com o sistema utilizado).
Registro de Dll's Auxiliares
Execute os procedimentos de registro de dll's a seguir, conforme segue:
Copie os arquivos <capicom.dll>, <msxml5.dll> e <msxml5r.dll> para a pasta "system32" para máquinas 32 bits ou "SysWOW64" para máquinas 64 bits, a qual está abaixo da pasta onde está instalado o windows, normalmente no caminho "c:\windows\system32" ou "c:\windows\SysWOW64" e registre as DLLs pelo prompt do DOS conforme segue abaixo:
- Para máquinas 32 bits:
Acesse o menu <Iniciar > Executar>, na tela <Executar>, informe o comando CMD e clique no botão <OK>. Após, no prompt do DOS, informe os comandos abaixo, um de cada vez, e tecle <Enter>.
regsvr32 c:\windows\System32\capicom.dll
regsvr32 c:\windows\System32\msxml5.dll
regsvr32 c:\windows\System32\msxml5r.dll
- Para máquinas 64 bits:
Acesse o menu <Iniciar > Executar> na tela <Executar>, informe o comando CMD e clique no botão <OK>. Após, no prompt do DOS, informe os comandos abaixo, um de cada vez, e tecle <Enter>.
regsvr32 c:\windows\SysWOW64\capicom.dll
regsvr32 c:\windows\SysWOW64\msxml5.dll
regsvr32 c:\windows\SysWOW64\msxml5r.dll
Impressão de RPS e NFS-e
Montagem dos modelos de impressão:
Processo de Impressão do IntegradorNFSe
As impressões do RPS e NFS-e são baseadas em modelos de documentos. Os modelos são arquivos em formato ".rtf " que podem ser implementados por qualquer editor que tenha suporte a esse formato, como o word, por exemplo. Os modelos deverão ficar dentro da pasta "bin" de instalação do integrador, normalmente disponibilizado em "c:\Inetpub\Services\IntegradorNFSe\bin".
Formatação dos documentos para impressão de RPS e NFS-e
A formatação dos documentos poderá conter imagens, quadros, traços, textos constantes e variáveis. As variáveis permitidas podem ser visualizadas através do programa <Configurador>, botão <Variáveis Formatação>. São disponibilizadas variáveis para impressão do RPS e para impressão da NFS-e, conforme tela a seguir:
Todas as variáveis apresentadas nesta opção podem ser impressas no documento, para isso, copie a variável desejada para o documento em formato .rtf no local onde a mesma deve ser impressa. As variáveis inseridas no documento deverão permanecer entre os sinais "<" e ">", exemplo "<RazaoSocialTomador>".
Abaixo segue a imagem do modelo de um RPS (Modelo_1_rps.rtf), onde é possível visualizar as variáveis que foram utilizadas entre "<" e ">".
Para simplificar, os dados do prestador não foram colocados como variáveis, então deverão ser criados como texto fixo no .rtf. Apenas os campos CNPJ e Inscrição Municipal são variáveis e estão disponíveis para seleção no Configurador. Se a concessionária optar por utilizar um dos modelos enviados no pacote, deverá editar o modelo e alterar os dados do Prestador para os dados de sua empresa. Nos modelos enviados foram usados os logotipos da Linx. Estes devem ser substituídos pelos logotipos da Prefeitura e Concessionária, ou simplesmente excluídos, caso a concessionária não deseje imprimir os logotipos.
- Formatação do campo de discriminação dos Serviços:
Para impressão do RPS, algumas prefeituras permitem a discriminação dos serviços item a item e outras, exigem que todos os serviços sejam considerados em uma única linha como se fosse um item único. No momento da formatação do documento, o usuário deverá formatar de acordo com a exigência da prefeitura do seu município.
- Formatação Item a Item:
Ao selecionar as variáveis para impressão, devem ser considerados os campos com terminação "Item". Por exemplo, a tag "DiscriminacaoItem" deverá ser utilizada quando se queira-se imprimir a discriminação de um item separado dos demais. Essa tag "DiscriminacaoItem", por exemplo, poderá ser exibida várias vezes na formatação. O programa irá substituir cada uma com o item correspondente. Caso a nota tenha menos itens do que as repetições da tag na formatação, as restantes não serão apresentadas.
Exemplo de impressão gerada com a formatação acima:
- Formatação em um único item:
Ao selecionar as variáveis para impressão, deve ser considerado a variável "Discriminacao". Neste caso, todos os serviços (se a nota tiver mais de um) serão impressos como se fosse um único item na nota.
Exemplo de impressão gerada com a formatação acima:
No caso do modelo de emissão de NFS-e, só é possível emitir os serviços como se fosse um item. Por isso, no momento de selecionar as variáveis para formatação do modelo da NFs-e, será apresentando somente o campo <Discriminacao>.
Relação das variáveis disponíveis para impressão
- Variáveis disponíveis para formatação de RPS:
No programa de configuração do Integrador de NFSe, utilizando o botão "Variáveis Formatação", será exibida uma tela onde pode ser obtida a listagem de variáveis disponíveis para impressão, através dos campos "RPS" e "NFSe".
Solucionando Problemas
Caso o teste de acesso ao WebService realizado no final da instalação falhe, siga as instruções abaixo:
- Digite a seguinte URL no browser: http://localhost/integradorNFSe/Default.asmx+. Em seguida, a tela abaixo será apresentada:
- No prompt do DOS, acesse o diretório C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>. Em seguida, execute o comando: aspnet_regiis.exe –i;
- A pasta "\IntegradorNFSe" precisa estar com permissões de acesso definidas para "Controle Total", para o usuário que está logado na máquina onde o Integrador NFS-e está em execução;
- No Windows Server 2003, caso o Certificado do cliente ou da Prefeitura for versão 2 ou superior, poderá ser necessário instalar o HotFix http://support.microsoft.com/kb/938397+;
- Verifique as configurações de segurança de rede/firewall para que o servidor onde foi instalado o WebService tenha acesso ao servidor da prefeitura e para que as estações tenham acesso ao servidor do WebService.
Caso sugestões não resolverem o problema, entre em contato com o Suporte.