Tutorial · Negocios y finanzas
Cómo validar un NIF, NIE o CIF español
El NIF, el NIE y el CIF españoles llevan un dígito o letra de control calculado con un algoritmo matemático. Eso significa que puedes verificar si un documento de identidad es formalmente válido sin acceder a ninguna base de datos: basta aplicar la fórmula.
Esta validación es útil para detectar errores de transcripción en facturas, formularios y contratos antes de que causen problemas con Hacienda o con clientes. En esta guía aprenderás los tres algoritmos con ejemplos resueltos paso a paso. Y para la gestión financiera de tu negocio, la plantilla gratuita de flujo de caja de Tótem (usatotem.com/herramientas-negocios/flujo-caja/) te ayuda a prever tus cobros y pagos mes a mes.
Qué significan NIF, NIE y CIF
El NIF (Número de Identificación Fiscal) es el DNI de los españoles más su letra de control: 8 dígitos más una letra. Es el identificador fiscal de las personas físicas españolas.
El NIE (Número de Identidad de Extranjero) identifica a los extranjeros en España: una letra inicial (X, Y o Z), 7 dígitos y una letra de control calculada igual que la del DNI.
El CIF (Certificado de Identificación Fiscal, hoy denominado NIF de persona jurídica) identifica a empresas y entidades: una letra según el tipo de entidad, 7 dígitos y un carácter de control que puede ser número o letra.
La validación que aprenderás aquí comprueba la coherencia matemática del documento: detecta dígitos erróneos o letras incorrectas. No confirma que la persona o empresa exista realmente —para eso están los servicios oficiales—, pero elimina la gran mayoría de errores de transcripción.
Paso 1: Validar un DNI/NIF (la letra del DNI)
El algoritmo: divide el número de 8 dígitos entre 23, quédate con el resto y busca la letra correspondiente en la tabla oficial: TRWAGMYFPDXBNJZSQVHLCKE (posición 0 = T, 1 = R, 2 = W, 3 = A, 4 = G, 5 = M, 6 = Y, 7 = F, 8 = P, 9 = D, 10 = X, 11 = B, 12 = N, 13 = J, 14 = Z, 15 = S, 16 = Q, 17 = V, 18 = H, 19 = L, 20 = C, 21 = K, 22 = E).
Ejemplo: verificar 12345678Z. Calcula 12345678 mod 23: 23 × 536768 = 12345664; resto = 12345678 − 12345664 = 14. La posición 14 de la tabla es la Z. La letra coincide: el NIF es formalmente válido.
Si el documento fuera 12345678A, el resto 14 correspondería a la Z, no a la A: habría un error de transcripción en la letra o en algún dígito.
Paso 2: Validar un NIE
El NIE se valida igual que el DNI, sustituyendo primero la letra inicial por un número: X → 0, Y → 1, Z → 2.
Ejemplo: verificar X1234567L. Sustituye la X por 0: queda 01234567, es decir, 1234567. Calcula 1234567 mod 23: 23 × 53659 = 1234157; resto = 1234567 − 1234157 = 410; 410 − 23 × 17 (391) = 19. La posición 19 de la tabla es la L. Coincide: NIE válido.
Ejemplo 2: Y2345678?. Sustituye Y por 1: 12345678. Ya calculamos antes que 12345678 mod 23 = 14 → letra Z. Un NIE Y2345678 sería válido solo si termina en Z.
Los errores más comunes en NIEs son confundir la letra inicial (X/Y/Z) y transponer dos dígitos centrales. Ambos se detectan con este cálculo porque cualquier cambio de dígito altera el resto.
En formularios, valida el NIE en el momento de la captura: un simple script con esta lógica evita que errores tipográficos lleguen a tus facturas o contratos.
Paso 3: Validar un CIF de empresa
El CIF tiene 9 caracteres: letra de tipo de entidad + 7 dígitos + control. El algoritmo del control: suma los dígitos en posiciones impares (1.ª, 3.ª, 5.ª y 7.ª de los 7 dígitos); para los de posiciones pares, duplica cada uno y suma sus dígitos; suma ambos resultados; el dígito de control es 10 menos la última cifra de esa suma (si sale 10, es 0).
Ejemplo: B1234567?. Dígitos: 1-2-3-4-5-6-7. Impares (1,3,5,7): 1+3+5+7 = 16. Pares (2,4,6): 2→4, 4→8, 6→12→1+2=3; suma = 4+8+3 = 15. Total = 31; última cifra 1; control = 10 − 1 = 9.
Ahora la letra inicial decide el formato del control: para A, B, E y H el control es obligatoriamente numérico; para P, Q, S, N y W es obligatoriamente letra (1=A, 2=B, ..., 9=I, 10=J, 0=J); para el resto (C, D, F, G, J, R, U, V) vale cualquiera de los dos.
Cómo automatizar la validación
Paso 1: normaliza la entrada antes de validar: mayúsculas, sin espacios ni guiones. «12345678-z» debe convertirse en «12345678Z».
Paso 2: comprueba el formato con una expresión regular: DNI ^[0-9]{8}[A-Z]$, NIE ^[XYZ][0-9]{7}[A-Z]$, CIF ^[ABCDEFGHJKLMNPQRSUVW][0-9]{7}[0-9A-J]$.
Paso 3: aplica el algoritmo correspondiente según el tipo detectado y compara el control calculado con el del documento.
Paso 4: en validaciones masivas (listados de clientes, facturas), procesa el fichero completo y genera un informe de los inválidos con el motivo (formato, letra de control, dígito de control). Corregir 50 errores de una vez es mucho más eficiente que descubrirlos uno a uno.
Paso 5: recuerda los límites: esta validación detecta errores tipográficos, no suplantaciones. Un DNI con letra correcta puede pertenecer a otra persona. Para verificaciones de identidad reales (KYC, contratos importantes), usa los canales oficiales.
Herramientas gratuitas mencionadas
Flujo de caja
Plantilla flujo de caja: Escribe tus ingresos y egresos mensuales para ver tu flujo de caja.
Usar gratisCalculadora de margen
Calcular margen de ganancia: Escribe el costo de tu producto y el precio de venta para ver.
Usar gratisPunto de equilibrio
Punto de equilibrio calculadora: ¿Cuántas unidades debes vender para no perder ni ganar? Escribe tus costos.
Usar gratisPreguntas frecuentes
¿Cómo se calcula la letra del DNI español?
Se divide el número de 8 dígitos entre 23 y se toma el resto, que indica la posición en la tabla TRWAGMYFPDXBNJZSQVHLCKE (0=T, 1=R, ..., 22=E). Por ejemplo, 12345678 entre 23 da resto 14, que corresponde a la Z: 12345678Z.
¿Qué diferencia hay entre NIF, NIE y CIF?
El NIF es el DNI con letra de los españoles; el NIE identifica a extranjeros (letra X, Y o Z + 7 dígitos + letra de control); el CIF (ahora NIF de persona jurídica) identifica a empresas (letra de tipo de entidad + 7 dígitos + control numérico o letra). Los tres usan algoritmos de control verificables.
¿Validar el dígito de control garantiza que el documento es real?
No. La validación matemática solo detecta errores de transcripción: confirma que la letra o dígito de control es coherente con los números. Un documento formalmente válido puede no existir o pertenecer a otra persona; para verificar la existencia real hay que usar servicios oficiales.
¿Por qué mi CIF válido a veces es rechazado en formularios?
Suele ser por el formato del carácter de control: algunas entidades (A, B, E, H) exigen dígito numérico y otras (P, Q, S, N, W) exigen letra. Si tu CIF es B12345679 y el formulario espera letra, o viceversa, revisa que el tipo de control corresponda a la letra inicial de tu entidad.
En resumen
Validar un NIF, NIE o CIF es un cálculo de 30 segundos que evita errores caros en facturas, contratos y registros. Con los tres algoritmos de esta guía —resto entre 23 para DNI/NIE y suma ponderada para CIF— puedes verificar cualquier documento español a mano o automatizar la comprobación en tus formularios.
Implementa la validación en el punto de captura de datos de tu negocio: cada error detectado al momento es una factura rectificativa que no tendrás que emitir. Y para mantener tus finanzas bajo control, la plantilla gratuita de flujo de caja de Tótem te ayuda a anticipar cobros y pagos mes a mes.