MÓDULO: Emissão de Nota Fiscal Eletrônica (NFe/NFC-e)
1. Visão Geral
Este módulo controla a emissão fiscal eletrônica do ERP/PDV, incluindo geração de XML, validação, envio para SEFAZ, impressão de DANFE, cancelamento, inutilização, consulta de status e envio por e-mail. No código, a operação está distribuída principalmente em FORMS/notasfiscais.SCT, FORMS/nfe.SCT, FORMS/nfce.SCT, FORMS/nfe_controle.SCT e PRGS/dllnfc.prg.
2. Funcionalidades Disponíveis
Emissão de NFe
Objetivo
Gerar e autorizar NFe a partir de venda/movimentação, gravando retorno fiscal e chave de acesso.
Quando Utilizar
Quando a operação exigir Nota Fiscal Eletrônica modelo 55.
Pré-requisitos
- Configuração fiscal existente (
CONFIG.NFE, dados da empresa). - Certificado digital válido (
VALNFE.CER). - Cliente válido e ativo.
- CFOP/Natureza de operação definidos.
- Produtos com NCM e dados fiscais válidos.
Passo a Passo Operacional
- Abrir tela de emissão (
notasfiscais.SCT/nfe.SCT). - Informar cliente, natureza da operação e dados da nota.
- Inserir itens (produto, quantidade, valor, CFOP/tributação).
- Confirmar emissão e impressão.
- Sistema monta arquivo de envio, chama ACBr (
NFe.CriarEnviarNFeSefaz), lêRESPNFE.TXTe processa retorno. - Em sucesso, grava dados no cadastro fiscal e imprime DANFE.
Campos da Tela
- Número da nota (
NRONOT), data emissão (DATEMI), cliente (CODCLI,NOMCLI). - Natureza (
NATNFE), valor total (VALNFE), chave (CHAVEA), recibo (RECIBO). - Status de retorno (
RETORNO), cancelamento (CANCELADA), impressão (IMPOK). - Campos de item/fiscal usados no processo: CFOP, NCM, ICMS, IPI, PIS, COFINS.
Regras de Negócio Aplicáveis
- Exige CFOP configurado para emissão.
- Valida CSOSN/CFOP especial conforme configuração fiscal.
- Bloqueia emissão com NCM inválido/ausente.
- Falha de comunicação com SEFAZ bloqueia conclusão.
Possíveis Erros e Soluções
- “Informe o CFOP…”: configurar CFOP da empresa/operação.
- “Cliente inativo”: ativar cliente ou selecionar outro.
- “O NCM do produto está…”: corrigir NCM no cadastro de produto.
- “Não consegue se comunicar com a SEFAZ”: validar ACBr, internet e serviço SEFAZ.
- “Número duplicado na base da SEFAZ”: ajustar numeração e reenviar.
Tabelas Envolvidas
CADNFE.DBF(controle principal de NFe).nfeold.DBF(base legado relacionada no mapeamento).- Tabela de clientes (alias
A30, usada na carga do destinatário). - Tabela de natureza de operação (alias
NATOPE).
Palavras-chave Relacionadas
- emitir nfe
- gerar nota fiscal
- nota eletrônica de saída
- nfe modelo 55
- criar xml da nfe
Emissão de NFC-e (Online e Contingência)
Objetivo
Emitir NFC-e no PDV com geração de XML, autorização e impressão do DANFE NFC-e.
Quando Utilizar
Em venda de balcão/consumidor final com documento fiscal eletrônico modelo 65.
Pré-requisitos
- Configuração fiscal e ACBr válidos.
- Certificado digital válido.
- Numeração NFC-e (
NRONFCE) disponível. - Dados de cliente/CPF-CNPJ válidos quando informados.
Passo a Passo Operacional
- Abrir emissão de NFC-e (
nfce.SCT) ou iniciar pela venda. - Informar/validar CPF ou CNPJ do consumidor.
- Gerar arquivo fiscal da nota.
- Executar pipeline: criar XML, assinar, validar, enviar.
- Processar retorno (
RESPNFE.TXT) e gravar dados da NFC-e. - Imprimir DANFE NFC-e.
- Em contingência, gerar XML offline e salvar para envio posterior em
XML_OFFLINE.
Campos da Tela
- Número (
NRONOT), série (SERNOT), chave (CHAVNF), data (DATEMI). - Valor documento (
VL_DOC), descontos/abatimentos (VLDESC,VLABAT). - Documento consumidor (
CPFCGC) e nome (NOMCLI). - Código/retorno SEFAZ (
CODRET,RETORNO), recibo (RECIBO), cancelada (CANCELADA).
Regras de Negócio Aplicáveis
- Pipeline fiscal obrigatório: criar, assinar, validar e enviar XML.
- Tratamento de duplicidade e lote em processamento.
- Em falha online, pode salvar XML para contingência/offline.
Possíveis Erros e Soluções
- “Documento inválido” / “CPF/CNPJ inválido”: corrigir documento.
- “Cliente inativo”: regularizar cadastro.
- “XML inválido”: revisar dados fiscais do item e empresa.
- “Lote em processamento”: aguardar e reenviar.
- “ERRO NFCe 3.x / 4.x”: revisar retorno ACBr e tentar nova impressão/envio.
Tabelas Envolvidas
CADNCE.DBF(controle de NFC-e).CADNFE.DBF(relacionamento porCODCLI/NRONOT).- Tabela de clientes (alias
A30, para identificação do consumidor).
Palavras-chave Relacionadas
- emitir nfce
- cupom fiscal eletrônico
- nfce online
- nfce contingência
- danfe nfce
Cancelamento de NFe
Objetivo
Cancelar NFe autorizada junto à SEFAZ e atualizar status interno.
Quando Utilizar
Quando uma NFe emitida precisar ser anulada dentro das regras fiscais.
Pré-requisitos
- Chave de acesso e protocolo da NFe.
- Motivo de cancelamento com no mínimo 15 caracteres.
- Comunicação ativa com ACBr/SEFAZ.
Passo a Passo Operacional
- Abrir rotina de cancelamento (
cancelanfe.SCTou tela de cancelamento emnfe_controle.SCT). - Informar nota/chave e motivo.
- Confirmar a operação.
- Sistema envia
NFE.CancelarNFe(...)e lê retorno do webservice. - Em sucesso, marca nota como cancelada.
- Sistema orienta estorno da movimentação comercial quando necessário.
Campos da Tela
- Número da nota (
NRONOT). - Chave de acesso (
CHAVEA). - Motivo do cancelamento (
txMotivo). - Retorno/status (
RETORNO,CANCELADA).
Regras de Negócio Aplicáveis
- Motivo mínimo de 15 caracteres.
- Exige confirmação explícita do usuário.
- Cancelamento fiscal não substitui estorno comercial da venda.
Possíveis Erros e Soluções
- “Motivo … mínimo 15 dígitos”: completar justificativa.
- “Não foi possível confirmar cancelamento na SEFAZ”: tentar consulta posterior e validar webservice.
- “Problemas com webservice”: verificar ACBr/conectividade.
Tabelas Envolvidas
CADNFE.DBF.nfeold.DBF(legado, quando aplicável).
Palavras-chave Relacionadas
- cancelar nfe
- estornar nota fiscal
- motivo cancelamento nfe
- evento de cancelamento
Cancelamento de NFC-e
Objetivo
Cancelar NFC-e emitida e registrar retorno do evento.
Quando Utilizar
Quando uma venda com NFC-e autorizada precisar ser cancelada.
Pré-requisitos
- Chave e protocolo da NFC-e.
- Motivo de cancelamento (mínimo 15 caracteres).
Passo a Passo Operacional
- Abrir
cancela_nfce.SCT. - Informar motivo e confirmar cancelamento.
- Sistema prepara/manda XML de cancelamento.
- Processa retorno e registra situação da nota.
- Exibe orientação para estorno da venda no módulo comercial.
Campos da Tela
- Chave da NFC-e (
TXCHAVE). - Protocolo (
TXPROT/campo equivalente de autorização). - Motivo (
TXMOTIVO). - Status de retorno (
RETORNO,CANCELADA).
Regras de Negócio Aplicáveis
- Motivo obrigatório com mínimo de 15 caracteres.
- Exige confirmação antes do envio.
Possíveis Erros e Soluções
- “Motivo … mínimo 15 dígitos”: ajustar texto.
- “Não foi possível confirmar o cancelamento na SEFAZ”: consultar novamente e validar retorno.
- “Problemas com webservice”: revisar ACBr e conexão.
Tabelas Envolvidas
CADNCE.DBF.CADNFE.DBF(em fluxos integrados de controle).
Palavras-chave Relacionadas
- cancelar nfce
- cancelar cupom eletrônico
- motivo cancelamento nfce
Inutilização de Numeração (NFe/NFC-e)
Objetivo
Inutilizar faixa de numeração fiscal não utilizada.
Quando Utilizar
Quando houver quebra de sequência de numeração por falha/aborto de emissão.
Pré-requisitos
- CNPJ da empresa válido.
- Série/modelo corretos (55 NFe, 65 NFC-e).
- Motivo com no mínimo 15 caracteres.
Passo a Passo Operacional
- Abrir
inutilizanfe.SCT(NFe) ouinutiliza_nfce.SCT(NFC-e). - Informar faixa numérica, série e motivo.
- Confirmar inutilização.
- Sistema envia
NFE.InutilizarNFe(...). - Lê retorno, grava protocolo e status “INUTILIZADA”.
Campos da Tela
- Número inicial/final da faixa.
- Série.
- Motivo de inutilização.
- Retorno/protocolo de inutilização.
Regras de Negócio Aplicáveis
- Motivo mínimo de 15 caracteres.
- Atualiza status fiscal para “INUTILIZADA”.
Possíveis Erros e Soluções
- “Motivo … mínimo 15 dígitos”: preencher justificativa completa.
- “Problemas com webservice”: validar ambiente/ACBr.
- “CNPJ da empresa está…”: corrigir cadastro da empresa.
Tabelas Envolvidas
CADNFE.DBF.CADNCE.DBF(cenários NFC-e).
Palavras-chave Relacionadas
- inutilizar nfe
- inutilizar nfce
- pular número nota
- inutilização sefaz
Reimpressão de DANFE (NFe)
Objetivo
Reimprimir DANFE a partir do XML autorizado.
Quando Utilizar
Quando precisar segunda via impressa do DANFE.
Pré-requisitos
- XML da NFe disponível na pasta de enviadas.
- Configuração de NFe válida.
Passo a Passo Operacional
- Abrir
reimprimenfe.SCTou botão “Re Imprimir” nonfe_controle.SCT. - Selecionar/informar XML da nota.
- Executar comando de impressão DANFE.
- Validar retorno de impressão.
Campos da Tela
- Arquivo XML da nota.
- Chave da NFe.
- Mensagem de retorno da impressão.
Regras de Negócio Aplicáveis
- Sem XML da nota, a reimpressão é bloqueada.
Possíveis Erros e Soluções
- “XML da NFe não encontrado”: localizar XML em
NFe_Enviadas. - “Falha na reimpressão”: verificar ACBr/driver de impressão.
- “Falta configurar a NFe”: revisar
CONFIG.NFE.
Tabelas Envolvidas
CADNFE.DBF(consulta de chave/número).
Palavras-chave Relacionadas
- reimprimir danfe
- segunda via nfe
- imprimir xml nfe
Carta de Correção Eletrônica (CC-e)
Objetivo
Registrar e enviar evento de carta de correção vinculado a NFe autorizada.
Quando Utilizar
Para corrigir informações permitidas pela legislação, sem cancelamento da nota.
Pré-requisitos
- NFe autorizada com chave válida.
- Sequência de evento informada.
- Texto de correção com tamanho mínimo exigido (mensagem indica mínimo de 15 caracteres).
Passo a Passo Operacional
- Abrir rotina de CC-e no gerenciador (
nfe_controle.SCT/nfe_cartacorrecao.SCT). - Informar sequência e texto da correção.
- Enviar evento para SEFAZ.
- Gravar XML do evento e retorno.
- Reimprimir evento ou enviar por e-mail quando necessário.
Campos da Tela
- Número da nota (
NRONOT). - Chave da NFe (
CHAVEA). - Sequência do evento (
SEQEVE). - Texto da correção (
TXTCCE). - XML da NFe e XML da CC-e (
XMLNFE,XMLCCE).
Regras de Negócio Aplicáveis
- Exige sequência e texto mínimo para envio.
- Depende do XML da NFe para impressão completa do evento.
Possíveis Erros e Soluções
- “Digite a sequência da CC-e”: preencher sequencial.
- “Digite pelo menos 15 caracteres”: completar texto da carta.
- “Não encontrou XML da carta de correção”: validar diretórios e geração do evento.
Tabelas Envolvidas
- Tabela de cartas (
CCE, acessada no código viaSELECT CCE...). CADNFE.DBFpara vínculo da nota/chave.
Palavras-chave Relacionadas
- carta de correção
- cce nfe
- corrigir nota sem cancelar
- evento cce
Consulta e Monitoramento Fiscal (Gerenciador)
Objetivo
Consultar situação das notas, status SEFAZ, retornos e operações auxiliares (reenviar, atualizar base, gerar PDF, envio de XML/e-mail).
Quando Utilizar
Para auditoria operacional, suporte e tratamento de notas rejeitadas/pendentes.
Pré-requisitos
- Base fiscal acessível.
- ACBr configurado.
Passo a Passo Operacional
- Abrir
nfe_controle.SCT. - Filtrar por período/cliente/situação.
- Consultar nota (
NFE.ConsultarNFe) ou status do serviço (NFE.STATUSSERVICO). - Executar ação necessária: reimpressão, PDF, reenvio, e-mail, cancelamento ou inutilização.
Campos da Tela
- Situação/retorno (
RETORNO,CANCELADA). - Número (
NRONOT), data (DATEMI), cliente (NOMCLI), valor (VALNFE), natureza (NATNFE), chave (CHAVEA).
Regras de Negócio Aplicáveis
- Dependência de comunicação com webservice SEFAZ.
- Sem XML/arquivo base, ações de consulta/reimpressão/envio podem ser bloqueadas.
Possíveis Erros e Soluções
- “Problemas com webservice”: validar ambiente e conectividade.
- “XML para envio corrompido”: regenerar arquivo fiscal.
- “Falta configurar dados de email”: preencher parâmetros SMTP.
Tabelas Envolvidas
CADNFE.DBF.CADNCE.DBF.nfeold.DBF(consultas legadas).
Palavras-chave Relacionadas
- gerenciar nfe
- consulta nfe
- status sefaz
- notas rejeitadas
- reenviar xml