cMun do destinatário na NF-e: código IBGE e rejeições 274 e 275
<cMun>dest › enderDest › cMunRevisão editorial em 27 de set. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
dest/enderDest/cMun informa o código do município do endereço do destinatário. Para endereço no Brasil, usa o código IBGE de sete dígitos. Para endereço efetivamente exterior, a representação documentada é 9999999, acompanhada de xMun=EXTERIOR e UF=EX.
O campo ocorre uma vez e é obrigatório quando o grupo enderDest existe. No XML processado, o caminho é /nfeProc/NFe/infNFe/dest/enderDest/cMun, no namespace http://www.portalfiscal.inf.br/nfe.
Código do município vem da tabela IBGE
O código deve corresponder ao município confirmado no endereço do destinatário. Não é calculado a partir do CEP, do número da rua, do CPF/CNPJ ou da inscrição estadual. A integração pode obtê-lo de uma tabela oficial de municípios e relacioná-lo ao cadastro; um identificador interno da tabela do sistema não pode ser usado no lugar do código IBGE.
O formato de sete dígitos é somente a primeira conferência. Além de caber no campo, o município precisa existir na tabela aplicável e corresponder à UF. Os dois primeiros dígitos do código identificam a unidade federativa. O nome da cidade, por si só, pode ser ambíguo; confirme código, nome e UF juntos.
Por exemplo, a resposta da API oficial de localidades do IBGE para Curitiba identifica 4106902, nome Curitiba, UF PR e código da UF 41. Essa consulta comprova a identidade do município, não o endereço de um cliente específico. MOC 7.0, E10, p. 14 e regras pp. 83–84.
Mesmo nome, endereços diferentes
emit/enderEmit/cMun identifica o município do emitente. dest/enderDest/cMun identifica o do destinatário. entrega/cMun e retirada/cMun representam os locais físicos correspondentes. ide/cMunFG é o município de ocorrência do fato gerador no contexto próprio do campo; não é um apelido do endereço do cliente.
O código postal CEP também é outro identificador, com oito dígitos. Copiar sete posições de um CEP para cMun não produz um município válido. Um distrito ou bairro pertence à organização do endereço, mas não substitui o código do município ao qual está vinculado.
Se a mercadoria é entregue em outra cidade, isso não muda automaticamente dest/enderDest/cMun: primeiro identifique o endereço da pessoa destinatária e os grupos admitidos para o local físico real. A localização por si só não define tratamento fiscal ou CFOP.
Exemplo parcial e conferência dos três componentes
Este fragmento parcial e sintético demonstra o código com nome e UF. Omite os demais campos de endereço, portanto não é um enderDest completo nem está pronto para transmissão:
<enderDest xmlns="http://www.portalfiscal.inf.br/nfe">
<cMun>4106902</cMun>
<xMun>Curitiba</xMun>
<UF>PR</UF>
</enderDest>
O código tem sete algarismos e prefixo 41, coerente com PR. Se o cadastro estivesse com o mesmo cMun e UF=SP, haveria incompatibilidade entre o município e a UF. Se estivesse com o nome de outra cidade, o código ainda apontaria para Curitiba: alterar apenas xMun não muda o significado de cMun.
O próximo passo é comparar esse conjunto com o endereço real. Não troque o nome ou a UF para acompanhar um código que também pode ter sido escolhido incorretamente.
Endereço exterior: 9999999 não é código de cidade
Em um endereço no exterior, o MOC utiliza 9999999 e os marcadores de nome/UF correspondentes. Fragmento parcial e sintético, também sem os demais campos de endereço:
<enderDest xmlns="http://www.portalfiscal.inf.br/nfe">
<cMun>9999999</cMun>
<xMun>EXTERIOR</xMun>
<UF>EX</UF>
</enderDest>
O marcador não identifica a cidade estrangeira e não é um fallback para município brasileiro não encontrado. Confira país e componentes reais do endereço no contexto apropriado. A natureza exterior ou equiparada da operação e idDest têm regras próprias; não se altera o endereço da pessoa para acompanhar um indicador fiscal sem conferir a operação.
Diagnóstico por código de retorno
| Código | Condição documentada | O que comparar |
|---|---|---|
| 274, E10-10 | Modelos 55/65, UF diferente de EX, município inexistente na tabela IBGE |
Código efetivamente enviado e município real na tabela |
| 275, E10-20 | Modelos 55/65, UF diferente de EX, duas primeiras posições do município diferentes do código da UF |
cMun, UF e identificação oficial do município |
| 509, E10-30 | Modelo 55, UF EX, código diferente de 9999999 |
Marcadores do endereço exterior e origem do dado |
| 482, 7E10-10 | Modelos 55/65, regra facultativa de divergência do município cadastrado na UF | XML, cadastro estadual do destinatário e consulta datada |
O código 482 não significa necessariamente que o município inexiste: pode existir e divergir do cadastro do destinatário. A natureza facultativa dessa validação impede tratá-la como prova de que todas as UFs realizam a mesma comparação em qualquer operação. MOC 7.0, pp. 83–84 e 138.
Preserve modelo, ambiente, data e mensagem completa. Compare a origem do endereço, o registro de município no cadastro e a saída da integração. Erro de formato, código interno serializado no lugar do IBGE, UF de outro cadastro e divergência estadual exigem verificações distintas. Corrija a origem comprovada e confira os três componentes na geração pertinente ao fluxo autorizado.
Não use 9999999 para dispensar uma cidade brasileira. Não altere dados verdadeiros, edite XML assinado ou retransmita para testar combinações. Se o endereço oficial do destinatário ou a natureza da operação estiver em dúvida, a confirmação exige cadastro e documentação comercial; um código que passa no XSD não resolve essa escolha.
Campos relacionados
enderDest no contexto do destinatário, UF no contexto do destinatário, xMun no contexto do destinatário, CEP no contexto do destinatário.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/dest/enderDest/cMun- Namespace
http://www.portalfiscal.inf.br/nfe- Leiaute
- 4.00 · PL_010e_v1.02
- Ocorrências no XSD
- 1–1 no contexto do elemento pai
- Tipo
- TCodMunIBGE · string
- 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.
- pattern
[0-9]{7}- whiteSpace
preserve