Verificações adicionais para recebimento de documentos eletrônicos
Este tópico tem por objetivo trazer informações adicionais sobre a rotina de recebimento de documentos eletrônicos, focado no processo de recebimento do e-mail com o arquivo XML da NF-e/CT-e pelo eDocs.
1 - Verificações
Os campos que devem estar definidos como Sim obrigatoriamente para que a rotina de recebimento de documentos eletrônicos esteja ativada são:
- Ativar recebimento, da guia NF-e > Geral da tela Configuração de Filial;
- Ativar recebimento, da guia CT-e > Geral da tela Configuração de Filial;
Além dos campos indicados acima, o campo Diretório e-mails, da guia Recebimento da tela Configuração de Empresa, também deve estar preenchido com um diretório acessível através do servidor do eDocs com as credenciais do usuário parametrizado para instanciar os serviços do eDocs.
Importante
Conforme definido no Manual do usuário, este diretório não pode conter mais de 248 caracteres, ou seja, o total de caracteres definido no campo Diretório e-mails não pode ser maior que 248 caracteres. Se isso ocorrer, vários problemas podem acontecer durante a execução do processo, ou a mesma pode, inclusive, não ser executada.
Existem dúvidas quanto à finalidade do campo Diretório e-mails. Ele é utilizado para armazenar os arquivos dos e-mails lidos pelo eDocs das caixas de entrada dos endereços de e-mails parametrizados na guia Recebimento da tela Configuração de Empresa. Estes arquivos de e-mails são arquivos com extensão .EML. Neste diretório não são armazenados os arquivos XML recebidos pelo eDocs, no entanto, dentro de cada arquivo .EML é possível encontrar os arquivos que o eDocs integrou ou tentou integrar.
Na imagem do Monitor é mostrado o diretório “C:\teste_email” como diretório definido para armazenamento dos arquivos de e-mails. Na imagem acima é mostrado o acesso ao diretório “C:\teste_email”, onde é possível identificar:
- Estrutura de pastas: o eDocs cria uma estrutura de pastas padrão para armazenamento dos arquivos .EML, seguinte a seguinte estrutura: “Diretório definido no Monitor > Servidor Pop/Imap > Domínio endereço e-mail > Usuário e-mail > Ano > Mês > Dia”.
- Arquivos .EML:acessando a pasta referente ao dia que o arquivo XML foi lido pelo eDocs, é possível acessar todos os arquivos .EML baixados da caixa de entrada do endereço de e-mail em questão. O arquivo .EML é salvo com nome indicando “Ano/Mês/Dia/Hora” da leitura do e-mail pelo eDocs, concatenado com um número inteiro equivalente aos segundos/milissegundos, concatenado com o título do e-mail. Desta forma, é fácil encontrar o arquivo .EML de um e-mail, quando há necessidade de efetuar a procura pelo mesmo.
- Arquivo .EML aberto: exibição de um arquivo .EML aberto através do aplicativo Microsoft Outlook 2010.
- Anexos do arquivo .EML: após abrir o arquivo .EML em um aplicativo que efetue a abertura deste tipo de arquivo, é possível visualizar os anexos encaminhados junto ao e-mail lido pelo eDocs. O eDocs apenas tentará integrar arquivos com extensão .XML. Arquivos com outras extensões serão ignorados.
O campo Diretório e-mails define o diretório onde os arquivos .EML dos e-mails recebidos pelo eDocs serão armazenados, no entanto existe um diretório onde o eDocs armazena os arquivos XML já extraídos dos arquivos .EML. Porém, para que o eDocs efetue o armazenamento destes arquivos é necessário que o parâmetro Armazenar XML processado em disco da tela Configuração > Geral do Monitor, esteja parametrizado como Sim.
Se o campo Diretório e-mails estiver ativado, o eDocs armazenará os arquivos XML processados (autorizados pela SEFAZ) tanto de emissão quanto de recebimento dentro da estrutura de diretórios de integração de cada filial.
O armazenamento dos arquivos XML em diretórios é opcional, pois o eDocs (desde a versão 5.7.2.1) efetua o armazenamento de todos os arquivos XML autorizados em seu banco de dados.
A imagem acima indica a pasta dentro do diretório de integração da filial onde o eDocs armazena os arquivos XML de NF-e recebidos e autorizados pela SEFAZ (quando o parâmetro Armazenar XML processado em disco estiver ativado). Sendo assim, podemos definir que o eDocs armazenará os arquivos XML de recebimento no seguinte caminho:
- NF-e: <Diretório_integração_filial>\Xml\<CNPJ_filial>\Nfe Recebimento;
- CT-e: <Diretório_integração_filial>\Xml\<CNPJ_filial>\Cte Recebimento.
Na pasta dos arquivos de NF-e também serão armazenados os arquivos XML referente as manifestações de destinatário geradas pela filial para uma NF-e de um fornecedor da mesma.
Para quem utiliza o Gestão Empresarial | ERP, é necessário configurar a Rotina 102 para que a importação dos documentos eletrônicos e dos retornos ocorra durante a integração dos sistemas. Esta rotina deve ser configurada na aba Rotina da tela F000AGE - Cadastro de Processo Automático.
1.1 - Parametrização de e-mails versus recebimento de documentos eletrônicos
A parametrização de e-mails para recebimento é efetuada no eDocs por Empresa. Cada filial parametrizada obrigatoriamente esta vinculada à uma empresa. Desta forma, só são recebidos arquivos XML por e-mail para determinada filial de uma determinada empresa se o XML for recebido através de um endereço de e-mail parametrizado para esta mesma empresa.
Para exemplificar melhor este conceito do sistema, vamos ter como base o seguinte cenário de cadastros (os CNPJs citados abaixo são inválidos e serão utilizados apenas para melhor entendimento da rotina):
Empresa | Filiais Vinculadas | E-mails cadastrados para a empresa |
---|---|---|
Empresa Comercio Ltda |
Filial Comercio Blumenau (CNPJ 99.999.999/0001-99) Filial Comercio São Paulo (CNPJ 88.888.888/0002-88) |
nfecomercio@provedoremail.com.br recebimentonfe@provedoremail.com.br |
Empresa Industria Ltda |
Filial Industria Florianópolis (CNPJ 77.777.777/0001-77) Filial Industria Campinas (CNPJ 66.666.666/0002-66) |
nfeindustria@provedoremail.com.br |
No cenário dos cadastros indicados acima, podemos ter os seguintes exemplos de recebimento de XMLs, indicando se o arquivo XML será recebido ou não por e-mail:
- Cenário 1: um arquivo XML de NF-e que tem como destinatário o CNPJ 99.999.999/0001-99 foi enviado para o e-mail nfecomercio@provedoremail.com.br. O XML esta apto a ser integrado no eDocs, pois o e-mail indicado está vinculado à mesma empresa a qual a filial de CNPJ 99.999.999/0001-99 está vinculada.
- Cenário 2: um arquivo XML de NF-e que tem como destinatário o CNPJ 77.777.777/0001-77 foi enviado para o e-mail nfecomercio@provedoremail.com.br. O XML não é integrado e gera uma crítica de integração, indicando que não foi encontrada uma filial cadastrada com o CNPJ 77.777.777/0001-77. Isso ocorre porque a filial com CNPJ 77.777.777/0001-77 não está vinculada à empresa onde o e-mail nfecomercio@provedoremail.com.br está cadastrado.
- Cenário 3: um arquivo XML de NF-e que tem como destinatário o CNPJ 88.888.888/0002-88 foi enviado para o e-mail nfeindustria@provedoremail.com.br. O XML não é integrado e gera uma crítica de integração, indicando que não foi encontrada uma filial cadastrada com o CNPJ 88.888.888/0002-88. Isso ocorre porque a filial com CNPJ 88.888.888/0002-88 não está vinculada à empresa onde o e-mail nfeindustria@provedoremail.com.br está cadastrado.
1.2 - Dicas sobre verificações quando a rotina de recebimento de e-mail não estiver sendo executada corretamente
Em algumas situações a rotina de recebimento de documentos eletrônicos por e-mail pode parar de ser executada no eDocs. Abaixo seguem algumas dicas de verificações a serem efetuadas e procedimentos a serem adotados para garantir o correto funcionamento da rotina.
Utilização de endereços de e-mail específicos:
Conforme informado no Manual do usuário, recomenda-se que as contas de e-mail utilizadas para recebimento de documentos eletrônicos sejam de uso exclusivo para o recebimento dos documentos. A utilização de contas não exclusivas pode acarretar problemas com a execução da rotina.
Verificações frequentes nas caixas de entrada dos e-mails:
Deve ser efetuada verificação frequente na caixa de entrada dos endereços de e-mail parametrizados no eDocs para recebimento de documentos. Qualquer e-mail que não possua anexos ou que possua anexos que não sejam arquivos .XML e que, por ventura, o eDocs não estiver conseguindo efetuar a leitura, devem ser eliminados da caixa de entrada. Lembrando que o eDocs só efetua leitura da caixa de entrada do e-mail.
Tempo de intervalo da execução do processo Recebimento Documentos
É recomendável que o tempo de intervalo do processo Recebimento Documentos, disponível na guia Avançado > Intervalo de Execução da tela Configuração Geral, seja de no mínimo 60 segundos. Caso o volume de documentos a serem recebidos seja muito alto, este tempo deve ser ajustado para mais que 60 segundos.
Utilização de conta de e-mail alternativa
Caso seja constatado que a rotina de recebimento não estiver sendo executada corretamente, por medida de testes (para descartar problemas com a rotina do eDocs), recomenda-se a parametrização de uma conta alternativa de e-mail no eDocs(eliminando temporariamente a parametrização das demais contas de e-mails). Após ter sido efetuada esta parametrização e os serviços do eDocs terem sido reiniciados, para efeito de teste, encaminhar os arquivos XML que eventualmente não estariam sendo integrados pelo eDocs para o endereço de e-mail da conta alternativa parametrizada, de forma que seja possível verificar se os mesmos seriam integrados normalmente.
Verificação de Log
Quando o eDocs não consegue efetuar a leitura do e-mail para tentar integrar um arquivo XML, não é gerada uma Crítica de Integração na tela Recebimento de NF-e. A crítica de integração só é gerada se o eDocs conseguir ler o e-mail e houver algum problema com o arquivo XML a ser integrado. Se o eDocs não conseguir ler o e-mail, é registrado um erro no log e não haverá registro de críticas de integração. Dica: é indicado, no caso do eDocs ser utilizado para vários processos, que, para verificar a mensagem exata gerada na integração de algum arquivo XML, seja parametrizada uma base de testes para integração do arquivo XML através de uma conta de e-mail específica, assim é possível identificar com exatidão uma eventual mensagem de erro.
Assinatura digital inválida
Em muitos casos um arquivo XML que deveria ser integrado no eDocs é registrado em Críticas de Integração com a mensagem A assinatura do documento não é valida. Isso ocorre porque o arquivo XML recebido por e-mail pelo eDocs realmente possui a assinatura digital inválida. Em vários casos a própria SEFAZ distribui um arquivo XML com assinatura digital inválida conforme definição de regras pré-estabelecidas pela mesma SEFAZ no manual do contribuinte (verificar tópico 3.2.1.3 Otimização na montagem do arquivo do Manual do Contribuinte).
Observações
A partir da versão 5.7.4.1 foi disponibilizada a opção Ativar validação da assinatura digital no recebimento de documentos, na guia Integração da tela Configuração de Empresa. Ao ter esta opção parametrizada como Não o eDocs não valida a assinatura de nenhum documento eletrônico recebido. Desta forma, é possível integrar arquivos XML que possuam problemas na assinatura.
O primeiro procedimento a ser tomado é entrar em contato com o fornecedor que enviou o arquivo XML solicitando que o mesmo envio o arquivo XML com a assinatura correta. Caso seja realmente necessária a integração do arquivo XML que possui erro na assinatura digital e tenha-se certeza de que o documento tem validade legal (não se trata de uma fraude), a opção Ativar validação da assinatura digital no recebimento de documentos deve ser utilizada. Isso se deve pelo fato de que, a assinatura digital de um documento eletrônico é o que prova de que o documento é legal e não foi alterado por nenhum processo após ter sido Autorizado pela SEFAZ.
Indicamos que, ao serem integrados os documentos que precisam ser integrados sem a validação da assinatura, que o parâmetro Ativar validação da assinatura digital no recebimento de documentos seja novamente alterado para Sim, evitando assim que documentos eletrônicos fraudados sejam integrados.
O validador de XML da SEFAZ muitas vezes considera como válido um XML que possui problemas com sua assinatura digital. Para confirmar se a assinatura digital é válida, verifique as informações do tópico Validador de assinatura digital presente no guia informativo.
Podem existir situações em que já foi visto com o fornecedor que o arquivo está correto. Neste caso, sugerimos baixar o XML direto pelo site da SEFAZ e verificar:
- se a SEFAZ está distribuindo o arquivo incorreto com a assinatura Inválida, é necessário verificar com a SEFAZ;
- se a SEFAZ está distribuindo o arquivo correto e o fornecedor com a assinatura inválida, é necessário verificar com o fornecedor que enviou este XML, pois o arquivo não está de acordo com o manual do contribuinte.
Exclusão de e-mails inválidos
A partir da versão 5.8.4.1 houve uma implementação disponibilizada para que, quando o conteúdo de uma mensagem de e-mail seja considerado inválido, o eDocs exclua este e-mail da caixa de entrada configurada para recebimento. Seguem informações completas sobre esta implementação presentes no arquivo de novidades da versão 5.8.4.1:
Recebimento de mensagens inválidas
A rotina de recebimento de documentos eletrônicos por e-mail, foi ajustada para excluir da caixa de entrada configurada para recebimento, mensagens com o conteúdo inválido e salvá-las no diretório de e-mail, com o formato .EML. Anteriomente, quando um e-mail possuía um arquivo inválido ou um arquivo que não era considerado válido para recebimento, o e-mail não era excluído da caixa de entrada e era gerada a seguinte mensagem no log do sistema: "ERROR Senior.SapiensNfe.Processos.Service.Documento.RecebimentoDocumento - Erro ao receber e-mail, mensagem ignorada, realizando o recebimento do próximo e-mail.
1.3 - Efetuando testes de recebimento de documentos em ambiente de testes/homologação
Em eventuais situações em que o recebimento não está ocorrendo no ambiente de produção, podem ser executados testes em ambiente de testes/homologação para verificar se o recebimento do documento é efetuado com sucesso. Para efetuar este processo, é necessário:
- possuir ambiente de testes/homologação ativo e parametrizado com a filial que efetua o recebimento do documento eletrônico;
- possuir o arquivo XML que é enviado para o e-mail de recebimento cadastrado;
- certificado digital para realização da consulta do documento (opcional, dependendo do teste a ser executado);
- a mesma licença do ambiente de produção deve ser aplicada no ambiente de testes/homologação;
- dependendo da situação, deve ser utilizada uma conta de e-mail no mesmo servidor de e-mail que originalmente recebe os arquivos XMLs;
- dependendo da situação, o emitente do documento eletrônico deve enviar o e-mail diretamente para o endereço de e-mail utilizado no ambiente de testes/homologação (esta situação geralmente é necessária para verificar problemas de incompatibilidade do eDocs com alguns formatos de e-mail utilizados pelo emitente do documento eletrônico);
Importante
O certificado digital é utilizado apenas para a consulta da situação do documento eletrônico junto à SEFAZ. Caso o problema a ser testado tem a ver apenas com a integração do arquivo XML no eDocs, o certificado digital não é necessário.
O certificado digital pode ser qualquer certificado digital válido e compatível com o eDocs, pois a SEFAZ não efetua validação do CNPJ que está vinculado ao certificado digital com o CNPJ do destinatário do documento que será consultado.
Caso não haja um ambiente de testes/homologação ativo, o processo de criação de uma nova instalação do eDocs (incluindo a criação de uma nova base de dados), com o posterior cadastramento da Filial, configuração do certificado digital e aplicação da licença no sistema leva cerca de 30 minutos.
Abaixo segue o passo-a-passo a ser seguido para efetuar o teste de recebimento do arquivo XML via e-mail:
- Confira a parametrização do e-mail para recebimento e um diretório para os arquivos .EML
Na tela guia Recebimento da tela Configuração de Empresa, é necessário conferir a parametrização de um e-mail para recebimento e de um diretório em que os arquivos .EML serão salvos. Pode-se utilizar o botão Testar conexão na tela de parametrização da conta de e-mail pode ser utilizado para garantir que a comunicação do DE com a conta de e-mail está correta.
Importante
Não se deve utilizar a mesma conta de e-mail parametrizada para recebimento no ambiente de produção no teste que é realizado no ambiente de testes/homologação, pois o eDocs sempre exclui os e-mails da caixa de entrada do endereço de e-mail parametrizado, desta forma, o ambiente de produção pode não receber arquivos XML que deveria estar recebendo.
Indica-se a criação de uma conta de e-mail exclusiva para os testes, onde esta conta seja utilizada somente no pelo eDocs neste ambiente de testes/homologação.
- Identifique o ambiente no qual o documento foi autorizado e parametrizar o ambiente de testes/homologação adequadamente
Na maioria das vezes, o teste envolve documentos eletrônicos que foram autorizados no ambiente de produção da SEFAZ. No entanto, em algumas situações, pode ser necessário o teste de recebimento com um documento autorizado no ambiente de homologação.
Desta forma, é necessário identificar em qual ambiente da SEFAZ o arquivo XML foi autorizado. No XML de NF-e e CT-e a tag <tpAmb> indica se o arquivo foi autorizado no ambiente de produção ou no ambiente de homologação. Quando a tag <tpAmb> está preenchida como 1 indica que o arquivo foi autorizado no ambiente de produção da SEFAZ, e quando a tag está preenchida como 2 indica que o arquivo foi autorizado no ambiente de homologação da SEFAZ.
Abaixo segue imagem da visualização do arquivo XML de uma NF-e, destacando a tag <tpAmb> preenchida como 1
.
Com base no tipo de ambiente definido no arquivo XML que é utilizado no teste de recebimento, é necessário parametrizar o ambiente no eDocs do ambiente de testes/homologação. Esta parametrização é realizada através do campo Ambiente, da tela Configuração Geral.
Importante
Antes de ser parametrizado o eDocs do ambiente de testes/homologação para passar a utilizar o ambiente de produção, é necessário ter certeza de que não existem nenhum registro pendente de envio para SEFAZ/Prefeitura para todas as filiais cadastradas na base de dados. Caso exista algum registro pendente de envio, por exemplo, o eDocs do ambiente de testes/homologação pode enviar o registro para o ambiente de produção, fazendo com que um registro seja autorizado no ambiente de Produção da SEFAZ/Prefeitura através do ambiente de homologação.
Uma forma de garantir de que não haja registros pendentes de envio para a SEFAZ/Prefeitura no ambiente de homologação é criar uma base de dados nova para a realização do teste.
- Acesse a caixa de entrada do endereço de e-mail parametrizado para o recebimento no ambiente de testes/homologação
O acesso à caixa de entrada do endereço de e-mail parametrizado para recebimento no ambiente de testes/homologação, serve para monitorar quando o e-mail é consumido pelo eDocs, para que então tenha-se certeza de que o eDocs acionou a rotina de recebimento, onde o arquivo XML deveria ser então registrado na base de dados do eDocs (ou então, seja gerada alguma mensagem de erro de integração no log).
O acesso é indicado ser realizado através de uma ferramenta de Webmail, para garantir que nenhum aplicativo efetue o download e exclusão do e-mail que será recebido.
- Ative o serviço do eDocs do ambiente de testes/homologação, enviar o arquivo XML por e-mail e acompanhar a integração do documento
Após terem sido efetuadas as parametrizações citadas nos passos anteriores e ter sido feito o acesso à caixa de entrada do endereço de e-mail parametrizado para o teste, é necessário:
- ative o serviço do eDocs do ambiente de testes/homologação (caso ele já esteja ativado, o ideal é reiniciá-lo para garantir que o sistema esteja utilizando as parametrizações que foram aplicadas no Monitor);
- envie o arquivo XML do documento eletrônico para o endereço de e-mail parametrizado para recebimento no ambiente de testes/homologação;
- acompanhe o registro do novo e-mail na caixa de entrada do endereço de e-mail através do Webmail que foi acessado;
- verifique que, quando a rotina de recebimento for executada pelo eDocs do ambiente de testes/homologação, o e-mail é excluído da caixa de entrada do e-mail utilizado para o recebimento;
- verifique se o arquivo XML foi integrado com sucesso na base de dados do eDocs ou se houve algum registro de erro no Log.
Observação
Quando o teste que está sendo realizado diz respeito especificamente ao problema de um documento eletrônico que não é integrado ao eDocs pela rotina de recebimento, então neste passo do processo o documento não seria integrado, gerando o mesmo problema que estaria ocorrendo no ambiente de produção.
É indicada a limpeza dos logs do eDocs antes da realização dos testes (ou, pelo menos, mover os logs antigos para uma outra pasta). Desta forma, no momento da verificação de eventuais erros gerados no log, existirão menos informações a serem analisadas.
Em algumas ocasiões, é necessário solicitar o reenvio do arquivo XML para o endereço de e-mail parametrizado para recebimento no ambiente de testes/homologação diretamente ao emitente do documento eletrônico. Isso porque o emitente pode utilizar formatos de e-mail que não são atualmente compatíveis com o eDocs, desta forma, um eventual problema de integração do arquivo XML seria simulado somente fazendo este processo.
Dica
É indicada a limpeza dos logs do eDocs antes da realização dos testes (ou, pelo menos, mover os logs antigos para uma outra pasta). Desta forma, no momento da verificação de eventuais erros gerados no log, existirão menos informações a serem analisadas.
Eventualmente, pode ser ativado o log em modo DEBUG para identificar problemas de integração do arquivo XML que não são exibidos no log quando o nível está definido como WARN.
- Identifique se o documento eletrônico foi registrado na base de dados e consultado com sucesso na SEFAZ
Caso o problema que está sendo analisado não é na integração do documento eletrônico na base de dados, mas seja em um processo realizado pelo sistema em seguida (exemplo: consulta do documento na SEFAZ), então é necessário identificar se o documento eletrônico foi registrado na base de dados e teve sua situação consultada com sucesso na SEFAZ. A verificação dos registros dos documentos eletrônicos pode ser efetuada nas telas de recebimento de NF-e ou CT-e.
Importante
A consulta dos documentos eletrônicos somente é executada se a filial que recebeu o documento eletrônico possuir um certificado digital cadastrado e válido (o certificado digital pode estar cadastrado na empresa a qual a filial esteja ligada).