Guias
Operações Adicionais
Como cancelar, corrigir, inutilizar e consultar o status de documentos fiscais.
Nem tudo sai perfeito na primeira tentativa. A API oferece operações para lidar com os imprevistos do dia a dia fiscal — cancelamento, correção, inutilização de numeração e consulta de status. Escolha a sua linguagem de preferência abaixo.
1. Cancelamento
Seção intitulada “1. Cancelamento”O prazo legal para cancelar um documento geralmente é de 24 horas após a autorização. Cancelamento é assíncrono — a resposta só confirma que o pedido entrou na fila.
const resposta = await client.cancel('55', invoiceId, { reason: 'Erro de digitação nos valores dos produtos.',});console.log(resposta.message);resposta = client.cancel( "55", invoice_id, 'Erro de digitação nos valores dos produtos.',)print(resposta["message"])AsyncOperationResponse resposta = client.cancel( "55", invoiceId, "Erro de digitação nos valores dos produtos.");System.out.println(resposta.message);curl -X POST https://app.nfe.tenzanlabs.com/v1/nfe/{invoiceId}/cancel \ -H "X-Access-Key: nfe_access_SUA_CHAVE_DE_ACESSO_AQUI" \ -H "Authorization: Bearer nfe_test_SUA_CHAVE_AQUI" \ -H "Content-Type: application/json" \ -d '{ "reason": "Erro de digitação nos valores dos produtos." }'Veja a referência completa em Cancelar.
2. Carta de Correção Eletrônica (CC-e)
Seção intitulada “2. Carta de Correção Eletrônica (CC-e)”Se a nota já passou do prazo de cancelamento ou o erro é pequeno (não afeta impostos, valores, ou dados cruciais do destinatário), emita uma CC-e. Também assíncrono.
const resposta = await client.correct('55', invoiceId, { correctionText: 'O endereço de entrega correto é Rua das Flores, 123 - Centro.',});resposta = client.correct( "55", invoice_id, 'O endereço de entrega correto é Rua das Flores, 123 - Centro.',)AsyncOperationResponse resposta = client.correct( "55", invoiceId, "O endereço de entrega correto é Rua das Flores, 123 - Centro.");curl -X POST https://app.nfe.tenzanlabs.com/v1/nfe/{invoiceId}/correct \ -H "X-Access-Key: nfe_access_SUA_CHAVE_DE_ACESSO_AQUI" \ -H "Authorization: Bearer nfe_test_SUA_CHAVE_AQUI" \ -H "Content-Type: application/json" \ -d '{ "correctionText": "O endereço de entrega correto é Rua das Flores, 123 - Centro." }'Veja a referência completa em Corrigir.
3. Inutilização de Numeração
Seção intitulada “3. Inutilização de Numeração”Caso o seu sistema tenha pulado a numeração de um documento, inutilize aquele espaço para evitar autuações da SEFAZ. Essa operação é síncrona — a resposta já vem com o resultado da SEFAZ.
const resposta = await client.voidRange({ ano: 2026, serie: 1, inicio: 15, fim: 15, // apenas o número 15 justificativa: 'Quebra de sequência na numeração por falha de banco de dados.', cnpj: '12345678000199',});console.log(resposta.cStat, resposta.xMotivo);resposta = client.void_range({ "ano": 2026, "serie": 1, "inicio": 15, "fim": 15, "justificativa": "Quebra de sequência na numeração por falha de banco de dados.", "cnpj": "12345678000199",})print(resposta["cStat"], resposta["xMotivo"])VoidRangeData data = new VoidRangeData();data.ano = 2026;data.serie = 1;data.inicio = 15;data.fim = 15;data.justificativa = "Quebra de sequência na numeração por falha de banco de dados.";data.cnpj = "12345678000199";
VoidRangeResponse resposta = client.voidRange(data);System.out.println(resposta.cStat + " " + resposta.xMotivo);curl -X POST https://app.nfe.tenzanlabs.com/v1/nfe/inutilize \ -H "X-Access-Key: nfe_access_SUA_CHAVE_DE_ACESSO_AQUI" \ -H "Authorization: Bearer nfe_test_SUA_CHAVE_AQUI" \ -H "Content-Type: application/json" \ -d '{ "ano": 2026, "serie": 1, "inicio": 15, "fim": 15, "justificativa": "Quebra de sequência na numeração por falha de banco de dados.", "cnpj": "12345678000199" }'Veja a referência completa em Inutilizar numeração.
4. Consultando o resultado (polling)
Seção intitulada “4. Consultando o resultado (polling)”Como emissão, cancelamento e correção são assíncronos, use getInvoice pra acompanhar o status do documento até ele deixar de ser PENDENTE.
const nota = await client.getInvoice('55', invoiceId);console.log(nota.status); // 'PENDENTE' | 'AUTORIZADA' | 'REJEITADA' | ...nota = client.get_invoice("55", invoice_id)print(nota["status"])GetInvoiceResponse nota = client.getInvoice("55", invoiceId);System.out.println(nota.status);curl https://app.nfe.tenzanlabs.com/v1/nfe/{invoiceId} \ -H "X-Access-Key: nfe_access_SUA_CHAVE_DE_ACESSO_AQUI" \ -H "Authorization: Bearer nfe_test_SUA_CHAVE_AQUI"Veja a referência completa em Consultar documento.