Pular para o conteúdo principal
Interface em atualização

O painel da NFE.io está recebendo uma nova interface e esta documentação está sendo atualizada junto. Alguns nomes de menus e telas podem estar diferentes do que você vê. Em caso de divergência, fale com o suporte.

Manifestação de NF-e

A manifestação é a forma como você comunica à SEFAZ o que aconteceu com uma NF-e destinada à sua empresa. É um processo legalmente obrigatório para empresas que utilizam a Escrituração Fiscal Digital (EFD).

Sumário​

Por que é Obrigatória​

A SEFAZ precisa saber se você:

  • Recebeu a mercadoria conforme descrito na NF-e
  • Não reconhece aquela operação
  • A operação não foi concluída (mercadoria devolvida, por exemplo)

Sem a manifestação, você pode ter problemas em auditorias fiscais.

Fluxo recomendado​

Prazos para Manifestar​

Os prazos são contados a partir da data de autorização da NF-e pela SEFAZ:

Tipo de ManifestaçãoPrazo Máximo
Ciência da Operação10 dias após a autorização da NF-e
Confirmação da Operação180 dias após a autorização da NF-e
Desconhecimento da Operação180 dias após a autorização da NF-e
Operação Não Realizada180 dias após a autorização da NF-e
A Ciência tem prazo — e ele é curto

Passados 10 dias da autorização, a SEFAZ rejeita a Ciência da Operação com cStat 596. Não há como reenviar depois disso, por nenhum canal.

Quando isso acontece, ainda é possível liberar o XML completo com Confirmação da Operação (210200), que tem prazo de 180 dias — mas ela é uma manifestação definitiva: afirma que a mercadoria foi recebida conforme a NF-e, e depois dela não cabe mais Desconhecimento nem Operação Não Realizada. Só use se a operação de fato ocorreu.

⚠️ Atenção ao ativar o serviço para um CNPJ novo: documentos autorizados mais de 10 dias antes da ativação já chegam com a janela da Ciência fechada. Isso vale inclusive para a carga histórica.

Atenção: Após 180 dias sem manifestação de confirmação, desconhecimento ou operação não realizada, a SEFAZ pode considerar a operação como confirmada automaticamente. Mantenha seus registros em dia.

Tipos de Manifestação​

Ciência da Operação​

O que significa: "Eu sei que existe esta NF-e destinada para mim."

Esta é a manifestação mais básica e deve ser feita assim que você toma conhecimento da NF-e. Não confirma recebimento físico.

Quando usar: Sempre que uma NF-e chegar para sua empresa — mesmo que você ainda não tenha recebido a mercadoria.

Confirmação da Operação​

O que significa: "Recebi a mercadoria exatamente como descrito nesta NF-e."

Quando usar: Após conferir que a mercadoria chegou e está de acordo com o que foi faturado.

Desconhecimento da Operação​

O que significa: "Não reconheço esta operação — não comprei nada disso."

Quando usar: Quando chega uma NF-e de uma compra que sua empresa não realizou. Pode ser uma fraude ou erro do emitente.

Atenção: Use com cuidado. Esta manifestação tem implicações legais e pode acionar investigação da SEFAZ sobre o emitente.

O que fazer se suspeitar de fraude:

  1. Registre o Desconhecimento da Operação imediatamente
  2. Documente a ocorrência internamente
  3. Se identificar uso indevido do seu CNPJ, registre um Boletim de Ocorrência e notifique a Receita Federal
  4. Entre em contato com sua assessoria jurídica ou contábil

Operação Não Realizada​

O que significa: "A operação estava prevista, mas não foi concluída."

Quando usar: Quando a mercadoria foi devolvida, o pedido foi cancelado após a emissão da NF-e, ou qualquer situação onde a operação não se concretizou conforme descrito.

Registrar Manifestação via API​

A manifestação também pode ser registrada via API, integrando com seu ERP. A rota recomendada é manifestation-events, que aceita os quatro tipos acima e também os eventos da Reforma Tributária:

curl -X POST "https://api.nfse.io/v2/companies/{company_id}/inbound/productinvoices/by-access-key/{access_key}/manifestation-events" \
-H "Authorization: SUA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"eventCode": 210210,
"nSequencia": 1
}'
CampoObrigatórioDescrição
eventCodeSimCódigo do evento (tpEvento). Veja a tabela abaixo
nSequenciaNãoSequência do evento (nSeqEvento). Default 1; menor que 1 responde 400
detailDependeConteúdo específico do evento. Opcional para 210200, 210210 e 210220; obrigatório para 210240

