CEP da retirada na NF-e: oito dígitos e conferência do endereço
<CEP>retirada › CEPRevisão editorial em 27 de set. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
retirada/CEP informa o código postal do endereço de onde a mercadoria é retirada. É um campo opcional, com oito dígitos, sem hífen, espaço ou outra máscara. Seus zeros à esquerda precisam ser preservados. Ele pertence ao local de origem física, e não ao endereço do destinatário ou ao local de entrega. MOC 7.0, campo F10, p. 16.
De qual endereço vem o CEP
O dado deve vir do cadastro ou da documentação do local de retirada selecionado para a operação. Um cadastro de cliente pode conter um CEP correto para o cliente e incorreto para o depósito de saída. Por isso, a conferência começa pela identidade do local e continua pelo conjunto logradouro, número, bairro, município e UF.
O grupo retirada só é indicado pelo MOC quando esse endereço é diferente do endereço do remetente. Dentro dele, o CEP tem ocorrência zero ou uma; o fato de existir cadastro postal não torna obrigatória a criação de um grupo que não corresponde à operação. Também não há inferência segura de que toda mercadoria retirada por um comprador exige esse grupo: o que importa é o endereço documentado e o modelo da nota.
Na NFC-e e na NF-e com DANFE Simplificado Tipo 2 (tpImp=6), a regra F01-10 da NT 2026.002 v1.10a, p. 11 trata a presença de retirada como indevida, com rejeição 669. Essa é uma restrição do grupo inteiro, não uma exigência de preencher ou apagar apenas o CEP. A linha de cronograma que inclui F01-10 prevê teste 01/07/2026 e produção 03/08/2026; não atribua 05/10/2026 a esse campo. O diagnóstico precisa conferir também ambiente e autorizador.
Como preservar os oito dígitos
No XML, o CEP é uma sequência textual que corresponde ao padrão [0-9]{8} no TLocal do pacote anterior 010c v1.30. A forma de exibição no cadastro pode ter máscara, mas a representação XML não a inclui.
| Situação sintética | Consequência técnica |
|---|---|
Cadastro mostra 01234-567 |
A representação sem máscara é 01234567, preservando o zero |
Conversão para inteiro produz 1234567 |
Foram perdidos um dígito e o comprimento esperado |
XML contém 01234-567 |
O hífen não pertence ao padrão de oito dígitos |
| Não há CEP confirmado para o local | Não inventar um código; campo opcional sem conteúdo é omitido |
Esse exemplo demonstra formato, não existência postal. Não há promessa de que 01234567 corresponda a um endereço. Não complete um código curto com zeros por tentativa: primeiro confirme qual era o valor cadastral verdadeiro e se o problema foi uma conversão numérica.
Um CEP que respeita o comprimento pode continuar errado para a operação. A validação por expressão regular não consulta a base postal, não prova vínculo com cMun e não confirma o estabelecimento expedidor.
Onde fica a tag e como interpretar o exemplo
O caminho no XML processado é /nfeProc/NFe/infNFe/retirada/CEP. Dentro do grupo, CEP vem após a UF obrigatória e antes de cPais, se o código do país for informado. Não procure uma tag enderRetirada: o endereço está diretamente dentro de retirada.
Fragmento sintético e parcial, que apenas localiza o campo e demonstra o formato; não é um grupo completo nem uma nota pronta para transmissão:
<retirada xmlns="http://www.portalfiscal.inf.br/nfe">
<!-- Identificação e demais campos do endereço foram omitidos. -->
<CEP>01234567</CEP>
</retirada>
Uma consulta XPath deve vincular o namespace da NF-e a um prefixo. Sem esse cuidado, a consulta pode não encontrar o campo mesmo que ele exista. Outra falha possível é buscar apenas CEP e obter dest/enderDest/CEP ou entrega/CEP; os três caminhos têm destinatários cadastrais diferentes. O artigo do grupo retirada mostra a sequência completa com um exemplo de endereço.
CEP, município e país são códigos diferentes
O CEP tem oito dígitos e pertence ao sistema postal. cMun tem sete dígitos e vem da tabela de municípios do IBGE. cPais vem da tabela de países utilizada pela NF-e. Nenhum deles deve ser copiado para a tag de outro domínio.
Em um local realmente no exterior, os marcadores do MOC são UF=EX, cMun=9999999 e xMun=EXTERIOR. Esses marcadores não fornecem um CEP brasileiro. Um código postal estrangeiro pode ter letras ou extensão diferente e não deve ser forçado para CEP como se a expressão regular aceitasse qualquer postal code. Confirme a informação aplicável ao local e represente os dados no leiaute correspondente.
O CEP foi rejeitado ou saiu errado: por onde começar
Primeiro confira a mensagem completa e o XPath afetado. Falha de comprimento ou presença de hífen é problema estrutural. Um município inexistente ou incompatível com a UF tem regras próprias F07-20/F07-30; não atribua as rejeições 276/277 ao CEP apenas porque o endereço contém essa tag.
Compare o CEP do local escolhido com a prévia XML. Se o cadastro contém oito dígitos e a prévia contém sete, investigue o tipo da coluna, a importação ou a transformação que eliminou zeros. Se a prévia está igual ao cadastro, mas o endereço pertence a outro estabelecimento, a causa pode estar na seleção do local. Se dois grupos têm o mesmo CEP inesperadamente, examine cópia entre cadastro de destinatário e cadastro de expedidor.
Corrija a origem comprovadamente incorreta e gere uma nova prévia para comparar comprimento, máscara e endereço. Não altere XML assinado nem retransmita por tentativa. A confirmação de local de saída em operações com depósitos ou terceiros precisa do pedido, do cadastro do expedidor e dos documentos operacionais; o CEP isolado não define o tratamento fiscal dessa operação.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/retirada/CEP- 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:xs:string · string
- Preenchimento no catálogo
- Opcional
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]{8}- whiteSpace
preserve