cDV da NF-e: cálculo módulo 11 e CNPJ alfanumérico
<cDV>ide › cDVRevisão editorial em 27 de set. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
O cDV é o último caractere da chave de acesso: um dígito de 0 a 9 obtido pelo cálculo módulo 11. Ele é obrigatório na identificação da NF-e e da NFC-e. Ter um dígito com o formato correto não basta; seu valor deve coincidir com o resultado calculado sobre os outros componentes da chave. A regra B23-10 retorna 253 — Dígito Verificador da chave de acesso composta inválida quando essa conferência falha. Leiaute e validação de cDV
Nesta página: componentes da chave, cálculo com exemplo oficial, CNPJ alfanumérico e diagnóstico.
O que o cDV verifica
O DV ajuda a detectar inconsistência na formação da chave. Ele não confirma existência da nota, autorização de uso, assinatura ou tratamento tributário correto.
Não confunda:
| Verificador | Dados sobre os quais opera |
|---|---|
cDV da chave |
Primeiras 43 posições da chave de acesso |
| Dois DVs do CNPJ | Identificação do CNPJ, com seu algoritmo próprio |
| DV do código de barras | Símbolos codificados no CODE-128, com módulo 103 |
O DV do código de barras pode ter valor e representação próprios. Não o copie para ide/cDV. MOC, cálculo da chave NT Conjunta, pp. 9–11
Monte primeiro as 43 posições sem o DV
A chave tem 44 posições ao final. Antes de calcular cDV, concatene os componentes nesta ordem e com estas larguras:
| Componente | Posições |
|---|---|
cUF |
2 |
Ano e mês de dhEmi, em AAMM |
4 |
| CNPJ do emitente, ou representação prevista para CPF | 14 |
mod |
2 |
serie |
3 |
nNF |
9 |
tpEmis |
1 |
cNF |
8 |
| Subtotal antes do DV | 43 |
cDV calculado |
1 |
A largura na chave pode diferir da escrita do campo XML: um nNF de 780 ocupa 000000780 na chave. Não inclua pontuação, espaços, hífens nem o prefixo NFe do atributo Id no cálculo. Para CPF, o MOC prevê completar a identificação para 14 posições com zeros à esquerda. A chave deve respeitar o tipo de identificação realmente usado. Composição, seção 2.2.6 do MOC
Existe uma exceção específica na conferência de Id: para NF-e avulsa com série de 890 a 899, a A03-10 considera o CNPJ da SEFAZ emitente na chave. Isso não autoriza usar o CNPJ da SEFAZ na chave de uma emissão comum. A03-10
Cálculo demonstrado com o exemplo oficial
O MOC mostra este conjunto histórico de 43 dígitos antes do DV:
5206043300991100250655012000000780026730161
É o exemplo do manual, reproduzido para explicar a conta. Não representa uma emissão preparada por este guia, não comprova autorização e não deve ser usado para preencher uma nota do leitor.
O procedimento é:
- Comece no último caractere da base, à direita, com peso 2.
- Caminhe para a esquerda com pesos 3, 4, 5, 6, 7, 8 e 9. Depois do 9, volte ao 2.
- Multiplique cada dígito pelo seu peso e some os produtos.
- Calcule o resto da soma dividida por 11.
- Se o resto for 0 ou 1, o DV será 0. Nos demais casos, será
11 − resto.
A tabela agrupa a mesma conta da esquerda para a direita apenas para facilitar a conferência. Os grupos não alteram o algoritmo; a distribuição dos pesos começou na direita da base inteira.
| Trecho da base | Pesos nas posições, da esquerda para a direita | Soma dos produtos |
|---|---|---|
52060433 |
4, 3, 2, 9, 8, 7, 6, 5 | 141 |
00991100 |
4, 3, 2, 9, 8, 7, 6, 5 | 114 |
25065501 |
4, 3, 2, 9, 8, 7, 6, 5 | 157 |
20000007 |
4, 3, 2, 9, 8, 7, 6, 5 | 43 |
80026730 |
4, 3, 2, 9, 8, 7, 6, 5 | 165 |
161 |
4, 3, 2 | 24 |
| Total | 644 |
No primeiro trecho, por exemplo, a conta é 5×4 + 2×3 + 0×2 + 6×9 + 0×8 + 4×7 + 3×6 + 3×5 = 141.
A conclusão é 644 = 58×11 + 6. O resto é 6; portanto, cDV = 11 − 6 = 5. A chave ilustrativa do manual termina em 5:
52060433009911002506550120000007800267301615
Esse resultado reproduz a soma, o resto e o DV publicados nas páginas 19–20 do MOC. O cálculo correto do DV não torna os demais componentes dessa chave adequados para uma emissão atual. Exemplo oficial do MOC
O campo correspondente poderia ser localizado por este fragmento:
<cDV xmlns="http://www.portalfiscal.inf.br/nfe">5</cDV>
É somente uma representação parcial do DV daquele exemplo; não é um documento XML completo ou pronto para transmissão.
Cálculo com CNPJ alfanumérico
A chave mantém 44 posições. A expressão regular prevista na NT Conjunta é [0-9]{6}[A-Z0-9]{12}[0-9]{26}: as letras ficam nas primeiras 12 posições do CNPJ dentro da chave. Não podem aparecer livremente em UF, data, modelo, série, número, tipo de emissão, cNF ou cDV. NT Conjunta, p. 8 NT 2026.004
Para a soma ponderada, converta cada caractere original para seu código ASCII menos 48:
| Caractere | ASCII | Valor utilizado |
|---|---|---|
0 |
48 | 0 |
9 |
57 | 9 |
A |
65 | 17 |
B |
66 | 18 |
Cada letra continua ocupando uma posição e recebendo um peso. Se uma posição contém A e recebe peso 4, sua contribuição é 17×4=68; não se deve transformar A nos caracteres “1” e “7” e atribuir dois pesos. Isso alteraria a extensão da base e o cálculo. Os dígitos numéricos conservam os mesmos valores do cálculo anterior. Algoritmo do Anexo II, p. 15
Calcule o DV sobre as 43 posições anteriores a ele, usando um valor e um peso por caractere original. Depois compare o resultado com a última posição da chave: o próprio DV não participa da soma ponderada. Algoritmo do Anexo II, p. 15
Os cronogramas são distintos: a NT Conjunta prevê produção em 06/07/2026, e a NT 2026.004 prevê a alteração do schema em 01/07/2026. Ambos são anteriores ao corte deste artigo, 26/09/2026, mas a aceitação estrutural de letras não comprova inscrição válida nem autorização de uso de uma nota. Cronograma da NT Conjunta Cronograma da NT 2026.004
Diagnóstico de 253 e de chave divergente
Na rejeição 253, preserve o XML e o retorno originais e compare:
- Os componentes exatos usados na montagem: UF, AAMM, identificação do emitente, modelo, série, número, tipo de emissão e código numérico.
- A quantidade de posições de cada componente, incluindo zeros à esquerda na chave.
- O início dos pesos na direita e a exclusão do DV da soma.
- O tratamento de letras por ASCII menos 48, se houver CNPJ alfanumérico.
- O resultado calculado e o conteúdo de
ide/cDV.
Se o cálculo coincide com cDV, mas infNFe/@Id contém outra chave, investigue também a formação de Id: a A03-10 compara esse identificador com os campos do documento e está associada à rejeição 502 — Campo Id não corresponde à concatenação dos campos correspondentes. Um DV correto de uma chave diferente não resolve essa divergência. A03-10 e B23-10
A correção deve manter todos os componentes coerentes na geração do documento antes da assinatura. Não edite um XML assinado e não altere UF, número, emitente ou tipo de emissão apenas para fazer a conta coincidir. Se já existe documento autorizado, preserve-o e apure a origem da divergência no sistema; esta explicação não orienta transmissão ou substituição fiscal.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/ide/cDV- 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
- inline:xs:string · string
- Preenchimento no catálogo
- Obrigatório
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}- whiteSpace
preserve