Escribe o pega una CLABE de 18 cifras y el validador comprueba el dígito de control y te dice de qué banco es, según la lista de participantes de SPEI que publica el Banco de México. Sirve para descubrir una cifra mal copiada antes de hacer una transferencia o de guardarla en un sistema. Todo se calcula en tu navegador: la CLABE no se envía a ningún sitio.
Una CLABE válida no garantiza que la cuenta exista ni dice de quién es. Solo el banco lo sabe: comprueba el nombre del titular con quien te dio la CLABE. Después de una transferencia por SPEI, puedes descargar el comprobante electrónico de pago (CEP) en banxico.org.mx/cep.
Qué comprueba el validador
- Que tenga 18 cifras. Si tiene 16, avisa de que parece un número de tarjeta, y si tiene 10 u 11, de que parece un número de cuenta.
- El banco: las tres primeras cifras, buscadas en la lista de 97 participantes de SPEI de Banxico (consultada el 13 de octubre de 2026). Si el código no está, avisa: puede ser un banco que ya no opera o un error al copiar.
- El dígito de control, la última cifra. Detecta cualquier cifra mal copiada y casi todos los intercambios de dos cifras seguidas.
El botón Generar una CLABE de prueba crea CLABE al azar, de bancos de la lista y con el dígito de control correcto, para probar formularios. No las uses para transferir: podrían coincidir con una cuenta real.
Cómo se forma la CLABE
| Cifras | Ejemplo | Qué son |
|---|---|---|
| 1 a 3 | 032 | El banco. Es la clave de la institución en el sistema de pagos |
| 4 a 6 | 180 | La plaza: la ciudad de la cuenta, según el catálogo de plazas bancarias |
| 7 a 17 | 00011835971 | El número de cuenta, completado con ceros a la izquierda hasta 11 cifras |
| 18 | 9 | El dígito de control |
Esta CLABE de ejemplo es la que se usa en muchas guías. Su código de banco, 032, era el de IXE Banco, que se fusionó con Banorte y ya no aparece en la lista de Banxico: por eso el validador da un aviso aunque el dígito de control cuadre.
Los 97 códigos de banco de la lista de Banxico
001BANXICO002BANAMEX006BANCOMEXT009BANOBRAS012BBVA MEXICO014SANTANDER019BANJERCITO021HSBC030BAJIO036INBURSA042MIFEL044SCOTIABANK058BANREGIO059INVEX060BANSI062AFIRME072BANORTE106BANK OF AMERICA108MUFG110JP MORGAN112BMONEX113VE POR MAS124CITI MEXICO127AZTECA128KAPITAL129BARCLAYS130COMPARTAMOS132MULTIVA BANCO133ACTINVER135NAFIN136INTERCAM BANCO137BANCOPPEL138UALA140CONSUBANCO141VOLKSWAGEN145BBASE147BANKAOOL148PAGATODO150INMOBILIARIO151DONDE152BANCREA154BANCO COVALTO155ICBC156SABADELL157SHINHAN158MIZUHO BANK159BANK OF CHINA160BANCO S3166BaBien167HEY BANCO168HIPOTECARIA FED170REVOLUT BANK600MONEXCB601GBM602MASARI605VALUE616FINAMEX617VALMEX620PROFUTURO631TRF634FINCOMUN638NUBANK646STP652CREDICAPITAL653KUSPIT656UNAGRA659ASP INTEGRA OPC660Altor661KLAR670LIBERTAD677CAJA POP MEXICA680CRISTOBAL COLON683CAJA TELEFONIST684TRANSFER685FONDO (FIRA)688CREDICLUB699FONDEADORA703TESORED706ARCUS FI710NVIO714PPBALANCEMX715CASHI CUENTA720MexPago721albo722Mercado Pago W723Cuenca725COOPDESARROLLO727TRANSFER DIRECT728SPIN BY OXXO729Dep y Pag Dig730Clip732Peibo734FINCO PAY738FINTOC901CLS902INDEVAL903CoDi Valida
Cómo se calcula el dígito de control
Cada una de las 17 primeras cifras se multiplica por un peso, en el orden 3, 7, 1, 3, 7, 1… De cada producto solo se queda la última cifra, y se suman:
| Cifra | Peso | Producto | Última cifra |
|---|---|---|---|
0 | 3 | 0 | 0 |
3 | 7 | 21 | 1 |
2 | 1 | 2 | 2 |
1 | 3 | 3 | 3 |
8 | 7 | 56 | 6 |
0 | 1 | 0 | 0 |
0 | 3 | 0 | 0 |
0 | 7 | 0 | 0 |
0 | 1 | 0 | 0 |
1 | 3 | 3 | 3 |
1 | 7 | 7 | 7 |
8 | 1 | 8 | 8 |
3 | 3 | 9 | 9 |
5 | 7 | 35 | 5 |
9 | 1 | 9 | 9 |
7 | 3 | 21 | 1 |
1 | 7 | 7 | 7 |
La suma es 61. Su última cifra es 1, y el dígito de control es lo que le falta para llegar a 10: 10 − 1 = 9. Si la última cifra de la suma es 0, el dígito es 0. La CLABE termina en 9, así que cuadra.
Como 3, 7 y 1 no comparten ningún divisor con 10, cambiar una sola cifra siempre cambia el resultado: por eso detecta cualquier cifra mal copiada. Un intercambio de dos cifras seguidas solo se escapa si las dos se diferencian en 5, como un 2 y un 7.
Validar una CLABE en Python
PESOS = [3, 7, 1] * 6
def digito_control(clabe17: str) -> str:
suma = sum(int(c) * p % 10 for c, p in zip(clabe17, PESOS))
return str((10 - suma % 10) % 10)
def clabe_valida(clabe: str) -> bool:
clabe = clabe.replace(" ", "")
return (len(clabe) == 18 and clabe.isdigit()
and clabe[17] == digito_control(clabe[:17]))
print(clabe_valida("032180000118359719")) # True
print(clabe_valida("032180000118359710")) # False$ python3 clabe.pyTrue False
Para saber además el banco, basta un diccionario con los códigos de la lista anterior y buscar clabe[:3].
Otros validadores: RFC, CURP y CLABE. Para facturas electrónicas, el validador de CFDI 4.0. Todas las herramientas, en decodigo.com/herramientas.
Lista de bancos: Banco de México, participantes de SPEI a 13 de octubre de 2026; el código de la CLABE son las tres últimas cifras de la clave de cada institución. El cálculo del dígito de control se comprobó contra el paquete clabe de Python con 3 000 CLABE generadas, 3 000 cadenas al azar y 3 000 CLABE con una cifra cambiada.