Cancelamento
Cancela uma nota já autorizada, dentro do prazo legal. O status final écanceled (veja Ciclo de vida da nota).
O corpo da requisição (
CancelInvoiceRequestDto) exige apenas um campo:
reason é obrigatório. A API aceita a partir de 1 caractere, mas os limites
que valem de fato são os da autoridade fiscal:
- NF-e e NFC-e: a SEFAZ exige a justificativa (
xJust) com 15 a 255 caracteres — mais curto que isso é rejeitado. - NFS-e: o limite é definido pela prefeitura/provedor e varia por município — não há um mínimo único. Use uma justificativa clara na mesma faixa (15+ caracteres).
Uma nota em
inContingent (NFC-e em contingência offline) não pode ser
cancelada até que a SEFAZ confirme a autorização definitiva — veja
Contingência.Carta de correção (CC-e)
A carta de correção regulariza dados acessórios de uma NF-e já autorizada, sem cancelá-la — por exemplo, uma informação complementar incorreta ou uma descrição de item mal escrita. É exclusiva de NF-e.ProductInvoiceCorrectionLetterRequestDto) exige o texto da carta:
letter é obrigatório. A API aceita a partir de 1 caractere, mas a SEFAZ
exige de 15 a 1000 caracteres no texto da correção (xCorrecao). Cada
chamada gera um novo evento de correção — para consultar ou baixar uma
carta específica:
NFC-e e NFS-e não têm carta de correção. Não existe endpoint
equivalente para
consumer-invoices nem para service-invoices — veja
Emissão de NFC-e e Emissão de
NFS-e. Para esses modelos, um erro em nota
autorizada só se resolve por cancelamento (dentro do prazo) seguido de
nova emissão.Inutilização de numeração
Formaliza junto à SEFAZ que uma faixa de números de uma série não será usada — normalmente após uma quebra de sequência (ex.: uma nota falhou antes de ser enviada e o número ficou “pulado”, ou houve um erro que impediu o envio de um lote de números reservados). É diferente de cancelamento: cancelamento desfaz uma nota que chegou a ser autorizada; inutilização formaliza que certos números nunca chegaram a ser usados.
Corpo da requisição (
SefazInvoiceDisablementEditingDto):
InvoiceDisablementResultDto) traz o protocolo da SEFAZ e o
campo status (DisabledInvoiceStatus):
A inutilização só é aceita para números que nunca foram transmitidos à
SEFAZ. Se algum número da faixa já corresponde a uma nota emitida (mesmo
que rejeitada e reemitida sob outro número), a SEFAZ rejeita a
inutilização — nesse caso, o caminho é o cancelamento da nota específica,
não a inutilização da faixa.
Próximos passos
- Estados da nota e quando
canceled/disabledacontecem: Ciclo de vida da nota - Comportamento de cancelamento durante contingência: Contingência
- Payload completo de NF-e (onde
series/numbersão definidos na emissão): Emissão de NF-e - Acompanhar o resultado dessas operações por webhook: Eventos e payload