Cobertura Municipal & Engines NFS-e

A Notaas roteia automaticamente emissões de NFS-e entre 42 famílias de engines (45 identificadores de roteamento), cobrindo 4.782 municípios (85,84% do país) em produção. As particularidades podem estar no payload da nota ou no cadastro do projeto; consulte a matriz antes de emitir.

Snapshot gerado em 17/09/2026 a partir de ibge_municipalities (PostgreSQL): 4.782 ativos, 132 com provedor identificado (aguardando homologação) e 657 sem webservice público — estes dois últimos grupos têm cobertura via SNNFSE quando o prestador é MEI (ver regra abaixo).

⚡ Regra Nacional para MEI (Resolução CGSN nº 169/2022)

Prestadores enquadrados como MEI (regime_tributario = "2") são redirecionados para o Ambiente Nacional da NFS-e, inclusive quando o município possui engine própria. O roteamento é automático, mas o payload continua sujeito às validações fiscais do SNNFSE.

🔤 Suporte a CNPJ Alfanumérico (IN RFB nº 2.229/2024 & Nota Técnica SE/CGNFS-e nº 009)

A engine SNNFSE Federal (sistema_nfse = "snnfse") suporta integralmente o novo CNPJ Alfanumérico ([0-9A-Z]{12}\d{2}, ex.: 12.ABC.345/01DE-35) para o prestador (inclusive no Id de 45 posições da DPS e em <CNPJAutor>), tomador, destinatário IBS/CBS e fornecedor de deduções. Nas demais 44 engines municipais legadas cujos schemas XSD/posicionais ainda exigem 14 dígitos numéricos (\d{14}), o envio de CNPJ alfanumérico é bloqueado preventivamente na entrada com HTTP 400 ({ error, campos }) e por guardrail fail-closed no worker (errorCode: "CNPJ_ALFANUMERICO_NAO_SUPORTADO").

Engines e Sistemas Suportados (42 famílias / 45 identificadores)

SNNFSE Federal

Padrão nacional para municípios aderentes e para prestadores MEI

São Paulo (SP)

Sistema próprio da Prefeitura de SP — código de serviço municipal

TBW / SIL

NFSe Nacional SPED v1.00/v1.01 via SOAP

Barueri (SP)

RPS posicional V4.4 via SOAP e mTLS

GISSOnline / Eicon

ABRASF v2.04 com campos da Reforma Tributária

EL / Elotech

ABRASF v2.04 via SOAP e mTLS / DPS Nacional REST

SpeedGov

ABRASF v2.04 (Intersol) via SOAP assíncrono

Fiorilli / ISSWeb

ABRASF v2.01 com credenciais no XML

Centi

ABRASF v2.03 via REST e Basic Auth

AtendeNet / IPM

ABRASF v2.04 via SOAP e Basic Auth

WebISS

ABRASF v2.02 via SOAP, XMLDSig e mTLS

GINFES

Actuar/GINFES via SOAP RPC/literal, XMLDSig e mTLS

COPLAN

NFSe Tributário v1.01 via SOAP e mTLS

TINUS

ABRASF v2.03 via SOAP e mTLS

Salvador (BA)

ABRASF v1.0 customizado com correlação RTC automática

Brasília (DF)

ISSNet Online do Distrito Federal via SOAP e mTLS

ISSNet / Thema

ABRASF v2.04 via SOAP e mTLS

Campo Grande (MS)

ABRASF v2.03 próprio via SOAP e mTLS

DBSeller

ABRASF v2.04 via SOAP RPC/literal assíncrono

SIGEP / BSIT

SOAP com XML em CDATA e credenciais municipais

Betha

DPS via SOAP, XMLDSig e mTLS

HM2

ABRASF via SOAP e Basic Auth

DSF

ABRASF v2.03 via SOAP, XMLDSig e mTLS

Pronim / Cidade360

Proxy REST do padrão nacional com autenticidade municipal

SimplISS

ABRASF SimplISS via SOAP 1.1 + XMLDSig + pParam

Futurize

ABRASF v2.02 via SOAP 1.1 e XMLDSig — MG/PR/SC

MegaSoft

ABRASF v2.0x via SOAP 1.1 e XMLDSig — GO/TO/AP

Tributus

ABRASF v2.03 via SOAP 1.1 e XMLDSig — AL/PB/PE

Síntese

ABRASF v2.02 via SOAP 1.1 e XMLDSig — MG

Fisco

ABRASF v2.02 via SOAP 1.1 e XMLDSig — BA/PI

Saatri

ABRASF v2.01 via WCF SOAP BasicHttpBinding — BA/SC

ABase

ABRASF v2.01 via SOAP 1.1 ASMX (NFSeWS) — RS

Aspec

API REST JSON própria com Authorization Bearer — CE/MA/PA/RN

Equiplano

