El formato E.164 es la forma estándar de escribir un número de teléfono para que cualquier sistema lo interprete igual: un signo +, el código de país y el número nacional, sin espacios, guiones ni paréntesis. Si guardas teléfonos en tu CRM o los envías a una API, ordenarlos en formato E.164 es el primer paso. Es también un paso corto: ordena el dato, pero no dice nada sobre la línea.
Qué es el formato E.164 y cómo se ve
E.164 es la recomendación de la UIT (ITU-T) que define el plan internacional de numeración. Un número que lo cumple tiene solo dígitos, un máximo de 15 incluyendo el código de país, y se escribe con el + delante. El código de país tiene entre uno y tres dígitos y el resto es el número nacional, sin el 0 inicial de marcación local ni prefijos como 00 u 011, que dependen de dónde se llama.
Por ejemplo, un celular de Buenos Aires que alguien escribe como 011 15-2345-6789 queda +5491123456789. Los números de este artículo son ficticios y sirven solo de ejemplo.
Errores frecuentes al guardar teléfonos
- Dejar el 0 de marcación local: 011 en lugar de 11 después del código de país.
- Dejar el 15 de los celulares argentinos, que es marcación local y no va en el formato internacional.
- Olvidar el 9 que Argentina intercala entre +54 y el área en los celulares.
- Guardar espacios, guiones o paréntesis: se ven bien, pero rompen comparaciones y búsquedas.
- Asumir el país: un 11 2345 6789 no dice si es de Argentina o de otro lugar hasta que decides cómo interpretarlo.
El tercer punto es el que más tropieza en Latam. Si quieres el detalle país por país para Argentina, lo explicamos en la guía de números de teléfono de Argentina.
El país no se adivina: se define
Cuando alguien escribe un número sin +, hay que interpretarlo con un país de referencia, por ejemplo el del formulario o el de tu mercado. Ese país de interpretación es una decisión tuya y conviene guardarlo junto al número. No lo infieras desde la dirección IP: una persona puede estar viajando, usar la red de otro proveedor o cargar el teléfono de un familiar.
Qué te dice el formato y qué no
Un número bien formado en E.164 significa que tiene la estructura correcta. No significa que la línea exista, que esté activa, que sea de quien lo cargó ni que vaya a atender una llamada. Tampoco nos dice si tiene WhatsApp: ByeBouncer no comprueba eso ni lo promete. Una expresión regular que acepta cualquier cadena de hasta 15 dígitos tampoco te dice si el prefijo corresponde a un rango real del país.
Cómo convertir un número a E.164 paso a paso
- Quita espacios, guiones, paréntesis y cualquier letra o texto.
- Si empieza con el prefijo de llamada internacional (00 u 011, según el país de origen), reemplázalo por +.
- Si no hay código de país, agrégalo según el país de referencia que definiste.
- Elimina el 0 de marcación local que acompaña al área y, en los celulares argentinos, el 15.
- Para celulares argentinos, intercala el 9 después de +54 y antes del código de área.
- Comprueba que el resultado tenga solo dígitos después del + y no supere los 15.
Una librería de numeración hace estos pasos mejor que una expresión regular casera, porque conoce las reglas de cada país y cambian con el tiempo. Aun así, el resultado es una normalización: si el número de entrada tenía un error de tipeo que sigue siendo plausible, saldrá un E.164 bien formado pero equivocado. Por eso conviene guardar también el original.
Qué guardar en tu base de datos
- El número original tal como lo cargó la persona.
- El número normalizado en E.164, que es el que usas para comparar y deduplicar.
- El país con el que lo interpretaste y de dónde salió ese país.
- El resultado de la validación con su motivo y la fecha de la consulta.
Esa fecha importa: los números cambian de operador por portabilidad y se reasignan, así que un operador o un estado de línea obtenido hace meses puede haber cambiado. Deduplicar por E.164 evita contactos repetidos que solo difieren en cómo se escribió el número, pero no decide cuál de los dos registros es el correcto; esa regla es de tu proceso.
Dónde entra la validación de ByeBouncer
ByeBouncer valida el teléfono por separado de los demás datos. Normaliza el número a E.164 y lo compara contra las reglas de numeración del país. Según la consulta, también devuelve el operador y el tipo de línea; el estado de la red móvil es una consulta adicional y opcional. Cada resultado es un dato: tu equipo decide qué hacer con un número de línea fija, con un operador no identificado o con una consulta sin determinar. No hay una puntuación general ni una decisión de autenticidad.
Si un número no puede interpretarse, no lo descartes sin mirar el motivo: puede faltar el país de referencia o tener un error de tipeo corregible. Guarda el número original, el normalizado y el país con el que lo interpretaste.
Ver cómo funciona la validación de teléfono →
Una forma práctica de empezar
Normaliza en un solo lugar de tu sistema, guarda siempre el E.164 junto con el original y registra el país de interpretación. Después decide si necesitas operador o tipo de línea para tu caso. Puedes probarlo con tus propios números y revisar cada resultado antes de integrarlo.
Crear una cuenta y probar con tus números →