Conecta tu Zoho CRM
Autoriza Calligence una vez en Zoho y olvídate: cada lead que tu regla de workflow envíe recibirá la llamada de tu agente de Calligence, y el resultado volverá solo al lead — nota, etiqueta y, si se acuerda, la cita en el calendario del comercial.
Qué hace esta integración
#Tu regla de workflow se dispara (por ejemplo, al crear un lead con origen Web) y envía el lead a Calligence mediante un webhook.
El lead entra en tu campaña y el agente de IA le llama dentro de su ventana horaria, con los reintentos de la cadencia de la campaña.
Tras cada llamada, el lead recibe una nota con el resumen; al cerrarse, una etiqueta con el resultado; y si se acordó una cita, una reunión en el calendario de su propietario.
- Una nota en el lead que empieza por
Calligence — resumen de la llamada:. - Al llegar a un estado final, una etiqueta:
Calligence: Éxito,Calligence: No interesado,Calligence: InválidooCalligence: Pendiente. Las etiquetas se añaden — nunca se borran las tuyas. - Opcionalmente, una reunión (Meetings) sobre el lead cuando la llamada acuerda una cita — ver Citas en el calendario.
Calligence nunca crea leads en tu CRM ni duplica los existentes — solo escribe sobre el lead que tú enviaste.
Antes de empezar: qué hace falta y quién lo aporta
#Esta guía está escrita para la persona que administra vuestro Zoho CRM, aunque no use Calligence. Dos cosas te las da Calligence (el enlace de conexión y la URL de cada campaña); el resto depende de tu equipo. Ten esto a mano antes del paso 1:
| Qué | Quién lo aporta | Para qué |
|---|---|---|
| Un usuario administrador de Zoho CRM (perfil Administrador) | Tu equipo | Autorizar Calligence (paso 1) y crear el webhook y la regla de workflow (paso 3). Calligence actúa en Zoho en nombre de quien autoriza: las notas y etiquetas aparecerán creadas por ese usuario. Si preferís que no sea una persona, usad un usuario de integración dedicado. |
| Edición Professional, Enterprise o Ultimate de Zoho CRM | Tu equipo | Son las que incluyen webhooks en las reglas de workflow. Con Standard no hay paso 3. Si tenéis Sandbox, la primera prueba la hacemos ahí. |
| El enlace de conexión a Zoho (o un usuario de Calligence con rol administrador de vuestra organización) | Calligence | Paso 1. El enlace vale 24 horas, se usa una sola vez y quien lo abre conecta su cuenta de Zoho a vuestra organización de Calligence: trátalo como una contraseña. |
| La URL de webhook de cada campaña | Calligence | Paso 3. Una URL por campaña: es lo que decide qué agente llama y con qué cadencia. También es una contraseña. |
| El criterio que marca un lead como "para llamar" y a qué campaña va | Tu equipo | Es la condición de la regla de workflow (por ejemplo, Origen del lead = Web y Curso = Oposiciones → campaña Oposiciones). Una regla por campaña. |
| El teléfono en el lead, en Móvil o Teléfono, y el consentimiento del lead para recibir la llamada | Tu equipo | Sin teléfono el lead se descarta. Preferiblemente con prefijo internacional (+34…); sin prefijo se asume España. Ver qué campos usa Calligence. |
| El nombre del producto (curso, tratamiento o producto) y, si lo hay, su código, en un campo del lead | Tu equipo | Opcional, pero muy importante. Es lo que decide a qué campaña va cada lead y de qué habla el agente: sin él, el lead puede entrar en la campaña equivocada o recibir una llamada genérica. Calligence lo detecta solo del lead cuando el campo se llama Curso, Nombre_Curso, Producto o Product_Name (su nombre de API); si el vuestro se llama de otra forma, se configura desde la propia conexión, en Mapeo, en el menú ⋯ (Más acciones) de la conexión. Ver el producto del lead. |
| Opcional: si queréis citas en el calendario, a quién se asignan | Tu equipo | Al propietario de cada lead (lo habitual) o a un usuario fijo de Zoho. Ver Citas en el calendario. |
Campos del lead que usa Calligence
#El webhook solo envía el Lead Id; todo lo demás lo lee Calligence directamente del lead en Zoho, en el momento de recibirlo. Estos son los campos estándar del módulo Leads que intervienen (entre paréntesis, su nombre de API):
Lo que Calligence lee
#| Campo en Zoho | Para qué lo usa | Si está vacío |
|---|---|---|
Lead Id (id) |
Identificar el lead. Es lo único que viaja en el webhook y lo que vincula la nota, la etiqueta y la cita con el lead correcto. | El envío se rechaza. Revisa el cuerpo del webhook (paso 3). |
Móvil (Mobile) y, si está vacío, Teléfono (Phone) |
El número al que se llama. Se usa el primero que no esté vacío, en ese orden. Formato recomendado +34600111222; sin prefijo se asume España. Si en tu CRM el móvil vive en Teléfono y el fijo en Móvil, dínoslo y cambiamos el orden. |
Sin ninguno de los dos, el lead se descarta y no se llama. |
Nombre completo (Full_Name; si no, First_Name + Last_Name) |
El nombre con el que el agente saluda y el que verás en la ficha del lead en Calligence. | El lead entra sin nombre y se le llama igual, pero el agente no podrá dirigirse a él por su nombre. |
País (Country) y Ciudad (City) |
Informativos: se guardan en la ficha del cliente en Calligence. | Nada. Aparecen vacíos en Calligence, es normal. |
Producto, curso o tratamiento (se detecta solo si el campo se llama Curso, Nombre_Curso, Producto o Product_Name; cualquier otro campo, estándar o personalizado, indicando su nombre de API en Mapeo, en el menú ⋯ de la conexión) |
Opcional, pero muy importante. El agente lo recibe como variable y habla de ese producto. Vale un texto, un número o un campo de búsqueda (lookup) a Productos: se usa el nombre. | El lead entra y se llama igual. El agente usa el producto configurado en la campaña, si lo tiene, o no lo menciona. Ver el producto del lead. |
Código del producto (se detecta solo con Product_Code, Codigo_Curso o Codigo_Producto; configurable igual que el nombre) |
Opcional. Un identificador estable del producto, para el agente y para vuestros informes. | Nada. |
Propietario del lead (Owner) |
Solo si activas las citas con lead_owner: la reunión se crea en el calendario de esa persona. |
La reunión se crea sin propietario asignado. |
El producto del lead: opcional, pero muy importante
El nombre del producto por el que se interesó el lead — el curso, el tratamiento o el producto — y, si existe, su código, son los dos datos que más pesan en la calidad de la llamada: el agente saluda por el nombre, pero informa, cualifica o vende sobre ese producto. Un lead sin producto entra igual y recibe la llamada, pero puede acabar en la campaña equivocada o en una conversación genérica.
- Calligence lo lee del propio lead, al recibirlo, y en la mayoría de los casos sin configurar nada: lo detecta solo cuando el campo se llama
Curso,Nombre_Curso,Nombre_Producto,ProductooProduct_Name— su nombre de API, el que Zoho da al campo, no su etiqueta — y el código, conProduct_Code,Codigo_CursooCodigo_Producto. Si en vuestro CRM el producto vive en un campo con otro nombre — Titulacion, un campo de búsqueda a Productos… — abrid Integraciones en Calligence y, en el menú ⋯ de vuestra conexión de Zoho, pulsad Mapeo e indicad su nombre de API: lo que configuréis ahí manda sobre la detección. El agente los recibe como variables y habla de ese producto. - Rellénalo con un valor estable — un nombre fijo y, si lo tenéis, un código: es lo que el agente pronuncia y lo que hace fiable la condición de la regla. Si el lead llega sin producto, el agente usa el que tenga configurado la campaña, o no lo menciona; nunca se descarta el lead por esto.
- ¿Otros datos del lead para el agente? (origen, nivel de estudios, observaciones…) Se añaden en ese mismo Mapeo: el nombre de API de cada campo y el nombre con el que queréis que lo reciba el agente. Solo llegan los campos que nombréis; el resto del registro no sale de vuestro CRM.
- Si tenéis una campaña por producto, la condición de la regla de workflow debe incluir además el producto (por ejemplo, Curso = Oposiciones) y enviar cada lead a la URL de su campaña (paso 3): el campo del lead dice de qué habla el agente; la campaña decide qué agente llama y con qué cadencia.
Si un mismo lead puede interesarse por varios productos a la vez, cuéntanoslo: la regla y la campaña se diseñan distinto.
Lo que Calligence escribe
#| Dónde | Qué | Cuándo |
|---|---|---|
| Notas del lead | Una nota titulada Calligence cuyo texto empieza por Calligence — resumen de la llamada:. |
Tras cada llamada. |
| Etiquetas del lead | Una de cuatro: Calligence: Éxito, Calligence: No interesado, Calligence: Inválido o Calligence: Pendiente. Se añade; nunca se borran las vuestras. Zoho admite un máximo de 10 etiquetas por registro. |
Al llegar el lead a un estado final en Calligence. |
| Un campo personalizado (opcional) | Si lo pedís, el resultado se escribe además en un campo del lead que elijáis. Necesitamos su nombre de API (Zoho: Configuración → Espacio para desarrolladores → APIs → Nombres de API). Es el único campo del lead que Calligence modifica. | Al llegar a un estado final. |
| Reuniones (módulo Meetings) (opcional) | Cita Calligence — {nombre del cliente}, 30 minutos, con el resumen en la descripción, asociada al lead y asignada a su propietario o a un usuario fijo. |
Solo si activáis las citas y la llamada acuerda un momento (hora concreta, franja o «lo antes posible»). |
Lo que Calligence no toca: nunca crea, borra ni convierte leads; no cambia el estado del lead, su propietario ni ningún otro campo salvo el personalizado que vosotros elijáis; y no lee otros módulos, salvo la lista de usuarios para asignar las citas. Si trabajáis con el módulo Contactos en vez de Leads, decídnoslo: se aplica lo mismo sobre contactos.
Permisos exactos que verás en la pantalla de autorización (para validarlos con vuestro equipo de seguridad):
ZohoCRM.modules.leads.READ · CREATE · UPDATE ZohoCRM.modules.contacts.READ · CREATE · UPDATE ZohoCRM.modules.notes.CREATE ZohoCRM.modules.events.CREATE ZohoCRM.users.READ ZohoCRM.settings.tags.ALL
Ninguno permite borrar registros ni cambiar la configuración de vuestro CRM. El permiso de crear sobre leads y contactos lo exige Zoho para poder añadir notas a esos registros; Calligence no crea leads ni contactos.
Paso 1 — Autoriza Calligence en Zoho
#En Calligence, abre Integraciones, pulsa + Nueva conexión, elige Zoho CRM como proveedor, ponle un nombre y pulsa Conectar con Zoho. Se abre Zoho: inicia sesión con un usuario administrador de tu CRM, revisa los permisos y pulsa Aceptar. Vuelves a Calligence con la conexión creada y activa.
¿La persona que administra vuestro Zoho no usa Calligence? Pulsa Generar enlace para enviar en ese mismo paso y envíaselo: el enlace vale 24 horas y solo puede usarse una vez. Trátalo como una contraseña — quien lo abra conecta su cuenta de Zoho a tu organización — y compártelo solo con esa persona. Al aceptar, la conexión aparece en tu lista de Integraciones. Los enlaces de Reconectar valen 30 minutos.
Permisos que pide Calligence: leer y actualizar leads y contactos (para localizar el lead que envías y escribir el resultado), crear notas, crear reuniones y leer usuarios (para asignar la cita). Nada más: no puede borrar registros ni tocar tu configuración. La lista exacta está en Campos del lead que usa Calligence.
Quién autoriza importa: Calligence actúa en Zoho en nombre de ese usuario, así que las notas, etiquetas y reuniones aparecerán creadas por él, y si ese usuario se desactiva en Zoho la conexión deja de funcionar hasta que otro la reconecte. Un usuario de integración dedicado evita ambas cosas.
Para dejar de autorizar, desactiva la conexión en Calligence o retira el acceso en Zoho (Cuenta de Zoho → Seguridad → Aplicaciones conectadas). Para volver a autorizar — por ejemplo, tras retirar el acceso — usa Reconectar en el menú ⋯ de la conexión.
Paso 2 — Asocia la conexión a una campaña y copia tu URL
#En Calligence, abre Campañas y crea una campaña (o edita una existente). En Conexión (CRM), selecciona tu conexión de Zoho y guarda. Calligence te muestra la URL de webhook de esa campaña con un botón Copiar; si editas la campaña más adelante, aparece como URL actual.
- Cada campaña tiene su propia URL: los leads que lleguen por ella entran en esa campaña, con su agente y su cadencia. Una regla de workflow por campaña.
- La URL es permanente. Solo cambia si la rotas a propósito (Editar → Rotar) o si desvinculas la conexión (Editar → Desvincular): eso la anula y, si vuelves a vincularla, la campaña recibe una URL nueva.
Trata esta URL como una contraseña. Cualquiera que la tenga puede crear leads en tu campaña y provocar llamadas. Si crees que se ha filtrado, rótala desde la campaña y pega la nueva en tu webhook de Zoho.
Paso 3 — Crea el webhook y la regla de workflow en Zoho
#Primero el webhook (la acción), después la regla (cuándo se dispara). En Zoho CRM:
- Ve a Configuración → Automatización → Acciones → Webhooks y pulsa Configurar webhook.
- Nombre: Calligence — <nombre de la campaña>. Método: POST. URL a notificar: la URL de tu campaña (paso 2). Módulo: Leads.
- En el cuerpo, elige Datos sin formato (Raw) con formato JSON y escribe
{"id": "${Leads.Lead Id}"}— inserta el campo Lead Id con el botón # en vez de escribirlo a mano. Si prefieres Form-Data, añade un parámetro de módulo llamadoidcon el campo Lead Id. No hace falta enviar ningún otro dato: Calligence lee el lead completo directamente de Zoho. - Guarda el webhook. Ahora ve a Configuración → Automatización → Reglas de workflow y pulsa + Crear regla sobre el módulo Leads.
- Como disparador, elige Al crear un registro (o "al crear o editar" con una condición que solo se cumpla una vez, como una casilla Enviar a Calligence). Añade la condición que marca el lead como "para llamar" (por ejemplo, Origen del lead = Web) y, si trabajáis varios productos, el producto del lead (Curso = Oposiciones): cada campaña de Calligence corresponde a un producto, así que cada regla debe enviar solo los leads de ese producto a la URL de esa campaña.
- En Acciones instantáneas, añade Webhook y elige el que acabas de crear. Guarda y activa la regla.
Nunca dispares la regla "al editar" el lead sin una condición de una sola vez. Calligence escribe notas, etiquetas y reuniones en el lead después de cada llamada; una regla que se dispare con cualquier edición volvería a enviarnos el lead una y otra vez. Calligence no llamaría dos veces (los reenvíos se reconocen y se ignoran), pero consumiría tus créditos de API y los del webhook.
Paso 4 — Prueba el circuito completo
#Calligence llama de verdad al número del lead. Haz la prueba con tu propio móvil, nunca con un número inventado: podría pertenecer a alguien.
- Crea en Zoho un lead de prueba con tu móvil en Móvil (
+34600111222), con nombre y apellidos, con el producto o curso rellenado, y que cumpla la condición de la regla. - En Calligence, abre la campaña: deberías ver el lead en unos segundos, con el nombre y el teléfono leídos de Zoho. Si el lead no tenía país ni ciudad, esos datos aparecen vacíos; es normal.
- Espera la llamada. Solo se llama dentro de la ventana horaria de vuestra organización en Calligence (por defecto, de lunes a viernes de 09:00 a 20:00, hora de Madrid). Si creas el lead fuera de esa ventana no falla: queda programado y la llamada sale al abrirse la siguiente. Un lead enviado un jueves a las 23:30 recibe la llamada el viernes a partir de las 09:00.
- Al terminar, abre el lead en Zoho: verás la nota Calligence — resumen de la llamada: y, si el lead quedó cerrado, la etiqueta
Calligence: ….
Si algo no cuadra, Zoho te lo cuenta: en Configuración → Automatización → Acciones → Webhooks, la pestaña de fallos del webhook muestra qué respondió Calligence. Zoho reintenta un envío fallido una sola vez, 15 minutos después.
Citas en el calendario (opcional)
#Cuando tu agente acuerda una cita con día y hora concretos, o «lo antes posible», por teléfono o por WhatsApp, Calligence puede crearla como reunión (módulo Meetings) sobre el lead, en el calendario de su propietario en Zoho — así cada comercial ve sus citas donde ya trabaja, y el reparto de leads lo sigue decidiendo tu CRM.
- En Calligence, abre Integraciones y, en el menú ⋯ de tu conexión de Zoho, pulsa Calendario.
- Escribe
lead_ownerpara que cada reunión se asigne al propietario del lead, o el ID de un usuario de Zoho si todas las citas deben ir a la misma persona. Guarda. Para desactivar las citas, deja el campo vacío y guarda.
La reunión se titula Cita Calligence — {nombre del cliente}, dura 30 minutos y lleva el resumen de la llamada en la descripción. Se crea con la hora acordada en la llamada; si el cliente dio una franja ("los lunes por la tarde"), la reunión se pone al inicio de la primera franja que toque (el lunes siguiente a las 14:00) para que el comercial la ajuste. Si acepta que le llame un asesor sin decir hora («lo antes posible», «hoy mismo»), se pone en el momento en que terminó la llamada, sea la hora que sea. Nunca en el pasado ni a más de 6 meses vista. Los avisos y automatizaciones de Zoho sobre reuniones se disparan con normalidad; no apuntes ninguna de ellas a una URL de Calligence.
Detener llamadas desde Zoho
#Si un lead se resuelve por otra vía, avisa a Calligence con otro webhook: la misma URL de la campaña con /stop-lead al final y el mismo cuerpo ({"id": "${Leads.Lead Id}", "reason": "Cerrado por el comercial"}). Calligence cancela los intentos pendientes, marca el lead como "Trabajado fuera" y deja una nota de confirmación en Zoho. Asócialo a una regla que se dispare cuando cierres el lead — por ejemplo, Estado del lead = Contactado.
No confundas las dos URLs: la del paso 2 inicia llamadas; con /stop-lead al final las detiene. Pegar la equivocada en la regla de "parar" haría que Calligence llamase al lead en vez de dejar de hacerlo.
Solución de problemas
#El lead no aparece en Calligence
#Revisa que la regla está activa y que el lead cumple su condición; que el webhook envía el Lead Id (no otro campo); y que el lead tiene teléfono — sin teléfono se descarta. Corrige y vuelve a disparar la regla.
La nota o la etiqueta no llegan a Zoho
#Si se retiró el acceso de Calligence en Zoho o cambió el administrador que autorizó, usa Reconectar en Integraciones, en el menú ⋯ de la conexión. Si el lead fue convertido en contacto después de enviarlo, ya no existe como lead y la escritura no puede aplicarse — lo verás en el panel de sincronización del lead en Calligence, con el motivo que devolvió Zoho.
Reenvié el mismo lead y no pasó nada
#Depende de cómo acabó el primer envío. Si el lead ya había llegado a Calligence, reenviarlo no cambia nada, y es a propósito: así, una regla que se dispare dos veces no duplica ni el lead ni la llamada. Calligence tampoco vuelve a leerlo de Zoho, de modo que lo que cambiéis después en el lead no llega a Calligence. Si el primer envío falló (por ejemplo, porque el lead no tenía teléfono), corrige el dato y vuelve a disparar la regla: ese reenvío sí se procesa.
"No se pudo completar la conexión" al aceptar en Zoho
#El enlace ha caducado (24 horas para conectar, 30 minutos para reconectar) o ya se usó. Genera uno nuevo desde Integraciones (+ Nueva conexión, o Reconectar en el menú ⋯ de la conexión) y ábrelo con un usuario administrador de tu Zoho CRM.
El lead entra en Calligence sin nombre
#Calligence lee Nombre completo (o Nombre + Apellidos) del lead en Zoho y no inventa nada. Rellénalos en el lead; el siguiente que envíes llegará con nombre.
El agente habla de otro producto, o no lo menciona
#Comprueba que el lead tiene el producto relleno antes de que se dispare la regla: Calligence lo lee en ese momento. Si el campo está relleno y aun así no llega, puede que su nombre de API no sea de los que se detectan solos (Curso, Nombre_Curso, Producto, Product_Name…): abre Integraciones y, en el menú ⋯ de vuestra conexión de Zoho, pulsa Mapeo e indica el nombre de API del campo. Si trabajáis una campaña por producto, revisa también que la regla envía el lead a la URL de la campaña correcta.
La nota llega pero la etiqueta no
#Zoho admite como máximo 10 etiquetas por registro; si el lead ya las tiene, la de Calligence no cabe. El motivo exacto que devolvió Zoho lo verás en el panel de sincronización del lead en Calligence.
¿Sigues atascado? Escríbenos y lo miramos contigo.