Validar un IBAN
Escriba ES91 2100 0418 4502 0005 1332 y sabrá que es un IBAN español válido de 24 caracteres, justo la longitud que exige España. Un solo dígito cambiado casi siempre rompe los dígitos de control. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- IBAN
- ES91 2100 0418 4502 0005 1332
- Código de país
- ES
- Longitud ingresada
- 24
- Longitud esperada
- 24
control y formato por país, en el navegador
Qué demuestra en realidad el dígito de control
Todo IBAN lleva dos dígitos de control justo después del código de país, y esos dígitos son el resultado de un cálculo mod-97 sobre el resto del número. Eso significa que un IBAN con un dígito traspuesto, un carácter faltante o una letra cambiada casi siempre falla ese control, aunque a simple vista parezca plausible.
Esta api validar iban recalcula ese dígito en el servidor y lo compara contra la longitud y estructura del BBAN que cada país registra ante SWIFT, así que un resultado positivo confirma que el número es internamente consistente, no que la cuenta exista o esté abierta.
Quién necesita esto antes de mover dinero
Los sistemas de nómina que dan de alta la cuenta bancaria de un nuevo empleado, los marketplaces que pagan a vendedores en distintos países, los equipos de tesorería que concilian datos de proveedores y cualquier formulario de checkout que recoja IBAN de sus clientes comparten el mismo riesgo: un IBAN mal formado o lo rechaza el banco días después o, peor, se enruta mal. Validar en el momento de la captura convierte un ticket de soporte y un pago retrasado en un error visible que el usuario corrige en segundos.
La petición y lo que regresa
El resultado indica si el formato es válido, el país detectado, la longitud esperada para ese país y si el dígito de control pasó. Si una tarea falla de plano, se reintenta tres veces antes de devolver un error claro, y una tarea fallida jamás se cobra: solo paga por las verificaciones que se completan.
Cobertura en más de 80 países
El IBAN nació como estándar europeo a finales de los años noventa y desde entonces se ha adoptado mucho más allá de la Unión Europea, con cada país participante registrando su propia longitud fija y estructura de BBAN en el registro IBAN. Algunos países incluyen un código de banco, otros un código de sucursal, otros ninguno, y las longitudes van de 15 a 34 caracteres.
Qué puede hacer con ella
Alta de nómina
Una plataforma de recursos humanos valida el IBAN de un nuevo empleado en el momento en que se captura en el formulario, atrapando un dígito mal tecleado antes de que la primera nómina intente usarlo.
Pagos en un marketplace
Un marketplace multipaís revisa el IBAN de cada vendedor antes de programar un lote de pagos, para que una sola cuenta mal escrita no detenga toda la corrida.
Validación en el checkout
Una página de facturación por suscripción valida el IBAN del cliente en línea durante el alta a domiciliación SEPA, reemplazando un rechazo silencioso del banco días después por un error inmediato y corregible.
Preguntas frecuentes
¿Esto confirma que la cuenta bancaria existe de verdad?
No. Confirma que el IBAN es estructuralmente válido: formato de país correcto, longitud correcta y un dígito de control mod-97 que pasa.
¿Existe una capa gratuita para validar IBAN?
La herramienta de arriba es gratis en su navegador. Sin suscripción, sin tokens, y una tarea fallida no se cobra.
¿Qué suele significar un dígito de control que falla?
Casi siempre un dígito traspuesto o mal tecleado, un carácter faltante o un IBAN copiado del campo equivocado. Rara vez significa que la cuenta bancaria de fondo sea inválida, solo que el número tal como se ingresó no lo es.
¿Se conserva mi IBAN después de la verificación?
No. El IBAN enviado y su resultado se eliminan al cerrar la ventana de retención y jamás se usan para entrenar nada; los enlaces de entrega son firmados y caducan.
¿Cuántos caracteres tiene un IBAN?
Depende del país: cada uno registra una longitud fija, y van de 15 a 34 caracteres. Un IBAN español tiene 24, y el resultado le indica la longitud que corresponde al país detectado.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/verify/iban \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"iban":"DE89370400440532013000"}'const res = await fetch("https://api.kit.forhosting.com/verify/iban", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"iban": "DE89370400440532013000"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/verify/iban",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"iban": "DE89370400440532013000"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/verify/iban", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"iban":"DE89370400440532013000"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"iban":"DE89370400440532013000"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/verify/iban", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"iban": "DE89370400440532013000"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "verify.iban",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
La API Validar IBAN toma cualquier número de cuenta bancaria internacional y determina, a nivel estructural, si podría ser real: prefijo de país correcto, longitud correcta para ese país y un dígito de control que efectivamente cuadra. Existe porque una transferencia construida sobre un error de tecleo no rebota con elegancia: o cae en la cuenta equivocada o queda atascada por días, y este endpoint atrapa el error antes de que ocurra cualquiera de las dos cosas.
La petición y lo que regresa
Llame a POST /verify/iban con la cadena del IBAN y recibe un task_id de inmediato; la verificación corre de forma asíncrona para que el envío de su formulario nunca se bloquee.
Cobertura en más de 80 países
Este endpoint mantiene actualizada esa estructura por país, así que la misma llamada funciona igual si el IBAN viene de Alemania, Brasil, Arabia Saudita o Ucrania, sin que tenga que mantener usted mismo una tabla de referencia.
Cómo encaja en un flujo de pagos
Como la respuesta es JSON estructurado entregado por webhook, los equipos lo conectan directo a formularios de alta, importaciones masivas de nómina y limpiezas de registros de proveedores: validar en la captura para bloquear un pago antes de programarlo, o correr un lote nocturno sobre una tabla de clientes existente para marcar registros que merecen revisión. El acceso requiere saldo prepago, lo que mantiene el endpoint rápido y libre de abuso por scraping, y cada verificación tiene un precio fijo y publicado de $0.002 sin créditos empaquetados que rastrear.
Casos de integración
Limpieza de datos maestros de proveedores
Un equipo de finanzas corre su base de proveedores existente contra el endpoint durante la noche para marcar IBAN que fallan el dígito de control, antes de migrar a un nuevo sistema de pagos.
Preguntas técnicas
¿Cómo valido un IBAN con una API?
Envíe POST /verify/iban con la cadena del IBAN. La api validar iban devuelve un task_id de inmediato y entrega el resultado del formato y el dígito de control a su webhook o a un enlace firmado al terminar la verificación.
¿Cuántos países cubre la API de validar IBAN?
Más de 80 países que participan en el estándar IBAN, cada uno verificado contra su propia longitud y estructura de BBAN registradas, y no una regla genérica única.
¿Puedo validar IBAN en lote?
Sí. Envíe cada IBAN en su propio POST y las tareas corren en paralelo; cada petición se cobra por separado y una tarea fallida se reintenta y nunca se cobra.
¿Cómo se entregan los resultados?
De dos formas: un webhook firmado que enviamos a su servidor apenas termina la verificación, lo recomendado, o un enlace firmado válido por 24 horas que puede consultar cuando quiera.