Importación VCF de contactos: Android, iPhone y WhatsApp - sin pérdidas
AndySendy academy
← Todas las entradas

📇 Importación masiva de contactos VCF: qué funciona de verdad en Android e iPhone

La mitad de los operadores de envíos pierde contactos en la fase de carga - no por un ban, sino por un archivo mal armado o un toque directo al VCF en iPhone. Parece técnicamente simple, pero «subir 50 000 contactos y lanzar el envío al instante» es un error que mata la cuenta y la base. Tras este artículo tendrás un algoritmo de preparación, conversión e importación por lotes en ambas plataformas.


Estructura VCF: qué debe llevar el archivo

VCF (Virtual Contact File, vCard) es un archivo de texto. Cada contacto va en un bloque:

BEGIN:VCARD
VERSION:3.0
FN:Juan Cliente
TEL;TYPE=CELL:+34612345678
END:VCARD

Detalles críticos:


Preparar Excel: tres columnas obligatorias

Estructura mínima de la tabla antes de convertir:

Nombre Número (E.164) Prefijo (opcional)
Juan Cliente +34612345678 Lead_01
María Ejemplo +34612345679 Lead_02

Para qué el prefijo. Si añades un marcador único al nombre - p. ej. Lead_23_ - tras la campaña encuentras toda la carga con una búsqueda en la agenda y la borras de golpe. Sin prefijo tendrás que limpiar manualmente entre miles de registros.

Antes de convertir: quita filas vacías, columnas sobrantes, revisa el formato de cada número. Sustitución masiva del prefijo local por E.164 - con Ctrl+H en Excel o fórmula ="+34"&RIGHT(A2,9) para España (ajusta el código según tu mercado).


Conversión: herramientas y métodos

Tres vías que funcionan:

1. Macro Excel (VBA). Genera VCF directo desde la tabla, control total. Sirve si las bases son recurrentes y necesitas proceso repetible. Hay ejemplos en GitHub.

2. Python + librería vobject. Control total de campos, codificación, versión. Óptimo para operadores con bases voluminosas o campos no estándar (grupos, etiquetas, notas).

3. Conversores online (tovcf.com y similares). Lo más rápido para una tarea puntual - subes Excel, descargas VCF. Cómodo, pero con limitación importante: al subir una base de clientes a un servicio externo entregas números a un tercero. Para datos de clientes ajenos es incumplimiento de privacidad y puede chocar con la normativa local de protección de datos. Usa conversores online solo para bases de prueba propias o donde esté explícitamente permitido.

En cualquier caso revisa manualmente las primeras 10–20 líneas del VCF generado en un editor de texto - antes de importar.


Importación en Android: simple, pero no a ciegas

Android lee VCF de forma nativa con la app Contactos. Algoritmo:

  1. Pasa el archivo al móvil (USB, Telegram, nube - da igual).
  2. Ábrelo con el gestor de archivos → Contactos ofrecerá importar.
  3. Elige almacenamiento: Device (local) o cuenta Google.

Dónde guardar - debatido. Parte de la práctica prefiere memoria local: menos riesgo de antifraude Google al volcar miles de contactos de golpe. Otros creen que la sync con Google parece «más natural» para los algoritmos de WhatsApp. Sin datos concluyentes - elige según escala y riesgo aceptable.

Importante en Android económico (< 6–8 GB RAM): al importar un archivo con 30 000+ contactos el proceso android.process.acore y la sync de WhatsApp pueden ir a crash Out-of-Memory. El dispositivo se calienta, reinicia el proceso en bucle. Solución - trocear la base antes de importar, no después.


Importación en iPhone: el principal error

Creencia extendida: «mandé el VCF por Telegram, toqué - se guardaron los 20 000 contactos». Falso. iOS al abrir un VCF multicontacto desde mensajería o correo muestra solo la ficha del primer contacto. El sistema ignora silenciosamente los otros miles.

Métodos que funcionan en iPhone:

Vía iCloud (recomiendo como principal):

  1. Entra en iCloud.com desde el ordenador → Contactos.
  2. Engranaje → Importar vCard.
  3. Sube el archivo.

Vía AirDrop: envía VCF desde Mac u otro iPhone → confirma añadir contactos. Sirve para paquetes pequeños.

Vía correo: adjunta VCF al email → en iPhone abre el adjunto → Añadir todos los contactos. «Añadir todos» solo aparece con vCard 3.0 correcto.


Tamaño del lote: el parámetro más importante

Límite oficial iCloud - 50 000 contactos. En la práctica no se sube en un solo archivo.

Qué pasa al intentar 30 000 contactos en un archivo vía iCloud.com: el navegador se cuelga 10+ minutos, luego timeout - no se guardan. Solución habitual: dividir en 6 archivos de 5 000 registros, importar en serie con pausa ~10 minutos entre lotes.

Tamaño de lote recomendado:

Plataforma Lote recomendado Motivo
Android (gama alta) hasta 10 000 Import nativo estable
Android (económico, < 6 GB RAM) 3 000–5 000 Crash OOM con volúmenes grandes
iPhone / iCloud.com 2 000–5 000 Timeout del navegador con > 10 000

Partir el VCF manualmente en editor de texto por la etiqueta BEGIN:VCARD o con script. Cada archivo de salida debe terminar con bloque completo END:VCARD.


WhatsApp e importación masiva: qué hay que entender

Cuando los contactos aparecen en la agenda y WhatsApp tiene acceso, la app lanza Contact Discovery en segundo plano - hashea números y los cruza con la base de Meta. Mecánica estándar.

Qué importa:

Según observaciones de operadores (Meta no publica umbrales oficiales), el sistema no solo rastrea envíos sino también velocidad anómala de cambio en la agenda. Una cuenta que históricamente tenía 50 contactos y gana 40 000 nuevos en un ciclo de sync entra en premoderación dura (Sandbox). En ese modo las propiedades protectoras de la agenda (visibilidad como remitente «conocido») se anulan aunque el envío aún no haya empezado.

Regla práctica: no arranques el envío justo tras importar una base grande - sobre todo en una cuenta nueva. Deja que la cuenta «digiera» la sync. Lo ideal - estirar la importación por lotes varias horas y no enviar los primeros mensajes antes de 24 horas.

Números sin +: WhatsApp no reconoce contactos sin código de país en E.164. Entrada 612345678 en la agenda - invisible para el envío. Revisa la base antes de convertir, no después.


Errores típicos y cómo evitarlos

Caracteres corruptos en nombres. Causa - vCard 2.1 sin CHARSET=UTF-8 explícito. Solución: generar siempre versión 3.0 o 4.0.

Contactos no aparecieron tras import en iPhone. Causa - VCF abierto por mensajería, iOS guardó solo el primero. Solución: import vía iCloud.com o AirDrop.

WhatsApp no ve contactos tras import. Causa - números sin código de país o formato no estándar. Solución: normalizar en Excel antes de convertir.

Timeout al importar en iCloud. Causa - archivo demasiado grande. Solución: lotes de 2 000–5 000, pausa 10 minutos entre ellos.

Crash OOM en Android. Causa - RAM < 6–8 GB, archivo > 30 000 registros. Solución: lotes de 3 000–5 000.


🎯 Siguiente paso

Prepara plantilla Excel con tres columnas (nombre, E.164, prefijo), configura un método de conversión y pasa una base de prueba de 500 contactos por el ciclo completo - de Excel a verificación en WhatsApp. Son 20 minutos y cierran dudas técnicas antes de la campaña real.

Conclusión

Regla práctica:

Un VCF para miles de contactos no es un import - son una docena secuenciales, con pausas y comprobación tras cada una.