Layout próprio esnfs via SOAP 1.1 WCF e XMLDSig — PR

PublicSoft

API REST com XML ABRASF v2.03 no body + headers — PB/PE/RN

GovDigital

ABRASF v2.02 via SOAP 1.1, XMLDSig e mTLS — MG/SP

Agili

API REST com XML próprio (nfse_v_1.00) + ChaveDigital — AL/MT/RO/PA

Tecnos

ABRASF v2.02 via SOAP 1.1 e XMLDSig — RS

Conam

SOAP 1.1 GeneXus (ws_nfe) com Login no body — SP

Infisc

DPS Nacional v1.00 REST + mTLS auto-hospedado — RS

Tiplan

DPS Nacional v1.01 via REST + mTLS e Reforma Tributária (IBS/CBS) — SP/RJ

Elotech / Oxy ISS

ABRASF v2.03 via SOAP 1.1 e XMLDSig com IdentificacaoRequerente — PR

Matriz de Requisitos de Payload por Engine

“Payload padrão” significa usar os campos documentados em POST /api/v1/emitir. Credenciais, IM, CNAE e certificados pertencem ao cadastro do projeto e não devem ser enviados em cada nota.

Engine / ProvedorParticularidade no requestPolítica de Tomador (B2C / Exterior)Configuração do projetoTransporte
SNNFSE Federal
snnfse
servico.codigo; servico.nbs é opcionalB2C opcional · Exterior: NIF ou motivoAusenciaNif (0, 1 ou 2)Certificado A1 (e-CNPJ ou e-CPF), dados fiscais e CAEPF opcional para prestador PFREST + GZip + mTLS
São Paulo (SP)
sp_prefeitura
servico.codigoServico (ou padrão do projeto)B2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroCCM e certificado A1SOAP + XMLDSig + mTLS
TBW / SIL
tbw
servico.nbs (9 dígitos); suporta B2C e IBS/CBSB2C opcional · Exterior: NIF ou motivoAusenciaNif (0, 1 ou 2)Endereço completo do emitenteSOAP sem mTLS
Barueri (SP)
barueri
Tomador obrigatório (CPF/CNPJ/NIF); servico.codigoTributacaoMunicipal quando aplicávelTomador obrigatório · Exterior: Exige tomador.nif explícito (<NifTomador> / posicional)IM e certificado A1SOAP + mTLS
GISSOnline / Eicon
gissonline
servico.nbs recomendado; servico.codigoServico e código municipal quando aplicávelB2C opcional · Exterior: Exige tomador.nif explícito (<NifTomador> / posicional)IM e certificado A1SOAP + XMLDSig + mTLS
EL / Elotech
el, el_nacional
Tomador opcional (B2C); quando identificado com CPF/CNPJ, endereço é obrigatório / valores.aliquotaIss obrigatória (exceto MEI/imune); suporta B2C e IBS/CBSB2C opcional · Exterior: Exige tomador.nif explícito (<NifTomador> / posicional) | B2C opcional · Exterior: NIF ou motivoAusenciaNif (0, 1 ou 2)IM e certificado A1 / Inscrição Municipal, Token Webservice (X-Authorization) e certificado A1 ICP-BrasilSOAP + mTLS / REST + GZip + X-Authorization
SpeedGov
speedgov
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1SOAP sem mTLS
Fiorilli / ISSWeb
fiorilli
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM, usuário e senha municipaisSOAP sem mTLS
Centi
centi
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM, usuário e senha municipaisREST + Basic Auth
AtendeNet / IPM
atendenet
Tomador obrigatório (CPF/CNPJ); servico.cnae, servico.nbs e servico.documentoReferencia opcionaisTomador obrigatório · Exterior: Não suportado sem CPF/CNPJ brasileiroIM, usuário e senha municipaisSOAP + Basic Auth
WebISS
webiss
servico.nbs e valores.ibscbs opcionais; demais campos seguem o payload padrãoB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1; CNAE é opcionalSOAP + XMLDSig + mTLS
GINFES
ginfes
servico.nbs opcional; demais campos seguem o payload padrãoB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM, CNAE principal e certificado A1SOAP + XMLDSig + mTLS
COPLAN
coplan
servico.nbs opcional; demais campos seguem o payload padrãoB2C opcional · Exterior: NIF ou motivoAusenciaNif (0, 1 ou 2)Certificado A1SOAP + mTLS
TINUS
tinus
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1SOAP + mTLS
Salvador (BA)
salvador
Payload padrão; RTC é derivado pela NotaasB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1SOAP
Brasília (DF)
brasilia_df
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroCNAE principal e certificado A1SOAP + mTLS
ISSNet / Thema
issnet, issnet_nacional
servico.nbs e servico.codigoTributacaoMunicipal opcionais; tomador.inscricaoMunicipal para retenção / servico.codigoTributacaoMunicipal obrigatório (inteiro); suporta B2C e IBS/CBSB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiro | B2C opcional · Exterior: NIF ou motivoAusenciaNif (0, 1 ou 2)CNAE principal e certificado A1 / Inscrição Municipal, código de tributação municipal padrão e certificado A1 ICP-BrasilSOAP + mTLS / SOAP 1.1 + XMLDSig + mTLS
Campo Grande (MS)
campogrande
Payload padrão da API (ou servico.CNAE)B2C opcional · Exterior: Exige tomador.nif explícito (<NifTomador> / posicional)IM, CNAE principal (9 dígitos) e certificado A1SOAP + mTLS
DBSeller
dbseller
servico.nbs e valores.pisCofins.cst opcionaisB2C opcional · Exterior: Exige tomador.nif explícito (<NifTomador> / posicional)IM e certificado A1SOAP RPC/literal sem mTLS
SIGEP / BSIT
sigep
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM, usuário, senha e chave privadaSOAP + CDATA + mTLS
Betha
betha
servico.nbs (9 dígitos) + valores.ibscbs (opcional/automático)B2C opcional · Exterior: NIF ou motivoAusenciaNif (0, 1 ou 2)Certificado A1 e cadastro do emitenteSOAP + XMLDSig + mTLS
HM2
hm2
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM, usuário e senha municipaisSOAP + Basic Auth
DSF
dsf
Payload padrão; código municipal quando aplicávelB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM, CNAE principal e certificado A1SOAP + XMLDSig + mTLS
Pronim / Cidade360
pronim_snnfse, pronim_abrasf
Payload padrão da API / servico.codigoServico e servico.codigoTributacaoMunicipal opcionaisB2C opcional · Exterior: NIF ou motivoAusenciaNif (0, 1 ou 2) | B2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroCertificado A1 e cadastro municipalREST + GZip
SimplISS
simpliss
servico.codigo (LC 116), servico.cnae, servico.nbs (opcional)B2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM, usuário e senha web service SimplISS cadastrados nas configurações; Certificado digital A1 ICP-Brasil para assinatura XMLDSig RSA-SHA1SOAP 1.1 + XMLDSig + Credenciais (pParam)
Futurize
futurize
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1SOAP 1.1 + XMLDSig + mTLS
MegaSoft
megasoft
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1SOAP 1.1 + XMLDSig
Tributus
tributus
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1SOAP 1.1 + XMLDSig + mTLS
Síntese
sintese
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1SOAP 1.1 + XMLDSig + mTLS
Fisco
fisco
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1SOAP 1.1 + XMLDSig + mTLS
Saatri
saatri
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1SOAP WCF + XMLDSig + mTLS
ABase
abase
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1 (usado apenas na assinatura XMLDSig — o transporte é HTTPS simples)SOAP 1.1 + XMLDSig (sem mTLS)
Aspec
aspec
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroChave de autorização do prestador (enviada como Authorization: Bearer) cadastrada nas credenciais municipaisREST JSON + Bearer
Equiplano
equiplano
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1 (assinatura XMLDSig; transporte HTTPS simples nas portas 8444/9443 do esnfs)SOAP WCF + XMLDSig (sem mTLS)
PublicSoft
publicsoft
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroToken de acesso (header token) e credencial da prefeitura (header codigoCidade) nas credenciais municipais, além do certificado A1 para o XMLDSigREST XML + Headers (codigoCidade/token)
GovDigital
govdigital
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1 — obrigatório também no handshake TLS (o host rejeita conexões sem certificado cliente)SOAP 1.1 + XMLDSig + mTLS
Agili
agili
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroChaveDigital (token de 32 caracteres) nas credenciais municipais e certificado A1 para o XMLDSigREST XML + ChaveDigital/XMLDSig
Tecnos
tecnos
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroIM e certificado A1; Endpoint do webservice municipal configurado no projeto (precedência absoluta sobre o mapa padrão)SOAP 1.1 + XMLDSig + mTLS
Conam
conam
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroCodigoUsuario e CodigoContribuinte (bloco Login do GeneXus) cadastrados nas credenciais municipaisSOAP 1.1 Document/Literal + Login
Infisc
infisc
Payload DPS Nacional padrão via REST JSON (suporta B2C e NIF/motivoAusenciaNif)B2C opcional · Exterior: NIF ou motivoAusenciaNif (0, 1 ou 2)Certificado digital PFX para mTLS e XMLDSig. Endpoint por município via endpointProd/endpointHom.REST JSON + mTLS (DPS GZip B64)
Tiplan
tiplan
Payload DPS Nacional padrão; suporta B2C, NIF/motivoAusenciaNif e IBS/CBSB2C opcional · Exterior: NIF ou motivoAusenciaNif (0, 1 ou 2)Inscrição Municipal, CNAE padrão e certificado A1 ICP-Brasil para mTLS e XMLDSigREST JSON + mTLS (DPS GZip B64)
Elotech / Oxy ISS
elotech
Payload padrão da APIB2C opcional · Exterior: Não suportado sem CPF/CNPJ brasileiroInscrição Municipal e certificado A1; Senha de webservice cadastrada no portal Oxy ISS do municípioSOAP 1.1 + XMLDSig + Oxy Auth

