Odoo Community Association

Monitor de NF-e

Beta License: AGPL-3 OCA/l10n-brazil Translate me on Weblate Try me on Runboat

Monitor de NF-e (Distribuição de DFe)

Este módulo implementa a funcionalidade de monitoramento, download e processamento automático de Notas Fiscais Eletrônicas (NF-e, modelo 55) emitidas contra o CNPJ da sua empresa. Ele opera conectando-se diretamente ao Web Service de Distribuição de DF-e da SEFAZ (Ambiente Nacional).

Este módulo estende o framework abstrato genérico l10n_br_fiscal_dfe e incorpora as necessidades e especificidades exclusivas aplicadas à Nota Fiscal Eletrônica (como Manifestação do Destinatário e os schemas XML da NF-e).

Principais Funcionalidades

  • Consulta Automática (Polling): Tarefa agendada (Cron) que consulta periodicamente o serviço da SEFAZ, garantindo que você tenha acesso rápido a todas as NF-es emitidas contra o seu CNPJ sem precisar solicitar o arquivo ao fornecedor.
  • Processamento Especializado: Identifica e separa os payloads baixados nos seus devidos formatos: XMLs Completos com protocolo (procNFe), Resumos da NF-e (resNFe) e Eventos da Nota Fiscal (resEvento / procEventoNFe).
  • Manifestação do Destinatário (MD-e): Funcionalidade nativa para acusar o recebimento ou rejeição da NF-e perante a SEFAZ:
    • Ciência da Operação: Confirmação prévia para liberar o download do XML completo.
    • Confirmação da Operação.
    • Desconhecimento da Operação.
    • Operação não Realizada.
  • Manifestação Automática: Opção para o Odoo aplicar o evento de “Ciência da Operação” instantânea e automaticamente a todas as novas notas resumidas identificadas, acelerando o recebimento do arquivo completo para importação.
  • Importação Inteligente: Botão de ação que converte instantaneamente o XML válido baixado em um rascunho de Documento Fiscal padrão do Odoo (l10n_br_fiscal.document), pré-populando os impostos, CFOPs, emitentes e destinatários.
  • Geração de DANFE: Geração do documento PDF do DANFE utilizando a biblioteca brazilfiscalreport.
  • Notificações: Notifica os usuários inscritos, diretamente no inbox do Odoo, caso novas NF-es emitidas por terceiros sejam detectadas no servidor da Receita Federal.

Este módulo é implementado em estrita conformidade com a Nota Técnica 2014.002 v1.30.

Table of contents

Installation

Este módulo requer os seguintes componentes e dependências para funcionar corretamente:

  1. Dependências Odoo:
    • l10n_br_fiscal_dfe (O framework de distribuição abstrato da OCA)
    • l10n_br_nfe (O módulo base de emissão e gestão de modelos da NF-e)
    • queue_job (Sempre requerido pelo framework base para agendamentos e chamadas assíncronas)
  2. Dependências Python:
    • nfelib: A biblioteca moderna que consolida os bindings e clientes de comunicação para NF-e/CT-e/MDF-e.
    • brazilfiscalreport: Necessária para realizar o parse do XML e desenhar a saída em formato PDF (DANFE).

Para instalar as bibliotecas de sistema Python:

pip install nfelib brazilfiscalreport

Configuração Pré-Requisito Obrigatória

A SEFAZ bloqueia e rejeita as chamadas aos Web Services caso sua empresa não esteja perfeitamente configurada no Odoo. Antes de rodar as consultas:

  1. Acesse o cadastro de Empresas e preencha corretamente o Estado (UF) e o CNPJ/CPF (somente numéricos ou formatado).
  2. Na aba Fiscal -> Certificados, faça o upload e valide o Certificado Digital A1 com a senha correta. Este certificado será utilizado ativamente pelo módulo para a troca de chaves com o Ambiente Nacional da SEFAZ.

Configuration

Canal queue_job

