Erros NF-e / NFC-e

Referência de códigos de erro HTTP, erros de aplicação e rejeições da SEFAZ para facilitar a depuração da sua integração.

Erros HTTP

StatusNomeDescrição
400Bad RequestPayload inválido ou campos obrigatórios ausentes.
401UnauthorizedHeader x-api-key ausente ou inválido.
403ForbiddenChave revogada, sem assinatura ativa, ou créditos esgotados.
404Not FoundInvoice não encontrada ou não pertence ao projeto.
422UnprocessableCertificado ausente, município não configurado, ou pré-condição falhou.
429Too Many RequestsRate limit excedido. Aguarde Retry-After segundos.
500Internal ErrorErro inesperado. Tente novamente com backoff exponencial.

Erros de Aplicação

Estes códigos são retornados no campo error.code do body da resposta.

CódigoDescrição
CREDIT_LIMITLimite de notas mensais atingido. Upgrade de plano necessário.
CERT_MISSINGNenhum certificado A1 válido encontrado para o projeto.
CERT_EXPIREDCertificado A1 expirado. Faça upload de um novo em Configurações.
PAYLOAD_INVALIDPayload com campos obrigatórios ausentes ou inválidos. O campo campos na resposta lista os problemas específicos encontrados.

Rejeições SEFAZ — cStat

Quando a SEFAZ rejeita uma NF-e, o campo cStat retorna um código de rejeição no webhook nfe.error e na resposta do endpoint de status.

cStatDescriçãoAção Recomendada
100Autorizado o uso da NF-eEmissão confirmada ✅
204Uso denegado — CNPJ emitente com irregularidade fiscalVerificar situação fiscal do emitente na Receita Federal
206NF-e já autorizada (duplicidade de chave)Nota com mesma chave de acesso já foi autorizada. Consultar status para obter protocolo existente.
207CNPJ do emitente não autorizado para emissão na WANSolicitar habilitação na SEFAZ da UF emitente
209IE do emitente inválida para a UFCorrigir a Inscrição Estadual em Configurações → Empresa
225Falha no schema XMLCausas mais comuns: items[].descricao vazio, dest.endereco.codigoMunicipio zerado ou sem 7 dígitos, campos de endereço com menos de 2 caracteres. A API agora rejeita esses payloads com HTTP 400 antes do envio à SEFAZ. Se cStat 225 persistir, verifique campos customizados (cBenef, IE).
301IE do destinatário inválida para a UFCorrigir IE ou omitir para consumidor final
321NF-e de devolução de mercadoria não possui documento fiscal referenciado por itemEm cada item da devolução, informe items[].nfeReferenciada com chaveAcesso e o nItem da NF-e original. Não informe refNFe na raiz.
1010NF-e com referenciamento no nível da nota e do itemNão combine refNFe/nfesReferenciadas na raiz com items[].nfeReferenciada. Em devoluções, mantenha somente a referência por item.
1048 / 1102Número do item original não informado no DFeReferenciadoInforme nItem como inteiro entre 1 e 999, usando o atributo det/@nItem do XML original. A posição do produto na devolução atual não substitui esse valor.
1072DFe/item referenciado em duplicidadeNão repita a mesma combinação de chaveAcesso e nItem em mais de um item da nota.
1023 / 1024cClassTrib inexistente ou incompatível com o CST IBS/CBSUse um código de 6 dígitos da tabela cClassTrib vigente e confirme que os três primeiros dígitos correspondem ao CST informado.
1104Base de cálculo IBS/CBS difere do somatório dos componentesConfira produto, frete, seguro, despesas, desconto e os valores de ICMS, DIFAL, PIS e COFINS do item. A API calcula essa base automaticamente.
1105Valor total do item RTC divergenteNão envie valores IBS/CBS calculados. Em 2025/2026 os tributos RTC não compõem vItem; a plataforma aplica essa transição automaticamente.
1115 / 1119Grupo ou total IBS/CBS ausente/divergenteInforme items[].ibscbs conforme a obrigatoriedade fiscal. Quando o grupo existe em um item, a plataforma gera IBSCBSTot mesmo com valores zerados.
391Dados do cartão/pagamento eletrônico ausentesResolvido automaticamente: o sistema gera grupo card com tipoIntegracao=2 para pagamentos eletrônicos. Verifique se worker está atualizado.
434NF-e sem indicativo do intermediadorOcorre quando presencaComprador é 2, 3 ou 9 (não-presencial) e o campo indicadorIntermediador foi omitido. O sistema aplica 0 automaticamente a partir da v0.52.20. Se persistir, atualizar o payload com indicadorIntermediador: 0 (venda direta) ou 1 (marketplace).
435NF-e não pode ter indicativo do intermediadorOcorre quando presencaComprador é 0, 1 ou 5 (presencial) e o campo indicadorIntermediador foi informado. Remover o campo para operações presenciais.
539Duplicidade de número de NF-eInutilizar faixa e reemitir com novo número. Comum ao migrar de outro sistema emissor.
694Não informado cBenef para CST (PR/RS)Incluir código de benefício fiscal para UFs que exigem

Rejeições NFC-e — Específicas do modelo 65

Estas rejeições ocorrem exclusivamente em emissões de NFC-e (modelo 65) e estão relacionadas ao QR Code, CSC e regras de presença do comprador.

cStatDescriçãoAção Recomendada
464Hash do QR Code difere do calculado pela SEFAZVerificar se o CSC (ID + Token) está correto em Configurações → NFC-e. O hash é calculado sobre os campos + CSC, sem a URL base.
600CSC inválido ou não cadastrado (NFC-e)Verificar CSC ID e Token em Settings → NF-e. O CSC é obtido no portal SEFAZ da UF do emitente.
708NFC-e não pode referenciar documento fiscal por itemRemova items[].nfeReferenciada. O grupo DFeReferenciado é suportado apenas em NF-e modelo 55.
717NFC-e em operação não presencialUsar presencaComprador: 1 (presencial), 4 (delivery) ou 5 (fora do estabelecimento). Para e-commerce, usar NF-e modelo 55.