📅 Data de publicação: 03/02/2026
👤 Autor: Fabrizio Augusto Ventavolo
🎯 Objetivo
Garantir que a exclusão do Documento de Saída pela rotina MATA521 só seja liberada quando a nota estiver apta ao cancelamento no órgão responsável (SEFAZ para NFe modelo 55 e Prefeitura para NFSe), evitando divergências entre o Protheus e o status fiscal.
🧠 O que é o JOB FATJOBNFE?
O FATJOBNFE é um JOB que executa validações antes da exclusão do documento. Ele consulta o status de transmissão da NFe/NFSe e, com base nisso, permite ou bloqueia a exclusão do Documento de Saída na MATA521.
✅ Resultado esperado: evitar que o ERP exclua documentos que não poderiam ser cancelados no ambiente fiscal.
⚠️ Cuidados e boas práticas
🛑 Este conteúdo é apoio técnico. Suporte não orienta implementação.
✅ Recomenda-se analista especializado, com implantação e homologação antes de produção.
🧪 Fluxo recomendado:
Homologação (ambiente atualizado, testes controlados)
Produção (backup preventivo + janela de execução)
✅ Ativação para 1 empresa e 1 filial
1) 🧩 Parâmetro conforme tipo de nota
📌 NFe (Modelo 55):
MV_CANCNFE = .T.
📌 NFSe (Serviço):
MV_CANNFSE = .T.
2) ⚙️ Configuração do JOB no appserver.ini
Adicione no appserver.ini:
[ONSTART] JOBS=FatJobNFe_<empresa><filial> [FatJobNFe_<empresa><filial>] MAIN=FatJobNFe ENVIRONMENT=<ambiente de trabalho> nParms=2 parm1=<Empresa> parm2=<Filial> START_TIME=00:00:01 FINISH_TIME=23:59:59 INTERVAL=5 ACTIVATE=ON
📌 Dica: mantenha o padrão do identificador FatJobNFe_<empresa><filial> consistente com os códigos usados no seu ambiente.
🏢 Cenário com múltiplas filiais ou Gestão de Empresas
Se houver mais de uma filial ou Gestão de Empresas, além do parâmetro habilitado, é necessário replicar/adequar a configuração do JOB para cada contexto de execução (empresa/filial), garantindo que a validação ocorra onde o documento é gerado e cancelado.
✅ Recomendações de validação em homologação:
Emissão de NFe/NFSe
Tentativa de cancelamento
Consulta de status
Tentativa de exclusão via MATA521 (liberando/bloqueando conforme status)
🧾 Observações específicas para NFSe
🔎 A estrutura do JOB é a mesma, mas a habilitação é pelo parâmetro:
MV_CANNFSE = .T.
⚠️ Se a prefeitura não possuir serviço de cancelamento, não haverá transmissão de cancelamento — e nesse cenário, a rotina pode não conseguir concluir o fluxo fiscal, mesmo com o parâmetro habilitado.
🧩 Nota de versão: UpdFATNFE.PRX
✅ Versão 11: o fonte
UpdFATNFE.PRXera necessário.✅ Versão 12 em diante: não é mais necessário, bastando as configurações de parâmetros e JOB no ambiente.
✅ Encerramento
Com o JOB FATJOBNFE ativo, o Protheus adiciona uma validação crítica para assegurar que a exclusão via MATA521 respeite a situação fiscal da nota, reduzindo riscos de inconsistência e problemas de conformidade.
❓ FAQ
1) O JOB FATJOBNFE cancela automaticamente a nota?
Não. Ele controla/valida o processo, exigindo a consulta do status e garantindo que a exclusão só ocorra quando a nota estiver apta ao cancelamento.
2) Qual parâmetro devo usar: MV_CANCNFE ou MV_CANNFSE?
NFe (modelo 55):
MV_CANCNFENFSe (serviço):
MV_CANNFSE
3) Posso ativar direto em produção?
Não é recomendado. O ideal é homologar primeiro e só então replicar para produção com backup e janela controlada.
4) Em NFSe, por que pode não funcionar mesmo com o parâmetro habilitado?
Porque depende do município/prefeitura oferecer o serviço de cancelamento. Sem esse serviço, não há transmissão do cancelamento.
5) Em que rotina a validação impacta diretamente?
Na MATA521, durante a tentativa de exclusão do Documento de Saída.
👤 Autor
Fabrizio Augusto Ventavolo
Consultor Especialista TOTVS — Mastersiga Consultoria