O módulo registra os jobs de distribuição DF-e no canal root.dfe. É obrigatório configurar este canal com capacidade máxima de 1 job simultâneo, caso contrário consultas concorrentes à SEFAZ podem causar erro 656 (consumo indevido) e bloqueio temporário do CNPJ.

No arquivo de configuração do Odoo:

[queue_job]
channels = root:2,root.dfe:1

Ou via variável de ambiente:

ODOO_QUEUE_JOB_CHANNELS=root:2,root.dfe:1

Configuração da empresa

Em Faturamento > Configuração > Empresas, na aba Fiscal > DF-e (Configurações DF-e):

  • Versão DF-e: versão do serviço (padrão: 1.01)
  • Ambiente DF-e: Produção ou Homologação
  • Busca automática de DF-e: habilita a consulta automática via cron
  • Manifestação Automática do Destinatário (NF-e): envia ciência da operação automaticamente para cada resumo de NF-e recebido

A empresa precisa ter um certificado digital A1 configurado no módulo l10n_br_fiscal_certificate.

Notificação de documentos (por usuário)

Em Preferências do Usuário, o campo Notificação DF-e habilita o recebimento de notificações na caixa de entrada quando novos documentos de terceiros são encontrados pela distribuição DF-e.

Usage

Configuração

Para habilitar a busca e o processamento automático de notas:

  1. Acesse Configurações > Usuários e Empresas > Empresas.
  2. Abra o cadastro da sua empresa e localize a aba ou seção NF-e DF-e.
  3. Marque a opção Auto-fetch NF-e para que o Odoo realize as consultas periódicas de forma agendada em background.
  4. Opcionalmente, ative a Manifestação Automática caso queira que o sistema registre o evento de “Ciência da Operação” automaticamente assim que a SEFAZ alertar sobre a existência de uma nota nova. Isso acelera significativamente a liberação do XML completo para download.

Painel de Controle (Dashboard)

Acesse a visão principal navegando por Faturamento > Fiscal > Consultas DF-e > NF-e de Terceiros.

No topo da listagem, o sistema exibe um painel de status em tempo real da sua comunicação com a SEFAZ:

  • Status do Ambiente: Indica se você está operando em Produção ou Homologação.
  • Progresso do NSU: Mostra a numeração em que o seu Odoo está (Último NSU) comparado ao NSU máximo registrado na base da Receita Federal para o seu CNPJ. Quando os números se igualam, a tag verde “Sincronizado” é exibida.
  • Importações Pendentes: Um contador de alerta que mostra quantas notas completas já foram baixadas em XML, mas ainda não foram efetivamente importadas como Documentos Fiscais no Odoo.

Fluxo de Trabalho e Ações Disponíveis

Ao clicar em um documento na listagem, você poderá identificar a sua situação através das cores (Azul para Resumo, Verde para XML Completo). O fluxo padrão permite as seguintes ações:

  1. Manifestar: Botão que abre o assistente para você enviar oficialmente um evento à SEFAZ (Ciência, Confirmação, Desconhecimento ou Operação Não Realizada). Lembre-se: por regras da SEFAZ, o XML completo com validade jurídica (procNFe) só é liberado para download após uma manifestação de Ciência ou Confirmação.
  2. Importar como Documento Fiscal: Disponível apenas quando o XML completo já foi baixado. Este botão converte o XML imediatamente em um registro de l10n_br_fiscal.document, preenchendo automaticamente os fornecedores, CFOPs e valores para uso nos módulos de compras e estoque.
  3. Download PDF: Utiliza os dados do XML para gerar e baixar o arquivo PDF do DANFE.
  4. Pesquisa Específica: No painel superior das listagens, você encontra o assistente de busca específica. Ele permite pular o sequencial de NSU e forçar a requisição pontual de uma NF-e utilizando apenas a sua Chave de Acesso (44 dígitos), ideal para notas de recebimento urgente.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Engenere
  • KMEE
  • Akretion

Contributors

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainers:

felipemotter antoniospneto rvalyi

This module is part of the OCA/l10n-brazil project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.