Emitir NFS-e
Cria uma nova NFS-e. A operação é assíncrona por padrão — devolve 202 Accepted e dispara um webhook quando o status final estiver disponível.
/v1/nfse🔒 Bearer TokenIdempotência
Reenviar a mesma idIntegracao no mesmo tenant não cria nota duplicada — devolve a existente (com seu status atual). Isso garante segurança em retries do seu ERP.
Request body
prestadorCnpjstringObrigatórioCNPJ do prestador emissor. Deve estar cadastrado como Empresa no tenant da API key.
- Apenas dígitos (sem máscara
XX.XXX.XXX/XXXX-XX) - Validação: algoritmo de DV ICP-Brasil
- A empresa precisa ter certificado A1 ativo vinculado
14 dígitosExemplo: 82653726000198idIntegracaostringRecomendadoIdentificador externo do seu ERP. Fortemente recomendado.
Habilita:
- Idempotência — reenvio devolve a nota existente em vez de criar duplicada
- Reconciliação no seu ERP sem guardar o
idUUID da Notare - Filtro rápido no portal e em webhooks
Restrições:
- Sem espaços nas pontas
- Único por tenant (não precisa ser único globalmente)
- Persiste no webhook payload
OS-30046339servicoobjectObrigatórioBloco do serviço prestado.
municipioPrestacaostringObrigatórioCódigo IBGE do município de prestação. A Notare resolve automaticamente o roteamento — você não escolhe webservice nem padrão.
IBGE 7 dígitosExemplo: 4104808itemListaServicostringObrigatórioItem da Lista de Serviços da LC 116/2003. Aceita formato com pontos (1.07.01) ou só números (10701) — a Notare normaliza.
10701cnaestringRecomendadoCNAE do prestador. Recomendado pois é exigido por diversos municípios.
7 dígitoscodigoTributacaoMunicipalstringCódigo local de tributação do município. Notare deriva automaticamente quando possível; informe se o município exigir explicitamente (varia por cidade).
descricaostringObrigatórioDescrição livre do serviço prestado. Aparece no DANFSe e nas consultas. Pode incluir referências de OS, projeto, contrato.
valorServicosCentavosintegerObrigatórioValor bruto dos serviços em centavos. R$ 100,00 → 10000. Nunca use float.
66064 (R$ 660,64)valorDeducoesCentavosintegerDeduções permitidas (LC 116 itens 7.05, 1.05 etc.) em centavos. Subtraído da base de cálculo do ISS quando a situação tributária permitir.
0aliquotaIssBpintegerObrigatórioAlíquota do ISS em basis points. 3% = 300. Faixa típica municipal: 200 (2%) a 500 (5%).
300 (3,00%)issRetidoPeloTomadorbooleantrue quando o tomador (geralmente órgão público) é responsável por reter e recolher o ISS. Implica situação tributária específica nos provedores.
falseexigibilidadeIssenumHipótese de exigibilidade do ISS. Use exportacao para serviços a tomador no exterior — fora do campo de incidência por regra geral.
exigivelValores: exigivel, nao_incidencia, isencao, exportacao, imunidade, suspensa_judicial, suspensa_administrativanaturezaOperacaoenumNatureza da operação. Define onde o ISS é devido. Default inferido de municipioPrestacao vs prestadorCnpj.municipioSede.
tributacao_no_municipio, tributacao_fora_municipio, isencao, imune, exigibilidade_suspensa_decisao_judicial, exigibilidade_suspensa_procedimento_administrativoinformacoesComplementaresstringTexto livre adicional impresso no DANFSe. Comum: dados de contrato, nota fiscal correlata, mensagem ao tomador.
reformaTributariaobjectBloco IBS/CBS/IS — ver Reforma Tributária pra detalhamento completo de campos e CST.
tomadorobjectObrigatórioBloco do tomador (cliente).
cpfCnpjstringRecomendadoCPF (PF) ou CNPJ (PJ). Pode ser omitido apenas em "tomador não identificado" (varejo). Sem máscara.
11 ou 14 dígitosnifEstrangeirostringNIF/Tax ID quando tomador é estrangeiro. Use no lugar do cpfCnpj em exportação de serviços.
razaoSocialstringObrigatórioNome completo (PF) ou razão social (PJ).
inscricaoMunicipalstringIM do tomador. Necessária se ele estiver sujeito a retenção de ISS no município.
emailstringEmail do tomador. Alguns municípios enviam o PDF/XML pelo email cadastrado.
RFC 5322Tamanho: 0 – 200enderecoobjectObrigatórioEndereço completo do tomador (obrigatório quando PJ).
logradourostringObrigatórionumerostringObrigatório"S/N" quando sem número.complementostringbairrostringObrigatóriomunicipioIbgestringObrigatórioIBGE 7 dígitosufstringObrigatórioUF 2 letrascepstringObrigatório8 dígitos sem máscaracodigoPaisstring1058 = Brasil.1058Tamanho: 0 – 4rpsobjectIdentificação opcional do RPS. Recomendado deixar a Notare alocar — evita conflitos de sequência.
numerostringseriestringda config da empresatipoenumrpsValores: rps, nota_conjugada_misto, cupomdataEmissaostringISO 8601Default: agoracompetenciastringYYYY-MMDefault: mês atualopcoesobjectModificadores de processamento.
modoSincronobooleantrue faz a API aguardar a resposta final (até 30s). Default assíncrono devolve 202 e dispara webhook quando estiver pronto.
falsewebhookUrlstringSobrescreve a URL de webhook do tenant apenas para esta emissão.
URL HTTPSprioridadeenumReservado para planos Scale/Enterprise. Default normal é suficiente em 99% dos casos.
normalValores: normal, altaconsumidorFinalbooleanMarca o tomador como consumidor final. Afeta cálculo de impostos em alguns cenários.
falseExemplo de request
{
"prestadorCnpj": "82653726000198",
"idIntegracao": "OS-30046339",
"servico": {
"municipioPrestacao": "4104808",
"itemListaServico": "10701",
"cnae": "6202300",
"descricao": "Consultoria em desenvolvimento de software",
"valorServicosCentavos": 66064,
"aliquotaIssBp": 300,
"exigibilidadeIss": "exigivel"
},
"tomador": {
"cpfCnpj": "77856995003218",
"razaoSocial": "Cliente Exemplo LTDA",
"endereco": {
"logradouro": "Av. Brasil",
"numero": "1000",
"bairro": "Centro",
"municipioIbge": "4104808",
"uf": "PR",
"cep": "85801000"
},
"email": "financeiro@cliente.com"
}
}
Response
{
"id": "5fcb9e1d-28e1-4e45-bde9-8e957c835b27",
"status": "processando",
"numero": null,
"chaveAcesso": null,
"numeroRps": "201",
"serieRps": "8",
"meta": {
"trilho": "municipal",
"municipio": { "ibge": "4104808", "nome": "Cascavel" },
"tempoProcessamento": "120ms",
"tentativas": 1
},
"urls": { "pdf": null, "xml": null },
"scoreConfianca": 95,
"avisos": [],
"erros": []
}
Campos do response
idstringUUID v4statusenumEstado atual. Veja a tabela de transições abaixo.
processando, autorizada, rejeitada, cancelada, substituida, falha_temporaria, falha_definitivanumerostringnull enquanto não autorizada.chaveAcessostringnull enquanto não autorizada.numeroRpsstringserieRpsstringurlsobjectpdfstringautorizada.xmlstringautorizada.scoreConfiancaintegerScore heurístico pré-emissão. ≥ 90 = alta confiança · 70–89 = atenção · < 70 = revise antes de produção.
0-100avisosarrayerrosarrayrejeitada: lista de erros estruturados com campo, codigo, mensagem.Estados possíveis
| Estado | Significado | Transições saída |
|---|---|---|
processando | Em fila ou aguardando resposta | → autorizada · rejeitada · falha_temporaria |
autorizada | NFS-e gerada com sucesso | → cancelada · substituida |
rejeitada | Validação falhou (erros[] lista os campos) | terminal |
cancelada | Cancelamento confirmado | terminal |
substituida | Substituída por outra NFS-e | terminal |
falha_temporaria | Erro transitório — retentável | → processando · falha_definitiva |
falha_definitiva | Esgotou retries automáticos | terminal |