Política de Tomador por Engine (B2C Não Identificado & Exterior)

O contrato da API suporta emissão para consumidor final (B2C sem tomador identificado) em 43 das 45 engines basta omitir o bloco tomador (ou enviar tomador: {}). O validador aplica validação fail-closed (HTTP 400) conforme a capacidade real do serializer XML/posicional de cada provedor:

Grupo de EnginesSistemas (sistema_nfse)Tomador B2C (Omitido)Tomador no Exterior
DPS Nacional / SPED (9)snnfse, pronim_snnfse, el_nacional, issnet_nacional, tiplan, infisc, coplan, betha, tbwOpcional (suporta B2C sem <toma>)Suporte completo: tomador.nif ou tomador.motivoAusenciaNif (0 | 1 | 2) + tomador.nome
ABRASF com <NifTomador> (4)el, dbseller, gissonline, campograndeOpcional (suporta B2C sem <Tomador>)Exige tomador.nif explícito + tomador.nome (rejeita motivoAusenciaNif sem NIF com HTTP 400)
ABRASF / Municipais Padrão (30)sp_prefeitura, ginfes, fiorilli, webiss, dsf, centi, tinus, salvador, brasilia_df, issnet, speedgov, sigep, hm2, pronim_abrasf, simpliss, elotech, futurize, megasoft, tributus, sintese, fisco, saatri, abase, aspec, equiplano, publicsoft, govdigital, agili, tecnos, conamOpcional (suporta B2C sem tomador ou com placeholder municipal)Quando o tomador é identificado, o XSD municipal exige cpf ou cnpj brasileiro (rejeita apenas NIF/motivoAusenciaNif com HTTP 400)
Layout Estrito — Obrigatório (2)barueri, atendenetObrigatório (rejeita emissão sem tomador com HTTP 400)barueri: aceita CPF, CNPJ ou tomador.nif explícito (Tipo 3 estrangeiro).
atendenet: exige CPF ou CNPJ brasileiro.

