En este artículo 16 secciones
El número de identificación tributaria (NIT) que asigna la DIAN, según el artículo 555-1 del Estatuto Tributario, termina en un dígito de verificación (DV) que se calcula a partir de los demás dígitos. En Excel se puede calcular ese dígito, separarlo del NIT o extraer el último dígito del NIT, que es el que determina el vencimiento de muchas obligaciones tributarias. ¿Qué fórmula corresponde a cada caso?
Qué es el dígito de verificación.
El dígito de verificación es el número que aparece después del guion en un NIT, como el 4 en 800.197.268-4. No hace parte del número de identificación propiamente dicho: es un dígito de control que se obtiene con una operación matemática sobre los demás dígitos y que sirve para detectar errores de digitación.
Si alguien escribe mal un dígito del NIT, el dígito de verificación calculado ya no coincide con el escrito, y el sistema rechaza el dato. Por eso, comprobar el DV en Excel es una forma rápida de validar una base de datos de terceros antes de usarla, por ejemplo en la información exógena.
El artículo 555-1 del Estatuto Tributario establece:
«Para efectos tributarios, cuando la Dirección General de Impuestos Nacionales lo señale, los contribuyentes, responsables, agentes retenedores y declarantes, se identificarán mediante el Número de Identificación Tributaria NIT, que les asigne la Dirección General de Impuestos Nacionales.»
En el caso de las personas naturales, el NIT es el número de la cédula de ciudadanía seguido del dígito de verificación que le corresponde.
- Liquidador de intereses propiedad horizontal
- Guía de propiedad horizontal
- Proyección y planeación pensional
Cómo se calcula el dígito de verificación.
El cálculo que aplica la DIAN es un algoritmo de módulo 11 con los pasos siguientes:
- Se toman los dígitos del NIT, sin puntos ni guion y sin el dígito de verificación.
- Empezando por el último dígito, el de la derecha, se multiplica cada uno por un peso: 3, 7, 13, 17, 19, 23, 29, 37, 41, 43, 47, 53, 59, 67 y 71, en ese orden.
- Se suman los resultados.
- Se divide la suma entre 11 y se toma el residuo.
- Si el residuo es 0 o 1, ese es el dígito de verificación. Si es mayor que 1, el dígito es 11 menos el residuo.
Supongamos el NIT 800.197.268. Los productos, de derecha a izquierda, son estos:
| Dígito | 8 | 6 | 2 | 7 | 9 | 1 | 0 | 0 | 8 |
|---|---|---|---|---|---|---|---|---|---|
| Peso | 3 | 7 | 13 | 17 | 19 | 23 | 29 | 37 | 41 |
| Producto | 24 | 42 | 26 | 119 | 171 | 23 | 0 | 0 | 328 |
La suma de los productos es 24 + 42 + 26 + 119 + 171 + 23 + 0 + 0 + 328 = 733. El residuo de dividir 733 entre 11 es 7, porque 11 × 66 = 726. Como 7 es mayor que 1, el dígito de verificación es 11 − 7 = 4, y el NIT completo es 800.197.268-4.
Fórmula para calcular el dígito de verificación en Excel.
El cálculo se puede hacer en una sola fórmula con SUMAPRODUCTO. Supongamos que en B2 está el NIT solo con números, sin puntos, sin guion y sin DV. Primero se calcula el residuo:
=RESIDUO(SUMAPRODUCTO(--EXTRAE(TEXTO(B2;"000000000000000");{1;2;3;4;5;6;7;8;9;10;11;12;13;14;15};1);{71;67;59;53;47;43;41;37;29;23;19;17;13;7;3});11)
Y con el residuo en C2, el dígito de verificación es:
=SI(C2>1;11-C2;C2)
La fórmula funciona así:
- TEXTO(B2;"000000000000000") completa el NIT con ceros a la izquierda hasta 15 dígitos, para que el último dígito quede siempre en la posición 15 y reciba el peso 3.
- EXTRAE(…;{1;2;…;15};1) separa los 15 dígitos, y el doble signo menos los convierte en números.
- SUMAPRODUCTO multiplica cada dígito por su peso, ordenados del 71 al 3, y suma los resultados. Los ceros de relleno no alteran la suma.
- RESIDUO obtiene el residuo de dividir entre 11.
Si se prefiere una sola celda, el residuo se repite dentro del SI: =SI(residuo>1;11-residuo;residuo), reemplazando «residuo» por la primera fórmula completa.
Verificar los NIT de una base de datos.
Con el dígito calculado en una columna y el dígito escrito en otra, basta compararlos para encontrar los NIT mal digitados:
=SI(E2=D2;"Correcto";"Revisar")
Por ejemplo, el NIT 891.145.237-5, que usaba como ejemplo la versión anterior de este artículo, no es válido: con el algoritmo, el dígito de verificación de 891.145.237 es 4, no 5.
Separar el NIT del dígito de verificación.
Cuando el NIT viene con el dígito de verificación en la misma celda, la fórmula depende de cómo esté escrito.
Si el NIT tiene guion.
Con 800.197.268-4 en A2, el NIT sin DV es todo lo que está antes del guion, y el DV, lo que está después:
=IZQUIERDA(A2;ENCONTRAR("-";A2)-1)
=EXTRAE(A2;ENCONTRAR("-";A2)+1;2)
Para quitar además los puntos, se envuelve la primera fórmula en SUSTITUIR:
=SUSTITUIR(IZQUIERDA(A2;ENCONTRAR("-";A2)-1);".";"")
El resultado es «800197268». El funcionamiento de IZQUIERDA, EXTRAE y ENCONTRAR se explica en el artículo sobre cómo extraer texto antes o después de un carácter en Excel.
Si el NIT y el DV están pegados.
Si el NIT viene como un solo número, como 8001972684, el dígito de verificación es el último carácter y el NIT es todo lo demás:
=IZQUIERDA(A2;LARGO(A2)-1)
=DERECHA(A2;1)
Las mismas fórmulas sirven para separar el dígito verificador del RUT chileno, aunque el cálculo de ese dígito sigue un algoritmo distinto.
Extraer el último dígito del NIT.
Los plazos para declarar y pagar los impuestos nacionales, y muchos de los municipales, se fijan según el último dígito del NIT, o los dos últimos, sin tener en cuenta el dígito de verificación. Confundirlos es un error frecuente que lleva a presentar la declaración en una fecha equivocada.
Con el NIT solo con números y sin DV en B2, el último dígito es:
=VALOR(DERECHA(B2;1))
Y los dos últimos:
=VALOR(DERECHA(B2;2))
En el ejemplo, el último dígito del NIT 800.197.268-4 es 8, no 4. Si el NIT viene con guion y DV en A2, primero se separa con la fórmula de la sección anterior, o se toma el carácter que está antes del guion:
=VALOR(EXTRAE(A2;ENCONTRAR("-";A2)-1;1))
VALOR convierte el resultado en número, lo que permite usarlo después con BUSCARV para traer la fecha de vencimiento de una tabla de plazos.
Descargar el ejemplo en Excel.
El archivo tiene dos hojas: «Dígito de verificación», que recibe NIT escritos de cualquier forma, con o sin puntos y guion, y devuelve el NIT limpio, el DV calculado, la comparación con el DV escrito y el último y los dos últimos dígitos; y «Paso a paso», que muestra cada multiplicación del algoritmo para un NIT. Descargar archivo.
Preguntas frecuentes.
A continuación respondemos las preguntas frecuentes de nuestros lectores.
¿Cómo se calcula el dígito de verificación del NIT en Excel?
Multiplicando cada dígito del NIT, de derecha a izquierda, por los pesos 3, 7, 13, 17, 19, 23, 29, 37, 41, 43, 47, 53, 59, 67 y 71, sumando y dividiendo entre 11. Si el residuo es 0 o 1, ese es el DV; si no, el DV es 11 menos el residuo. La fórmula con SUMAPRODUCTO está en el artículo.
¿Cómo separo el dígito de verificación del NIT?
Si tiene guion, con =IZQUIERDA(A2;ENCONTRAR("-";A2)-1) para el NIT y =EXTRAE(A2;ENCONTRAR("-";A2)+1;2) para el DV. Si están pegados, con =IZQUIERDA(A2;LARGO(A2)-1) y =DERECHA(A2;1).
¿El último dígito del NIT incluye el dígito de verificación?
No. Para los plazos tributarios se toma el último dígito del NIT antes del guion. En 800.197.268-4, el último dígito es 8.
¿Las personas naturales tienen dígito de verificación?
Sí. Su NIT es el número de la cédula seguido del dígito de verificación que resulta del mismo algoritmo.
¿Por qué la fórmula me da un DV distinto del que aparece en el RUT?
Porque el NIT está mal digitado en la celda, tiene espacios o caracteres adicionales, o incluye el DV dentro del número. Hay que dejar solo los dígitos del NIT sin DV.