Necesitas validar los BIN de tarjetas esta semana para que tu proceso de checkout, KYC o motor de riesgo pueda decidir cómo enrutar, marcar o enriquecer transacciones. Al final de este artículo, llamarás a una API de Finanzas lista para producción para verificar un BIN de 6 dígitos y leer los metadatos de la marca de la tarjeta, tipo y emisor que puedes integrar directamente en tus flujos.
Qué devuelve esta API y por qué los desarrolladores la usan
La API de Verificador de Tarjetas de Crédito - Verificador de BIN en Zyla API Hub devuelve detalles sobre una tarjeta de pago basada en su BIN (los primeros 6 dígitos). Puedes confirmar si el BIN es válido y leer campos que incluyen card_brand, card_type, card_level, metadatos del emisor y campos de país ISO.
Casos de uso típicos en Finanzas:
- Flujos de checkout: determina la marca y tipo de tarjeta temprano para optimizar la experiencia del usuario (por ejemplo, mostrar el logo de la marca, ajustar las máscaras de los campos).
- Fraude/riesgo: bloquear o revisar transacciones basadas en el país del emisor o tipos no soportados.
- Enrutamiento: elegir un adquirente o vía de pago dependiendo de la marca o tipo.
- Analítica: segmentar transacciones por marca/tipo para informes.
Tendrás acceso a esta API a través de Zyla API Hub, que proporciona una sola cuenta y clave a través de más de 10,000 APIs públicas. La autenticación es la misma en todo el mercado, lo que simplifica tu integración y mantenimiento.
Comenzando en Zyla API Hub
Abre la lista del mercado para la API de la categoría Finanzas que estamos usando aquí y suscríbete. Obtienes uso a través de suscripción y cuota (no pago por llamada). La primera API que conectes puede comenzar con una prueba de 7 días o 50 solicitudes; consulta la página del artículo para las opciones de acceso actuales.
- Ve a la página de la API: Iniciar prueba de 7 días en la API de Verificador de Tarjetas de Crédito - Verificador de BIN
- Haz clic en Suscribirse o Iniciar Prueba Gratuita cuando esté disponible, luego obtén tu clave API.
- Usa tu clave con el encabezado Authorization: Bearer YOUR_API_KEY en cada solicitud.
Puedes explorar más APIs de Finanzas y otras categorías en Zyla API Hub, y reutilizar la misma clave y modelo de suscripción en todo el mercado.
Referencia de endpoint y cURL rápido
A continuación se muestra el único endpoint que necesitas para la validación y enriquecimiento de BIN. Solo se admiten los parámetros explícitamente listados aquí; no agregues otros.
- Endpoint: Verificador de BIN
- Método: GET
- URL de solicitud: https://zylalabs.com/api/40/credit-card-validator-bin-checker-api/1885/bin-checker
- Parámetro de consulta requerido:
- bin (cadena): Número de Identificación Bancaria de 6 dígitos
Autenticación:
- Encabezado: Authorization: Bearer YOUR_API_KEY
Muestra oficial de cURL (copia/pega para verificar tu configuración):
curl -s -X GET "https://zylalabs.com/api/40/credit-card-validator-bin-checker-api/1885/bin-checker?bin=346350" \
-H "Authorization: Bearer YOUR_API_KEY"
Respuesta JSON oficial (los campos que analizarás se muestran a continuación exactamente como se devuelven):
{
"status": 200,
"success": true,
"isValid": true,
"message": "The BIN number is valid.",
"data": {
"bin_iin": "346350",
"card_brand": "AMERICAN EXPRESS",
"card_type": "CREDIT",
"card_level": "------",
"issuer_name_bank": "------",
"issuer_bank_website": "API Only",
"issuer_bank_phone": "API Only",
"iso_country_name": null,
"iso_country_code": null
}
}
Notas sobre los campos que probablemente consumirás:
- isValid: puerta booleana para aceptar o ramificar lógica para BINs desconocidos/inválidos.
- data.card_brand: mostrar o enrutar por marca (por ejemplo, AMERICAN EXPRESS).
- data.card_type: diferencias en el manejo de CRÉDITO o DÉBITO (por ejemplo, reglas de recargo, enrutamiento).
- data.bin_iin: eco del BIN de entrada (para registro y analítica).
- Campos del emisor e ISO: enriquecimiento opcional; presentes como cadenas o nulo.
Llamando desde agentes de IA a través de MCP
Si prefieres orquestar llamadas con un agente de IA en un IDE o cliente compatible, Zyla expone APIs del mercado a través de su endpoint MCP. Configura tu cliente compatible con MCP y apúntalo a MCP. Usa tu clave API de Zyla con el parámetro de consulta apikey para el endpoint MCP (es decir, apikey=YOUR_API_KEY). En la solicitud de tu herramienta, apunta a la misma URL GET del Verificador de BIN y pasa la cadena de consulta bin como se mostró anteriormente. El cuerpo de la respuesta y los campos permanecen iguales que la llamada HTTP directa.
Ejemplo en Python: validar un BIN y ramificar tu flujo
Este fragmento mínimo de Python llama al endpoint exacto anterior, lee isValid, y luego ramifica en card_brand y card_type. Está escrito para ser copiado y pegado en una herramienta CLI o servicio backend para uso inmediato.
import os
import requests
API_KEY = os.getenv("ZYLA_API_KEY", "YOUR_API_KEY")
URL = "https://zylalabs.com/api/40/credit-card-validator-bin-checker-api/1885/bin-checker"
params = {"bin": "346350"}
headers = {"Authorization": f"Bearer {API_KEY}"}
resp = requests.get(URL, params=params, headers=headers, timeout=15)
resp.raise_for_status()
data = resp.json()
# Comprobaciones rápidas
if not data.get("success"):
raise RuntimeError(f"La solicitud no tuvo éxito: {data}")
if not data.get("isValid"):
print("BIN inválido o desconocido. Aplica un plan de respaldo o bloquea.")
else:
info = data.get("data", {})
brand = info.get("card_brand")
ctype = info.get("card_type")
issuer = info.get("issuer_name_bank")
iso_code = info.get("iso_country_code")
# Lógica de enrutamiento de ejemplo
if brand == "AMERICAN EXPRESS":
print("Enrutar a adquirente compatible con AMEX.")
elif brand in ("VISA", "MASTERCARD"):
print("Enrutar a adquirente principal A.")
else:
print("Usar adquirente predeterminado B.")
# Ejemplo de comprobaciones de cumplimiento/riesgo
if ctype == "CREDIT":
print("Aplica lógica de recargo para tarjeta de crédito si es aplicable.")
if iso_code is None:
print("País del emisor desconocido; considera verificaciones adicionales.")
# Registrar o emitir un evento estructurado
result = {
"bin": info.get("bin_iin"),
"brand": brand,
"type": ctype,
"issuer": issuer,
"iso_country_code": iso_code,
}
print("Resultado de búsqueda de BIN:", result)
Notas para producción:
- Timeouts: 10–20 segundos es razonable para la variabilidad de la red; ajusta a tu SLO.
- Caching: los datos de BIN son relativamente estables; almacena en caché por BIN de 6 dígitos durante horas o días para reducir la latencia y las llamadas.
- Retries: implementa reintentos idempotentes con retroceso en errores HTTP transitorios.
- PII: un BIN no es PII a nivel de PAN, pero aún así trata los registros con cuidado; nunca registres números de tarjeta completos.
Ejemplos de respuesta que puedes probar y analizar
Todos los ejemplos a continuación demuestran la forma de respuesta oficial. Puedes confiar en estos nombres de campo en tu lógica de análisis.
Ejemplo A
{
"status": 200,
"success": true,
"isValid": true,
"message": "The BIN number is valid.",
"data": {
"bin_iin": "346350",
"card_brand": "AMERICAN EXPRESS",
"card_type": "CREDIT",
"card_level": "------",
"issuer_name_bank": "------",
"issuer_bank_website": "API Only",
"issuer_bank_phone": "API Only",
"iso_country_name": null,
"iso_country_code": null
}
}
Ejemplo B (misma estructura; valida que tu análisis JSON sea robusto a nulos)
{
"status": 200,
"success": true,
"isValid": true,
"message": "The BIN number is valid.",
"data": {
"bin_iin": "346350",
"card_brand": "AMERICAN EXPRESS",
"card_type": "CREDIT",
"card_level": "------",
"issuer_name_bank": "------",
"issuer_bank_website": "API Only",
"issuer_bank_phone": "API Only",
"iso_country_name": null,
"iso_country_code": null
}
}
Ejemplo C (usa en pruebas unitarias para fijar nombres y tipos de campo)
{
"status": 200,
"success": true,
"isValid": true,
"message": "The BIN number is valid.",
"data": {
"bin_iin": "346350",
"card_brand": "AMERICAN EXPRESS",
"card_type": "CREDIT",
"card_level": "------",
"issuer_name_bank": "------",
"issuer_bank_website": "API Only",
"issuer_bank_phone": "API Only",
"iso_country_name": null,
"iso_country_code": null
}
}
Ejemplo D (enfocado en el esquema: lee las banderas de nivel superior antes de profundizar en los datos)
{
"status": 200,
"success": true,
"isValid": true,
"message": "The BIN number is valid.",
"data": {
"bin_iin": "346350",
"card_brand": "AMERICAN EXPRESS",
"card_type": "CREDIT",
"card_level": "------",
"issuer_name_bank": "------",
"issuer_bank_website": "API Only",
"issuer_bank_phone": "API Only",
"iso_country_name": null,
"iso_country_code": null
}
}
Implementaciones prácticas en Finanzas
Conecta el Verificador de BIN en flujos de pago centrales para reducir rechazos y mejorar la toma de decisiones:
- UX de checkout: después de que un usuario teclee el 6º dígito, llama al endpoint para determinar card_brand y mostrar el logo relevante o actualizar las máscaras de entrada para AMERICAN EXPRESS vs otros.
- Filtros de riesgo: si isValid es falso, bloquea o solicita un método alternativo antes de enviar a tu procesador.
- Estrategias de enrutamiento: para card_type == CREDIT, envía a un adquirente con optimización de intercambio favorable; para DÉBITO (cuando sea aplicable), enruta de manera diferente o solicita opciones de PIN si son relevantes para tu stack.
- Cumplimiento: lee iso_country_code para informar restricciones geográficas o verificación adicional donde la región del emisor importa.
- Herramientas de soporte al cliente: muestra metadatos de BIN en tu visor de pedidos interno para que los agentes puedan entender rápidamente el contexto de la tarjeta.
Detalles de ingeniería que ahorran tiempo:
- Llama a la API solo cuando tengas exactamente 6 dígitos. No llames en cada pulsación de tecla.
- Almacena en caché por la clave BIN; evita duplicación por usuario. Incluso una simple caché LRU puede reducir drásticamente la latencia y el uso.
- Superficie mensaje para paneles de operadores. Es amigable para humanos y ayuda en la depuración.
- Registra los campos de estado y éxito. Son útiles para distinguir problemas de transporte de validación de dominio.
- Coordina las banderas de características para que puedas fallar abierto o cerrado si el servicio de BIN no está disponible, según tu postura de riesgo.
¿Necesitas más bloques de construcción de Finanzas? Explora categorías y listados adicionales en Zyla API Hub y reutiliza la misma clave de mercado.
FAQ
¿Cuál es la entrada mínima requerida?
Debes proporcionar un BIN de 6 dígitos usando el parámetro de consulta bin al endpoint GET del Verificador de BIN.
¿Cómo me autentico?
Incluye el encabezado Authorization: Bearer YOUR_API_KEY en cada solicitud que envíes al endpoint de Zyla API Hub.
¿El precio es por llamada?
No. Las APIs de Zyla utilizan suscripción con cuota. Consulta la página del artículo del mercado para las opciones de acceso y precios actuales.
¿Hay un plan gratuito?
No hay Plan Gratuito. Para tu primera API, puedes comenzar con una prueba de 7 días o 50 solicitudes cuando esté disponible; consulta el listado para más detalles.
¿Puedo llamar a esto desde un agente o asistente de IDE?
Sí. Usa la integración MCP de Zyla con tu clave. Configura tu cliente compatible con MCP para acceder al mismo endpoint del Verificador de BIN y pasa bin como se mostró anteriormente.
¿Listo para validar BINs en producción? Suscríbete en el mercado y comienza tu integración ahora: Iniciar prueba de 7 días en la API de Verificador de Tarjetas de Crédito - Verificador de BIN.