Cómo se valida un DNI o NIE en España

El algoritmo oficial de la letra de control: cómo funciona, cómo calcularlo y por qué detecta errores tipográficos.

La letra de control del DNI

La letra al final del DNI español no es aleatoria: se calcula a partir del número mediante un algoritmo módulo 23 establecido por el Ministerio del Interior. Su función es detectar errores tipográficos — si alguien escribe mal un dígito, la letra resultante no coincidirá y el error queda en evidencia de inmediato.

El NIE (Número de Identidad de Extranjero) usa el mismo algoritmo, con la particularidad de que su primera letra (X, Y o Z) se sustituye por un número antes de aplicar el cálculo.

El algoritmo paso a paso

Para el DNI

  • Toma los 8 dígitos numéricos del DNI.
  • Divide entre 23 y obtén el resto.
  • Busca ese resto en la tabla de 23 letras.
  • Esa es la letra de control correcta.

Para el NIE

  • Sustituye la primera letra: X→0, Y→1, Z→2.
  • Aplica el mismo cálculo que el DNI.
  • La última letra del NIE debe coincidir con el resultado.

Tabla de restos y letras (posición 0–22):

T · R · W · A · G · M · Y · F · P · D · X · B · N · J · Z · S · Q · V · H · L · C · K · E

Las letras I, Ñ, O y U no aparecen para evitar confusión con dígitos.

Ejemplo de validación

DNI con número 12345678:

12345678 ÷ 23 = 536.768... → resto 14

Posición 14 en la tabla → letra Z

DNI correcto: 12345678-Z

Si la letra del documento no es Z, hay un error en el número o en la letra.

Preguntas frecuentes

¿Cómo se calcula la letra del DNI?

Se divide el número del DNI entre 23 y se obtiene el resto. Ese resto corresponde a una posición en la cadena TRWAGMYFPDXBNJZSQVHLCKE. Por ejemplo, si el resto es 0 la letra es T, si es 1 es R, y así sucesivamente.

¿Cómo se valida un NIE?

El NIE empieza por X, Y o Z. Para validarlo se sustituye la primera letra por su equivalente numérico (X=0, Y=1, Z=2) y se aplica el mismo algoritmo que el DNI: se divide entre 23 y se busca el resto en la tabla TRWAGMYFPDXBNJZSQVHLCKE.

¿Qué letras nunca pueden aparecer en un DNI?

Las letras I, Ñ, O y U nunca aparecen como letra de control de un DNI o NIE para evitar confusiones visuales con los números 1, 0 y otros caracteres similares. La tabla válida solo contiene 23 letras: T, R, W, A, G, M, Y, F, P, D, X, B, N, J, Z, S, Q, V, H, L, C, K, E.

¿Sirve el validador para comprobar si un DNI es real?

No. El validador comprueba que el formato y la letra de control son correctos matemáticamente, pero no verifica que el DNI esté asignado a una persona real ni que exista en los registros oficiales.

👉 Valida también números de cuenta bancaria con el validador de IBAN.