Pular para o conteúdo
Fiscal ProBiblioteca
NF-e e NFC-e · IPI, II e ISSQN

cServico no ISSQN: código municipal do serviço na NF-e

<cServico>det › imposto › ISSQN › cServico

Revisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.

cServico, em /nfeProc/NFe/infNFe/det/imposto/ISSQN/cServico, informa o código do serviço prestado dentro do município. Ele representa a codificação municipal; não é necessariamente igual ao item da lista de serviços em cListServ.

Qual cadastro fornece o código

A definição do MOC é código do serviço prestado dentro do município. Sua origem precisa corresponder ao cadastro/tabela municipal pertinente à prestação. Não existe, no campo, uma autorização para adotar a numeração interna do emissor ou copiar automaticamente CNAE, NCM e cListServ. Fonte: MOC 7.0 — Anexo I 7.00, novembro/2020, U13, p. 57.

Para conferir, identifique o município, o serviço efetivo, a classificação já confirmada e a versão do cadastro local. Dois municípios podem usar códigos distintos para prestações semelhantes. O vínculo entre item da lista e código municipal deve ser confirmado, sem inventar uma regra universal de conversão.

Formato textual e exemplo

O XSD torna cServico opcional e permite de 1 a 20 caracteres conforme TString. Não é um inteiro com largura fixa. Preserve letras, sinais e zeros que façam parte do código oficial, sem acrescentar máscara por conta própria. O elemento vem depois de indISS e antes de cMun, quando esses opcionais existem. Fonte: XSD NF-e/NFC-e PL_010f_v1.04, ISSQN/cServico, linhas 4516–4527.

Fragmento parcial com código fictício, sem designar cadastro municipal:

<cServico xmlns="http://www.portalfiscal.inf.br/nfe">SERV-MUNIC-01</cServico>

A string ilustra tamanho e posição. A aprovação pelo tipo textual não demonstra que ela exista no município ou corresponda à prestação.

Como conferir um código trocado na integração

Compare o código municipal confirmado com o cadastro do serviço e o XML transmitido. Verifique se houve troca com cListServ, perda de zeros ou uso de código cadastrado para outra cidade. O campo opcional não deve receber um marcador genérico para esconder cadastro ausente.

Se a definição do serviço ou sua classificação está em dúvida, reúna contrato e descrição da atividade para avaliação responsável. Se o código já está confirmado e a transformação está errada, corrija o mapeamento correspondente. Uma NFS-e pode utilizar codificação ou contrato próprios; não conclua equivalência entre documentos apenas porque ambos têm um campo chamado código de serviço.

Referência técnica para integração

XPath completo
/nfeProc/NFe/infNFe/det/imposto/ISSQN/cServico
Namespace
http://www.portalfiscal.inf.br/nfe
Leiaute
4.00 · PL_010e_v1.02
Ocorrências no XSD
0–1 no contexto do elemento pai
Tipo
inline:TString · TString
Preenchimento no catálogo
Condicional

A ocorrência vale dentro da estrutura XML: um campo obrigatório em um grupo opcional não torna esse grupo obrigatório. A aplicação fiscal depende da operação e da versão da regra.

maxLength
20
minLength
1
pattern
[!-ÿ]{1}[ -ÿ]{0,}[!-ÿ]{1}|[!-ÿ]{1}
whiteSpace
preserve