API de validación de teléfono: qué puede y qué no
Una API de validación de números de teléfono comprueba si un número está bien formado según las reglas internacionales del plan de numeración y devuelve su región y su tipo de línea, como móvil o fija, sin contactar con ninguna red. Responde a «¿podría ser este un número real?» y no a «¿está este número conectado ahora mismo?».
Esa distinción decide qué tipo de servicio necesitas. La validación a nivel de formato es rápida, gratuita de ejecutar y privada, mientras que cualquier cosa que informe del estado en vivo depende de una fuente de datos de nivel de operador y de un coste por consulta. Muchos equipos pagan por lo segundo cuando lo primero habría resuelto su problema real.
Lo que la validación basada en reglas hace bien
El plan de numeración de cada país es público: códigos de llamada del país, longitudes permitidas, rangos válidos de prefijos y códigos de área, y qué prefijos se asignan a móvil, fija u otros servicios. Un validador construido sobre esas reglas, normalmente una biblioteca derivada de los metadatos de libphonenumber de Google, puede hacer mucho:
- Normalizar. Convertir «(415) 555-0132», «415-555-0132» y «+1 415 555 0132» en la misma cadena E.164, para que tu base de datos deje de guardar seis grafías de un mismo número.
- Rechazar entradas mal formadas. Una longitud incorrecta, un prefijo imposible o una letra donde no corresponde se detectan en el formulario, antes de llegar a tu proveedor de SMS y costarte dinero.
- Inferir la región. El país o la región se obtiene del código de llamada y del prefijo, lo que ayuda con el enrutamiento, la localización y el formato por defecto.
- Clasificar el tipo de línea. Móvil, fija y varias categorías más se derivan de las asignaciones de prefijos.
Como el trabajo es pura computación, devuelve el resultado de inmediato y el número nunca tiene que enviarse a un proveedor externo. Eso es una ventaja de privacidad, ya que los números de teléfono son datos personales en la mayoría de las jurisdicciones. El verificador de números de teléfono de ipto funciona así: usa un parser autoalojado y su resultado se basa en reglas del plan de numeración, sin consulta de operador en vivo. Introduce un número en formato internacional o elige un país para interpretar uno local.
Lo que no puede decirte
La validación basada en reglas tiene límites estrictos, y conviene conocerlos antes de diseñar un flujo en torno a ella.
- Si el número está activo. Un número puede cumplir todas las reglas y seguir sin estar asignado, estar desconectado o haberse reciclado a un nuevo titular.
- Quién es su titular. Las reglas de numeración no dicen nada sobre el abonado.
- Qué operador lo atiende actualmente. Con la portabilidad numérica, el propietario original del prefijo a menudo no es el operador actual.
- Si la línea es un servicio VoIP. La detección de tipo basada en prefijos es aproximada, y los números virtuales se asignan con frecuencia a partir de rangos corrientes.
En los términos de ipto, «válido» significa «plausible según las reglas de numeración». Para datos firmes sobre la accesibilidad necesitas una consulta en vivo al operador o de tipo HLR a un proveedor que tenga ese acceso, o una prueba práctica como enviar un código de un solo uso y ver si el usuario lo introduce.
Elegir entre los dos enfoques
Parte de la decisión que intentas tomar. Si estás limpiando una lista de contactos, normalizando entradas en el registro o decidiendo si mostrar la bandera de un país, la validación basada en reglas es suficiente y una consulta en vivo de pago es dinero desperdiciado. Si estás protegiendo un flujo de alto valor, como la recuperación de cuentas, la prueba de accesibilidad más barata suele ser el propio código de verificación: demuestra el control del número, algo que ninguna consulta consigue.
Una consulta en vivo de pago compensa cuando envías a gran volumen y quieres evitar pagar por mensajes a números muertos, o cuando debes distinguir ciertas categorías de línea con alta confianza. Incluso entonces, ejecuta primero la comprobación de formato gratuita. Elimina la basura evidente para que solo pagues por consultar números que podrían ser reales.
Dónde encajan las herramientas del lado de la IP
Los datos de teléfono son más útiles junto a los datos de red y de correo. La búsqueda de operador a partir de una IP es algo distinto de una consulta de operador de un número de teléfono: asigna una dirección IP clasificada como móvil a su operador mediante el directorio MCC y MNC, a nivel de red, nunca por abonado. El verificador de correo cubre la sintaxis, los registros MX y los dominios desechables, y el verificador de puntuación de fraude incorpora un resultado de teléfono como una de cuatro entradas opcionales junto a IP, correo y User-Agent. En esa puntuación, un número que no supera la validación aumenta el riesgo, mientras que uno plausible aporta poco, lo que concuerda con lo débil que es realmente una comprobación de formato como prueba de legitimidad.
Para una lectura relacionada sobre cómo juzgar una cuenta desde varios ángulos, consulta la validación de correo desechable, explicada.