Elige fijo o celular
El celular peruano son nueve dígitos y siempre empieza por 9. El fijo lleva código de área: uno solo para Lima, dos para el resto del país.
Celulares de nueve dígitos que empiezan por 9 y fijos con el código de área real de cada departamento, en formato internacional +51 o nacional. Con o sin separadores.
100 % privado. No hay servidor: los datos se generan en tu navegador y no se envían ni se guardan en ninguna parte.
Cómo funciona
El celular peruano son nueve dígitos y siempre empieza por 9. El fijo lleva código de área: uno solo para Lima, dos para el resto del país.
Internacional con +51, nacional con el cero delante, o solo los dígitos. Los tres se usan y cada uno rompe validaciones distintas.
El CSV trae el número en el formato elegido, el tipo de línea y el código de área por separado.
Perú tiene el indicativo internacional +51 y dos tipos de línea con estructuras muy distintas, y esa diferencia es la que causa la mayoría de los problemas de validación:
| Celular | Fijo | |
|---|---|---|
| Longitud | Siempre 9 dígitos | Código de área + 6 o 7 dígitos |
| Empieza por | Siempre 9 | El código de área |
| Ejemplo nacional | 987 654 321 | (01) 234 5678 |
| Ejemplo internacional | +51 987 654 321 | +51 1 234 5678 |
La regla del 9 inicial es la validación más útil y la más olvidada: en Perú todos los celulares empiezan por 9, así que un número de nueve dígitos que empiece por otra cifra no es un celular peruano válido. Es una comprobación de una línea que atrapa muchos errores de tecleo.
Lima y Callao tienen un solo dígito —el 1—, mientras que el resto
del país usa dos. Esa asimetría es la trampa: una validación que espera un
código de área de dos dígitos rechaza a toda Lima, que es un tercio del país.
| Código | Zona | Código | Zona |
|---|---|---|---|
1 | Lima y Callao | 54 | Arequipa |
44 | La Libertad (Trujillo) | 56 | Ica |
74 | Lambayeque (Chiclayo) | 64 | Junín (Huancayo) |
84 | Cusco | 52 | Moquegua |
76 | Cajamarca | 82 | Madre de Dios |
Si tu aplicación deduce la ciudad a partir del teléfono, o si aplica tarifas distintas por zona, necesitas datos con códigos de área reales. Los que genera esta herramienta lo son.
Este es el detalle que más confusión genera. Para llamar dentro de Perú a otra ciudad se marca
un cero delante del código de área: (01) para Lima,
(074) para Chiclayo. Pero cuando el número se escribe en formato internacional,
ese cero desaparece:
// El MISMO teléfono de Lima, en tres formatos:
"(01) 234 5678" // nacional, con el cero de tránsito
"+51 1 234 5678" // internacional: el cero NO va
"+5101234 5678" // ← INCORRECTO: el cero sobra
// Normalizar a E.164 antes de guardar:
function aE164(tel) {
let d = tel.replace(/[^\d]/g, ""); // fuera espacios, guiones, paréntesis
if (d.startsWith("51")) d = d.slice(2); // ya traía el país
if (d.startsWith("0")) d = d.slice(1); // fuera el cero de tránsito
return "+51" + d;
}
aE164("(01) 234 5678") // "+5112345678"
aE164("+51 987 654 321") // "+51987654321"
aE164("0987654321") // "+51987654321"
Guardar todo en formato E.164 —el +51 seguido de los dígitos, sin
espacios ni nada más— es lo que recomiendan las pasarelas de SMS y las centrales telefónicas, y
resuelve de una vez el problema de la misma línea guardada de cinco maneras distintas.
Los teléfonos que genera esta herramienta tienen la estructura y el código de área correctos, así que pasan cualquier validación de formato. Pero los dígitos finales son aleatorios: no son líneas asignadas a nadie. No llames ni mandes mensajes a ellos en una prueba real de envío, porque en el mejor de los casos no existirán y en el peor molestarás a alguien por casualidad. Para probar envíos, usa los números de prueba que te dé tu pasarela de SMS.
Preguntas frecuentes
Tienen la estructura y el código de área correctos, pero los dígitos finales son aleatorios y no corresponden a líneas asignadas. No los uses para pruebas reales de envío de SMS o llamadas: para eso están los números de prueba de tu pasarela.
Sí, y es la validación más útil de este campo: un número de nueve dígitos que no empiece por 9 no es un celular peruano válido. Una comprobación de una línea que atrapa muchos errores de tecleo.
El cero es de tránsito: se marca para llamar de una ciudad a otra dentro de Perú. En formato internacional, con +51, ese cero no va. Es la causa más común de números guardados en dos formatos distintos que en realidad son el mismo.
El 1, y es el único de un solo dígito: el resto del país usa dos. Esa asimetría rompe las validaciones de longitud fija, y es un caso de prueba obligatorio en cualquier aplicación peruana.
E.164: el signo más, el 51 y los dígitos, sin espacios ni separadores. Es lo que esperan las pasarelas de SMS y las centrales telefónicas, y evita tener la misma línea guardada de varias formas.
Sí, en lotes de 1, 10, 50 o 100, en CSV o JSON, con el número, el tipo de línea y el código de área en columnas separadas.
Sigue probando