Tipos de manifestação (eventCode):

CódigoTipodetail
210210Ciência da OperaçãoOpcional (sem campos)
210200Confirmação da OperaçãoOpcional (sem campos)
210220Desconhecimento da OperaçãoOpcional (sem campos)
210240Operação não RealizadaObrigatório: { "justification": "..." } com 15 a 255 caracteres

A Operação não Realizada exige a justificativa já na submissão:

{
"eventCode": 210240,
"nSequencia": 1,
"detail": { "justification": "Mercadoria nao foi entregue ao destinatario." }
}

Sem detail.justification válida, a API responde 400 na hora e nada é enviado à SEFAZ. Antes, o pedido era aceito e o evento terminava Rejected depois.

O processamento é assíncrono​

A resposta é 202 Accepted com o evento em status: "Pending" e o header Location apontando para o detalhe. O envio à SEFAZ acontece em segundo plano. Não há webhook de conclusão: acompanhe o resultado por polling.

GET /v2/companies/{company_id}/inbound/productinvoices/manifestation-events/{id}
GET /v2/companies/{company_id}/inbound/productinvoices/by-access-key/{access_key}/manifestation-events

O primeiro devolve o evento com requestXmlGZipB64 (XML enviado) e responseXmlGZipB64 (resposta da SEFAZ), ambos em GZip + Base64. O segundo devolve { "items": [...] }, do mais recente para o mais antigo.

Resposta (202):

{
"id": "66f0a1b2c3d4e5f601234567",
"companyId": "comp_123",
"accessKey": "35240112345678000195550010000012341234567890",
"eventCode": 210210,
"eventType": "CienciaOperacao",
"nSequencia": 1,
"status": "Pending",
"environment": "Production",
"attemptCount": 0,
"createdOn": "2026-09-22T14:00:00Z"
}
statusSignificado
PendingNa fila, ainda não concluído
AcceptedRegistrado na SEFAZ (cStat 135 ou 136). O 573 (duplicidade) também resulta em Accepted: o evento já estava registrado, e a submissão é tratada como sucesso idempotente
RejectedRecusado pela SEFAZ: qualquer outro cStat, inclusive 596 (evento fora do prazo), com errorCode = BadRequest. Ou recusado na montagem do XML, com errorCode = VALIDATION
FailedFalha antes do envio. errorCode: CERT_NOT_FOUND, CERT_LOAD_FAILED, CERT_EXPIRED, COMPANY_NOT_FOUND, AUTOR_UF_UNRESOLVED, STRATEGY_NOT_FOUND ou MAX_ATTEMPTS_EXCEEDED

errorMessage é texto livre (por exemplo, o motivo devolvido pela SEFAZ). Não faça parsing dele.

Respostas do POST:

HTTPQuando
202Evento aceito e enfileirado
400Chave sem 44 dígitos, nSequencia < 1, código não aceito, detail inválido para o código (ex.: 210240 sem justificativa) ou inbound de NF-e não ativo na empresa
409Já existe evento Pending ou Accepted para a mesma (accessKey, eventCode, nSequencia). Eventos Rejected ou Failed podem ser reenviados

Rota legada POST /manifest (depreciada)​

POST /v2/companies/{company_id}/inbound/{access_key}/manifest?tpEvent=210210
Authorization: SUA_API_KEY

A rota continua disponível por compatibilidade, mas está depreciada. Ela não tem corpo: o evento vem de tpEvent (default 210210) e a sequência é sempre 1.

  • Ela também é assíncrona: responde 200 com o evento em status: "Pending", e não com uma mensagem da SEFAZ. Acompanhe pelas mesmas rotas GET acima.
  • As mesmas validações e o mesmo 409 da rota manifestation-events se aplicam.
  • tpEvent=210240 responde 400: o evento exige justificativa, e esta rota não tem corpo para enviá-la. Use manifestation-events com detail.justification.
  • O parâmetro engine aceita v2 (padrão) e v1. O engine=v1 é o caminho síncrono antigo, está depreciado e não funciona no runtime atual. Não use.

Eventos da Reforma Tributária (NT 2025.002-RTC)​

Os quatro tipos acima (Ciência, Confirmação, Desconhecimento, Não Realizada) continuam valendo. A NT 2025.002-RTC acrescentou uma família nova de eventos, ligados à apuração de IBS e CBS — apropriação de crédito, imobilização, perecimento, sucessão — além do cancelamento genérico de evento.

Eles usam a mesma rota manifestation-events, também assíncrona, e o corpo tem um grupo detail cuja estrutura varia por código:

