Un CRM que Vive Junto a Tus Chats de WhatsApp
Cada cliente que escribe se convierte en un contacto. Organízalos con etiquetas, atributos personalizados, notas y fechas de seguimiento, mueve oportunidades por un embudo de arrastrar y soltar y mantén el consentimiento en orden con bajas que siguen al número de teléfono. Los contactos están en los planes Team y Business; el embudo de ventas, en Business.
✦ Prueba gratis de 14 días · Tu propio número de WhatsApp Business · Meta factura los mensajes directamente
Contactos con Todo lo que Tu Equipo Necesita
Cada contacto tiene etiquetas, atributos personalizados, una etapa del embudo, un responsable, una fecha de seguimiento y un estado de suscripción, y puedes filtrar la lista por cualquiera de ellos. Busca por nombre o teléfono, abre la página del contacto para ver de dónde vino y actualiza etiquetas, notas, etapa y seguimiento desde el panel del contacto, junto a su chat en la bandeja compartida. Cada fila tiene un botón Abrir chat o Iniciar chat, y al marcar contactos, o seleccionar a todos los que coinciden con tus filtros, puedes crear una nueva campaña a partir de la selección.
- Etiquetas y atributos personalizados
- Notas internas y fechas de seguimiento
- Filtros por etiqueta, etapa, responsable, seguimiento, suscripción, interacción y fechas
- Origen de cada contacto, incluidos los anuncios Click-to-WhatsApp
- Abrir chat o Iniciar chat desde cualquier fila de contacto
Un Embudo de Arrastrar y Soltar con Tus Propias Etapas
El embudo muestra tus contactos como tarjetas en un tablero, una columna por etapa, para que veas en qué punto está cada consulta u oportunidad. Arrastra una tarjeta a otra etapa o usa su menú Mover a… en el teléfono. Los Managers crean, renombran, reordenan y eliminan etapas; eliminar una etapa nunca elimina contactos, simplemente pasan a Sin etapa. Los flujos de chatbot pueden mover un contacto a una etapa automáticamente. El embudo está en el plan Business, junto con las conversiones que logran tus campañas; en Team puedes ver dónde están los leads, pero no moverlos.
- Etapas personalizadas que nombras y ordenas
- Filtra el tablero por responsable, etiquetas o etapa
- Los flujos de chatbot pueden cambiar la etapa por ti
- Ventas informadas por tu sistema acreditadas a la campaña que las trajo (Business)
Datos Ordenados y Consentimiento Confiable
Sin grupos de contactos que mantener: segmenta con etiquetas y etapas del embudo.
-
Etiquetas
Etiqueta contactos por interés, estado o campaña. Las etiquetas definen audiencias de campañas, filtros y flujos de chatbot, que pueden añadirlas o quitarlas.
-
Atributos Personalizados
Guarda tus propios campos, como ciudad o ID del último pedido, y úsalos como variables de plantilla en campañas.
-
Notas y Seguimientos
Deja notas internas que el cliente nunca ve y fija una fecha de seguimiento; luego filtra los contactos por seguimiento para ver a quién hay que volver a llamar. Una nota que ya no necesitas se puede eliminar para todos.
-
Seguimiento de Origen
Cada contacto registra de dónde vino: WhatsApp, manual, CSV, enlace, API o anuncio Click-to-WhatsApp. Los contactos de anuncios conservan el título, el texto y el ID de clic del anuncio.
-
Bajas que Siguen al Número
Un cliente que responde STOP no puede recibir mensajes desde la bandeja, campañas, automatizaciones ni la API hasta que responda START. La baja se guarda en el número de teléfono, así que eliminar y volver a añadir el contacto no la levanta.
-
Importación y Exportación CSV
Importa un CSV y asigna sus columnas a teléfono, nombre, correo, etiquetas y campos personalizados. Exporta los contactos de la página actual, con tus filtros, como CSV.
-
Cumpleaños, Aniversarios y Renovaciones
Filtra por una fecha guardada en cualquier campo del contacto: hoy, mañana, los próximos 7 o 30 días, o un número de días hacia adelante o hacia atrás. Activa Cada año para cumpleaños y aniversarios, o déjalo desactivado para una fecha única, como una renovación.
-
Interacción y Segmentos
Cada contacto muestra Muy activo, En riesgo, Recuperar o Nunca interactuó, según la última vez que te escribió o leyó tus mensajes, y puedes filtrar por ello. En el plan Business, los filtros de interacción, fecha y etapa del embudo se convierten en segmentos: audiencias de campaña que se actualizan solas.
-
Marcas de Alcance
“Ofertas desactivadas en WhatsApp” significa que el cliente desactivó tus ofertas en WhatsApp: las campañas de marketing lo omiten hasta la fecha indicada, mientras que los mensajes de utilidad y tus respuestas le siguen llegando. “WhatsApp no pudo entregar” significa que WhatsApp no pudo entregar al número: las campañas lo omiten hasta la fecha indicada, o hasta que te escriba.
-
Contactos con Nombre de Usuario de WhatsApp
Quien escribe desde un nombre de usuario de WhatsApp, sin compartir su número, también se convierte en contacto. Tus respuestas le llegan, y Meta añade el número una vez que han hablado. Por la API, estos contactos llevan un waUserId y todavía ningún teléfono.
Trae a Tus Clientes Actuales, con Consentimiento
1. Sube un CSV
Usa un CSV en UTF-8 con números en formato internacional, como +919876543210. Los duplicados y los números no válidos se omiten.
2. Asigna las columnas
Asocia cada columna a teléfono, nombre, correo, etiquetas o un campo personalizado.
3. Confirma el consentimiento
Marca la casilla de consentimiento solo si estos clientes aceptaron recibir tus mensajes. Sin ella, se importan sin suscripción y no se les puede escribir.
CRM para WhatsApp vs. Hojas de Cálculo y un Teléfono
Dónde viven los datos de los clientes y cuánto de ellos actualizas a mano.
| Capacidad | CRM StartMessaging | Hojas de cálculo | Teléfono compartido / app WhatsApp Business |
|---|---|---|---|
| Contacto creado cuando el cliente escribe | ✓ Automático | ✗ Se escribe a mano | Guardado solo en el teléfono |
| Datos del cliente junto al chat | ✓ Panel del contacto en la bandeja | ✗ Archivo aparte | Solo etiquetas |
| Embudo de ventas | ✓ Tablero de arrastrar y soltar con etapas personalizadas (Business) | Una columna de estado editada a mano | |
| Origen del contacto | ✓ Registrado automáticamente, con datos del anuncio para Click-to-WhatsApp | Solo si alguien lo rellena | |
| Bajas (STOP/START) | ✓ Registrado por número y comprobado en cada envío | Se controla a mano | Se controla a mano |
| Sincronización con tus sistemas | ✓ API REST y webhooks de contactos | Exportación e importación manuales |
Crea o actualiza clientes desde tu tienda o CRM por número de teléfono
curl -X POST https://waba-api.startmessaging.com/api/v1/contacts \
-H "Authorization: Bearer sm_live_your_api_key" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: contact-sync-A-1042" \
-d '{
"phone": "+919812345678",
"name": "Asha Verma",
"email": "asha@example.com",
"tags": { "add": ["website-order"] },
"attributes": { "city": "Pune", "lastOrderId": "A-1042" }
}' const res = await fetch('https://waba-api.startmessaging.com/api/v1/contacts', {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + process.env.SM_API_KEY, // sm_live_your_api_key
'Content-Type': 'application/json',
'Idempotency-Key': 'contact-sync-A-1042',
},
body: JSON.stringify({
phone: '+919812345678',
name: 'Asha Verma',
email: 'asha@example.com',
tags: { add: ['website-order'] },
attributes: { city: 'Pune', lastOrderId: 'A-1042' },
}),
});
// 201 = created, 200 = updated (upsert by phone)
const { data } = await res.json();
console.log(data.created, data.contact.id); import os, requests
res = requests.post(
'https://waba-api.startmessaging.com/api/v1/contacts',
headers={
'Authorization': f"Bearer {os.environ['SM_API_KEY']}", # sm_live_your_api_key
'Idempotency-Key': 'contact-sync-A-1042',
},
json={
'phone': '+919812345678',
'name': 'Asha Verma',
'email': 'asha@example.com',
'tags': {'add': ['website-order']},
'attributes': {'city': 'Pune', 'lastOrderId': 'A-1042'},
},
)
# 201 = created, 200 = updated (upsert by phone)
data = res.json()['data']
print(data['created'], data['contact']['id']) <?php
$body = <<<'JSON'
{
"phone": "+919812345678",
"name": "Asha Verma",
"email": "asha@example.com",
"tags": { "add": ["website-order"] },
"attributes": { "city": "Pune", "lastOrderId": "A-1042" }
}
JSON;
$ch = curl_init('https://waba-api.startmessaging.com/api/v1/contacts');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('SM_API_KEY'), // sm_live_your_api_key
'Content-Type: application/json',
'Idempotency-Key: contact-sync-A-1042',
],
CURLOPT_POSTFIELDS => $body,
]);
$data = json_decode(curl_exec($ch), true)['data'];
echo ($data['created'] ? 'created ' : 'updated ') . $data['contact']['id']; # Add and remove tags without overwriting other writers' changes
curl -X PATCH "https://waba-api.startmessaging.com/api/v1/contacts/%2B919812345678" \
-H "Authorization: Bearer sm_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "tags": { "add": ["vip"], "remove": ["lead"] } }'
# Pull everything that changed since your last checkpoint (oldest change first)
curl -G https://waba-api.startmessaging.com/api/v1/contacts \
-H "Authorization: Bearer sm_live_your_api_key" \
--data-urlencode "updatedSince=2026-10-01T00:00:00Z" \
--data-urlencode "limit=100" CRM para WhatsApp — FAQ
¿Puedo organizar los contactos en grupos?
En lugar de grupos, usas etiquetas y etapas del embudo. Un contacto puede tener muchas etiquetas, y las campañas segmentan la audiencia por etiqueta, por suscripción o desde un CSV y, en el plan Business, también por interacción, un campo de fecha o la etapa del embudo. Las etapas del embudo muestran en qué punto del proceso de ventas está cada contacto.
¿Cómo importo mis contactos actuales?
Sube un CSV, asigna sus columnas a teléfono, nombre, correo, etiquetas y campos personalizados, y marca la casilla de consentimiento solo si estos clientes aceptaron recibir tus mensajes. Los números necesitan el código de país. Los duplicados y los números no válidos se omiten, y a los contactos importados sin la casilla de consentimiento no se les puede escribir.
¿Qué pasa cuando un cliente responde STOP?
El contacto queda dado de baja, y todo envío a ese número se rechaza, desde la bandeja, campañas, automatizaciones y la API, hasta que responda START o tu equipo reactive la suscripción con su consentimiento. La baja pertenece al número de teléfono, así que se mantiene aunque elimines el contacto y lo vuelvas a añadir.
¿Puedo exportar mis contactos?
Sí. El botón de exportar descarga los contactos de la página actual, con tus filtros actuales, como archivo CSV. Para llevar toda tu lista a otro sistema, usa GET /api/v1/contacts con paginación por cursor.
¿Cómo mantengo el CRM sincronizado con mis sistemas?
POST /api/v1/contacts crea o actualiza un contacto por número de teléfono. PATCH /api/v1/contacts/{idOrPhone} acepta las etiquetas como { add, remove }, lo que es seguro cuando varios sistemas escriben a la vez. GET /api/v1/contacts con updatedSince devuelve solo lo que cambió, del cambio más antiguo al más reciente. Los webhooks contact.created, contact.opted_out y contact.opted_in te avisan de nuevos contactos y cambios de consentimiento. Poner un contacto en una etapa del embudo con pipelineStageId requiere el plan Business; los contactos que escribieron desde un nombre de usuario de WhatsApp vuelven con un waUserId y phone nulo.
¿Puedo ver qué anuncio trajo a un contacto?
Sí. Un contacto que inició el chat desde un anuncio Click-to-WhatsApp queda marcado con ese origen, y su página muestra el título y el texto del anuncio, el ID y el enlace del anuncio o publicación, y el ID de clic. Los demás orígenes son WhatsApp, manual, CSV, enlace y API.
¿Los flujos de chatbot pueden actualizar el CRM?
Sí. Los pasos del flujo pueden añadir o quitar etiquetas, definir un campo, cambiar la etapa del embudo y asignar un agente, de modo que un lead calificado por el bot llega etiquetado y en su etapa. Los flujos de chatbot están en el plan Business e incluidos en la prueba gratis de 14 días.
¿Qué plan necesito para los contactos y el embudo?
Añadir y editar contactos, etiquetas, notas y seguimientos está en Team y Business. El embudo de ventas, las conversiones y los segmentos para audiencias de campaña están en Business; en Team puedes ver el tablero, pero no mover tarjetas. Los planes Developer muestran los contactos en un panel de solo lectura, y tu app puede seguir creándolos y actualizándolos por la API. La prueba gratis de 14 días incluye todo lo de Business.
¿Cómo se acreditan las ventas a las campañas?
En el plan Business, tu tienda, sistema de facturación o CRM informa una venta con POST /api/v1/conversions (alcance conversions:write): el teléfono del cliente y, opcionalmente, un ID de pedido, valor, moneda y hora. La venta se acredita a la última campaña entregada a ese número dentro de tu ventana de conversión, 7 días salvo que la cambies, y el informe de la campaña la cuenta y suma el valor. Enviar el mismo orderId otra vez nunca cuenta una venta dos veces.
Convierte los Chats de WhatsApp en un Embudo de Ventas
Prueba gratis de 14 días. Conecta tu propio número de WhatsApp Business e importa tus contactos con consentimiento.