Emissão

Emissão NFS-e Passo a Passo

RPS, conversão em NFS-e, DANFSE PDF e cancelamento municipal.

A NFS-e (Nota Fiscal de Serviços Eletrônica) acoberta a prestação de serviços sujeita ao ISSQN. A NFER opera com cobertura de 100% dos municípios brasileiros (5.571 cidades) para MEI e mais de 2.870 cidades ativas para emissão geral (Simples Nacional, ME e EPP) através de um único contrato REST JSON unificado.

Para circulação de produtos físicos ou comércio mercantil, consulte os guias de Emissão de NF-e (modelo 55) ou NFC-e (modelo 65).

BASE URL
https://api.nfer.me/v1

Padrão Nacional: Declaração de Prestação de Serviços (DPS)

Na arquitetura nacional, o sistema gera e assina digitalmente a DPS com o Certificado Digital A1 da sua empresa e a envia ao Ambiente de Dados Nacional (ADN), que processa e converte a declaração na NFS-e oficial com chave de 50 dígitos e QR Code do DANFSE.

Exemplos de Criação de NFS-e

A API aceita duas formas de identificação do tomador do serviço: envio direto (inline), ideal para emissões diretas sem necessidade de cadastro prévio, ou informando o customerId de um cliente já existente na sua conta. Ambos os exemplos incluem o bloco de IBS e CBS da Reforma Tributária com indicação de preenchimento opcional.

1. Emissão com Tomador Inline (Dados Completos)

Envia os dados e o endereço do tomador diretamente no payload. A NFER faz a validação e o registro transparente na base sem que sua aplicação precise fazer duas chamadas de API:

