cPais da retirada na NF-e: código BACEN, formato e rejeição 970
<cPais>retirada › cPaisRevisão editorial em 27 de set. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
retirada/cPais informa o código do país do local de retirada, no domínio da tabela de países BACEN utilizada pela NF-e. É opcional dentro de retirada. Não é o DDI do telefone, a sigla ISO do país nem um código cadastral de outro sistema. Na NF-e modelo 55, um código informado que não existe na tabela de apoio pode gerar 970 — Código de País inexistente [local de retirada/entrega]. MOC 7.0, F11 e F11-10, pp. 16 e 87.
Qual país a tag descreve
O país corresponde à localização física da retirada. Se a mercadoria sai de um local no Brasil para um comprador no exterior, não se deve copiar automaticamente o país do comprador para retirada/cPais. Os participantes e os pontos físicos ocupam campos diferentes na nota.
O emissor pode obter o país do cadastro do expedidor/local e convertê-lo pelo domínio oficial da NF-e. Uma integração que recebe BR ou um ID próprio de cadastro precisa fazer essa associação; transmitir o ID interno como se fosse o código BACEN produz um valor de outra natureza.
O grupo retirada tem ocorrência 0–1 e se aplica a endereço diferente do remetente. Na NFC-e e na NF-e tpImp=6, F01-10/669 da NT 2026.002 v1.10a, p. 11 restringe a presença do grupo inteiro. A linha que inclui essa regra tem teste 01/07/2026 e produção 03/08/2026; não transforma cPais em campo proibido isoladamente em qualquer modelo ou autoriza criar o grupo só para registrar país.
Por que o MOC mostra quatro posições e o XSD admite de uma a quatro
O leiaute F11 apresenta tamanho 4. O TLocal/cPais do pacote anterior 010c v1.30 usa padrão [0-9]{1,4}, aceitando lexicalmente entre um e quatro dígitos. A regra F11-10 acrescenta que o código pode conter zeros não significativos. Esses são níveis diferentes de conferência: formato não prova que um código esteja na tabela.
Use o código oficial do país na tabela de apoio aplicável. Não deduza um código curto cortando a última posição, nem acrescente um dígito pelo próprio cálculo. A Visão Geral do MOC7, seção 8.3, pp. 131–132 mostra Brasil 1058 e explica que aplicações devem usar os códigos da tabela sem validação do DV, inclusive porque há países com dígitos que não seguem a validação matemática esperada.
O próprio MOC usa 105 como base no exemplo de cálculo do dígito do Brasil: os produtos 4 + 0 + 10 somam 14; o resto da divisão por 11 é 3 e 11 − 3 resulta no DV 8. A tabela apresenta o código completo 1058. A base usada na demonstração não autoriza enviar 105 como substituto de 1058 nem calcular códigos por conta própria, pois o MOC manda utilizar os valores da tabela sem validar DV.
Para diagnósticos históricos, a Visão Geral do MOC orienta considerar a data de emissão ao verificar a validade do país. Registre a versão da tabela utilizada e a data da nota; um código ter existido em outra versão não prova sua aceitação no cenário analisado.
Exemplo comentado do país no XML
Fragmento sintético e parcial, limitado à representação de país. Os campos obrigatórios da identificação e do endereço não são mostrados. Não é documento pronto para transmissão:
<retirada xmlns="http://www.portalfiscal.inf.br/nfe">
<!-- Identificação e endereço de retirada foram omitidos. -->
<cPais>1058</cPais>
<xPais>Brasil</xPais>
</retirada>
O valor 1058 é o exemplo de Brasil na tabela 8-3 do MOC. xPais fornece a descrição textual do mesmo país; é outro campo opcional, não a origem do código por adivinhação. O exemplo explica o domínio, sem atribuir um estabelecimento real ou certificar uma nota.
No arquivo processado, o XPath é /nfeProc/NFe/infNFe/retirada/cPais. Na sequência do grupo, cPais aparece depois de CEP e antes de xPais, quando esses opcionais existirem. Uma busca genérica por cPais também pode encontrar dest/enderDest/cPais, emit/enderEmit/cPais ou entrega/cPais; confira o ancestral.
País e marcadores do exterior se complementam
Para um local exterior, o MOC indica UF=EX, cMun=9999999 e xMun=EXTERIOR. O código de país descreve a qual país pertence esse local, quando informado. O número 9999999 não pode ser usado em cPais: ele é um marcador municipal, com outro formato e finalidade.
O país Brasil e o marcador EX não devem ser combinados por uma regra automática que misture endereço nacional de expedidor e destino estrangeiro. Se esse conjunto aparecer inesperadamente na prévia, confirme de qual cadastro cada campo foi obtido. A conferência geográfica é técnica; decidir como documentar uma operação internacional depende da movimentação e dos documentos pertinentes, não apenas de uma tag.
Como investigar a rejeição 970
F11-10, na NT 2018.005 v1.40, seção 4.1 e no MOC se aplica ao modelo 55, quando retirada/cPais é informado e o código é inexistente na tabela BACEN. A mesma mensagem também atende à entrega pela regra G11-10. Não suponha que a causa está na retirada se existem dois locais informados.
Confira o XML efetivo, localize ambos os grupos e compare cada código com a tabela oficial. Separe um número de domínio errado, como DDI, um ID interno da integração, um código de outra versão e uma conversão que alterou o valor. Um código com quatro dígitos pode continuar inexistente; um código com zeros não significativos precisa ser interpretado conforme a regra, sem afirmar que toda sequência curta é válida.
Se a informação está correta no cadastro e errada no XML, investigue associação de tabela e serialização. Se está errada também no cadastro, confirme país e código verdadeiro do local antes de corrigir a origem. Confira uma nova prévia e preserve a data e versão de referência. Não tente outros códigos para obter autorização, não edite XML assinado nem retransmita sem diagnóstico.
Veja também nome do país da retirada e UF da retirada para aprofundar a descrição e os marcadores associados.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/retirada/cPais- 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]{1,4}- whiteSpace
preserve