⚠️ Operações Fiscais que Exigem Tomador Identificado em Qualquer Município

Mesmo nas 43 engines que suportam B2C sem tomador, a identificação do tomador (documento + nome) torna-se obrigatória e retorna HTTP 400 se omitida quando: (1) houver retenção de ISS (valores.issRetido = true), (2) for exportação de serviço (servico.localPrestacao.codigoPais != "BR"), ou (3) o serviço for 170501 (cessão de mão de obra) tributável (tribISSQN = 1, regra nacional E0314). Enviar tomador parcialmente preenchido (ex.: apenas email ou nome sem documento) também é rejeitado com HTTP 400.

Desdobro Municipal (cTribMun) — SNNFSE

Alguns municípios aderentes ao SNNFSE exigem que, além do código nacional (cTribNac), seja informado um desdobro municipal de 3 dígitos (cTribMun) que identifica o serviço no catálogo local da prefeitura.

✅ Resolução Automática (padrão)

A Notaas resolve o cTribMun automaticamente — você não precisa fazer nada. O sistema consulta a tabela de correlação do município e injeta o primeiro desdobro encontrado no XML antes de enviar ao SNNFSE.

🔧 Override Manual (opcional)

Se um cTribNac possui múltiplos desdobros e você precisa selecionar um específico, informe servico.codigoTributacaoMunicipal no request. O valor informado será usado no lugar do automático. Exemplo:

"servico": {
  "codigo": "170601",
  "codigoTributacaoMunicipal": "002",
  "descricao": "Agenciamento de veiculação"
}

Consultar Desdobros por cTribNac

Informe um cTribNac para verificar os desdobros disponíveis nos municípios de referência.

Informe o cTribNac (6 dígitos) para consultar os desdobros disponíveis neste município. O primeiro desdobro é usado automaticamente; informe servico.codigoTributacaoMunicipal para override.

Via API: GET /api/v1/codigos?codigo=170601&ibge=3106200

Busca de Cobertura por Município

Busque qualquer um dos 5.571 municípios brasileiros para ver o status de cobertura, a engine responsável, os campos específicos e um payload de exemplo já customizado para a cidade selecionada.

Digite ao menos 2 caracteres do nome do município (acentos são ignorados) ou o código IBGE de 7 dígitos, ou clique em um atalho acima.

Via API: GET /api/v1/cobertura/cidades?q=guarulhos