curl -s -X POST https://api.nfer.me/v1/nfse \
-H "X-API-Key: $NFER_KEY" \
-H "Content-Type: application/json" \
-d '{
"transmit": true, // true: Emissão direta (1 passo) | false: Rascunho (2 passos)
"codigoServico": "010701",
"descricao": "Desenvolvimento de software sob encomenda e consultoria técnica em nuvem",
"valorServico": 2500.00,
"dCompet": "2026-09-01", // Opcional: data de competência / fato gerador do serviço (padrão: data de hoje)
"cLocPrestacao": "3550308",
"tribIssqn": 1,
// Tomador informado inline (sem necessidade de pré-cadastro):
"tomador": {
"tipoPessoa": "J",
"cpfCnpj": "00000000000191",
"nome": "EMPRESA CONTRATANTE LTDA",
"email": "financeiro@contratante.com.br",
"endereco": {

2. Emissão com Tomador por ID (customerId)

Para clientes recorrentes previamente cadastrados via painel ou via endpoint POST /v1/customers, basta informar o UUID:

curl -s -X POST https://api.nfer.me/v1/nfse \
-H "X-API-Key: $NFER_KEY" \
-H "Content-Type: application/json" \
-d '{
// UUID do cliente previamente cadastrado em /v1/customers:
"customerId": "c1f7b882-990a-41d9-95e2-6320a0ee1234",
"codigoServico": "010701",
"descricao": "Desenvolvimento de software sob encomenda e consultoria técnica em nuvem",
"valorServico": 2500.00,
"dCompet": "2026-09-01", // Opcional: data de competência / fato gerador do serviço (padrão: data de hoje)
"cLocPrestacao": "3550308",
"tribIssqn": 1,
// Opcional: Reforma Tributária (IBS e CBS - LC 214/2025)
"ibsCbs": {
"cClassTrib": "000001",
"cIndOp": "100301",
"cMunIncidencia": "3550308",
"aliqCbs": 0.90,

Código de Serviço de 6 Dígitos (cTribNac)

O campo codigoServico aceita o código unificado de 6 dígitos da Lista de Serviços da LC 116/2003 (ex.: "010701" para programação e desenvolvimento de sistemas). Consulte a tabela completa em Códigos de Serviço NFS-e.

Fluxo de Emissão em 3 Etapas

1POST /v1/nfse

Criar Rascunho DPS

Gera o rascunho da declaração, valida retenções de ISSQN e responde 201 Created em ~50ms com o ID da nota.

2POST /v1/nfse/:id/send

Transmitir ao ADN

Assina o XML da DPS com Certificado A1 e transmite à Receita Federal / SEFIN via fila assíncrona (202 Accepted).

3DANFSE & XML

Obter Resultado

Assim que autorizada, o NFER dispara o webhook nfse.autorizada com os links de download do DANFSE oficial em PDF e do XML com protocolo.

Emissão Direta em 1 Passo (transmit: true)

Para emitir e transmitir a NFS-e em uma única chamada HTTP (eliminando a chamada manual do Passo 2), inclua "transmit": true no corpo do POST /v1/nfse. A NFER criará a DPS e enfileirará o envio ao ADN / SEFIN imediatamente, respondendo com status "processando". Ideal para checkouts, bots e integrações via webhook.

Estrutura do Payload

Principais blocos que compõem a emissão de serviços:

BlocoCampoPropósito e Conteúdo
Modo de EmissãotransmitBoolean (opcional, padrão false). Se true, enfileira automaticamente a transmissão ao SEFIN Nacional / ADN logo após salvar a DPS (emissão direta em 1 passo). Se false, grava a nota em rascunho em ~40ms para conferência prévia. Aliases aceitos: "transmitir" e "emitir".
Tomador do ServiçotomadorDados do cliente tomador (CPF/CNPJ, Razão Social, e-mail e endereço). Se já cadastrado, informe customerId.
Disparo de E-mailenviarEmailBoolean (opcional). Controla o envio de e-mail ao tomador contendo o link da consulta pública do DANFSE e o XML após a autorização no ADN/município. Se true, força o envio; se false, suprime o envio deste serviço. Se omitido, respeita a configuração da empresa.
Serviço PrestadocodigoServico, descricaoCódigo nacional de 6 dígitos (cTribNac da LC 116) e discriminação detalhada dos serviços executados.
Valores & ISSQNvalorServico, tribIssqnValor bruto do serviço, indicador de tributação do ISSQN (1 Tributável, 2 Exportação, etc.) e alíquota.
Competência / DatadCompetData ou mês de competência do serviço (fato gerador do ISSQN). Aceita formatos AAAA-MM-DD, AAAA-MM, MM/AAAA ou MM.AAAA (ex.: "2026-09-01" ou "09/2026"). Se omitido, assume a data atual de emissão.
Local da PrestaçãocLocPrestacaoCódigo IBGE de 7 dígitos do município onde o serviço foi fisicamente executado (determina incidência territorial).
IntermediáriointermediarioOpcional para serviços mediados por plataformas ou agências: CPF/CNPJ e Razão Social do intermediador.
Reforma TributáriaibsCbsClassificação tributária (cClassTrib), código da operação (cIndOp) e alíquotas de IBS/CBS na prestação de serviço.

Catálogo de Serviços vs. Envio Inline

Você pode emitir a NFS-e enviando todos os dados fiscais diretamente no corpo da nota (codigoServico, descricao, valorServico) ou utilizar o Catálogo de Serviços pré-cadastrado na NFER:

Opção 1: Envio Direto (Inline)

Ideal para sistemas que já possuem catálogo próprio. Basta passar o código de 6 dígitos (cTribNac), descrição e valor na chamada de POST /v1/nfse.

Opção 2: Catálogo de Serviços

Cadastre seus serviços uma única vez via painel (/dashboard/services) ou via API (POST /v1/services) com discriminação padrão, NBS e regras de IBS/CBS.

curl -s -X POST https://api.nfer.me/v1/services \
-H "X-API-Key: $NFER_KEY" \
-H "Content-Type: application/json" \
-d '{
"codigo": "SRV-DEV-01",
"descricao": "Desenvolvimento de Software e Integração de APIs",
"codigoTributacaoMunicipio": "010701",
"valorUnitario": 2500.00,
"unidade": "UN",
"aliqIss": 2.0,
"cNbs": "101011100"
}'

Nota: O campo aliqIss é opcional. Para empresas optantes pelo Simples Nacional, a alíquota de ISS é determinada automaticamente pela faixa de receita do PGDAS ou na tela de envio da nota, evitando erros cadastrais.

Operações Relacionadas

Endpoints dedicados para o ciclo completo da NFS-e e gestão de serviços:

OperaçãoMétodo e RotaReferência Técnica
Cadastrar Serviço no CatálogoPOST /v1/servicesVer Parâmetros →
Listar Catálogo de ServiçosGET /v1/servicesVer Listagem →
Criar DPS / NFS-ePOST /v1/nfseVer Parâmetros & Presets →
Transmitir ao ADNPOST /v1/nfse/:id/sendVer Envio Assíncrono →
Consultar NFS-e (Status)GET /v1/nfse/:idVer Retorno e Chave ADN →
Baixar DANFSE (PDF)GET /v1/nfse/:id/danfseVer Download do PDF →
Baixar XML da NFS-eGET /v1/nfse/:id/xmlVer Download do XML →
Cancelar NFS-ePOST /v1/nfse/:id/cancelVer Cancelamento →
Substituir NFS-ePOST /v1/nfse/:id/substituirVer Substituição Oficial →

Próximos Passos