curl -X POST "https://api.nfse.io/v2/companies/{company_id}/inbound/productinvoices/by-access-key/{access_key}/manifestation-events" \
-H "Authorization: SUA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"eventCode": 211128,
"nSequencia": 1,
"detail": { "indAceitacao": "1" }
}'

Códigos aceitos (13 no total): 4 de manifestação do destinatário (210200, 210210, 210220, 210240), 6 do destinatário na NT-RTC (211110, 211124, 211128, 211130, 211140, 211150), 2 de sucessora (212110 IBS, 212120 CBS) e 1 de cancelamento de evento (110001). A tabela com o detail exigido por cada um está em Tipos e enums.

211120 (consumo pessoal) foi removido

O evento saiu da NT 2025.002-RTC na versão 1.40, depois da revogação do §6º do art. 57 da LC 214/2025 pela LC 227/2026. A SEFAZ não reconhece mais tpEvento=211120 e rejeita o lote com cStat 225 — Falha no Esquema XML. Submissões novas são sempre recusadas com 400 antes de sair — o código segue reconhecido apenas na leitura de eventos já registrados.

Reenviar o mesmo evento não duplica

A idempotência é por (accessKey, eventCode, nSequencia). Reenviar enquanto já existe um evento Pending ou Accepted retorna 409, sem nova submissão à SEFAZ. Um evento Rejected ou Failed pode ser reenviado. Para uma re-submissão legítima de evento multi-sequência, incremente nSequencia (default 1).

Eventos do Fisco (412120 e 412130, manifestação sobre transferência de crédito IBS/CBS em sucessão) chegam pela distribuição, mas são somente leitura: tentar submetê-los retorna 400.

Manifestação Automática​

O serviço pode fazer a Ciência da Operação automaticamente para você. Assim que uma NF-e é recebida, aguardamos o tempo configurado (ex: 60 minutos) e registramos a ciência automaticamente. Configure via AutomaticManifesting.MinutesToWaitAwarenessOperation no payload de ativação (ver Ativar via API).

Vantagens:

  • Você não precisa manifestar manualmente cada NF-e
  • Garante conformidade legal de forma automática
  • Economiza tempo

Importante: A manifestação automática registra apenas Ciência da Operação. Você ainda precisa registrar Confirmação ou Operação Não Realizada manualmente quando aplicável.

Como Manifestar Manualmente (Painel)​

Na listagem NF-e Capturadas, use o menu ⋮ da linha (ou o botão Enviar Evento no detalhe da nota) e escolha o Tipo de Evento: Ciência da Operação, Confirmação da Operação, Desconhecimento da Operação ou Operação não Realizada.

Ou, se sua equipe de TI integrou com nossa API, a manifestação pode ser acionada diretamente do seu sistema de gestão.

Veja também​

NFE.io

A NFE.io é uma empresa de tecnologia que fornece soluções para automatizar e simplificar a emissão e gestão de notas fiscais eletrônicas. Com suas ferramentas, as empresas podem economizar tempo e reduzir erros, aumentando a eficiência e precisão do processo de emissão de notas fiscais.

Um dos principais cases de sucesso da NFE.io é a implementação da solução na empresa de transporte Rodonaves. Com a automatização da emissão e gestão de notas fiscais eletrônicas, a Rodonaves conseguiu reduzir em até 80% o tempo gasto nesse processo, o que se traduziu em uma significativa melhoria na eficiência operacional. Além disso, a empresa também conseguiu eliminar erros e atrasos na emissão de notas fiscais, o que melhorou a relação com seus clientes e aumentou a confiança dos órgãos fiscais.

Outro exemplo é a implementação da NFE.io na empresa de comércio eletrônico, a Loja Integrada. Com a automatização da emissão de notas fiscais, a Loja Integrada conseguiu aumentar a velocidade de emissão de notas em até 10 vezes, o que permitiu que a empresa atendesse a uma maior quantidade de clientes e, consequentemente, aumentar as suas vendas.

Além desses exemplos, a NFE.io também tem outros cases de sucesso com empresas de setores como indústria, construção, varejo e serviços, mostrando a versatilidade e eficácia da sua solução.

Em resumo, a NFE.io é uma empresa de tecnologia que oferece soluções para automatizar e simplificar a emissão e gestão de notas fiscais eletrônicas, ajudando as empresas a economizar tempo e reduzir erros, melhorando a eficiência e precisão do processo. Com cases de sucesso em diferentes setores, a NFE.io tem se destacado como uma empresa líder em automação fiscal.