Resumen
¿Quieres asignar automáticamente los chats entrantes al responsable de ventas correcto en Wati? Esta guía te muestra cómo verificar si un usuario ya existe en Zoho CRM y asignar su chat al Propietario del Lead (Lead Owner) correspondiente. Si el usuario es nuevo, puedes enviarle un mensaje de bienvenida. Esta configuración ayuda a garantizar respuestas más rápidas y una mejor experiencia para el cliente.
Nota: Esta función requiere el plan Pro o Business en Wati.
Instrucciones
Descripción general de la solución
Configurarás un chatbot en Wati que realice lo siguiente cuando un usuario inicie una conversación:
Verifica si el usuario existe en Zoho CRM utilizando su número de teléfono.
Si el usuario existe:
Recupera el Propietario del Lead (Lead Owner) de Zoho.
Asigna el chat a ese Propietario del Lead en Wati.
Si el usuario no existe:
Envía un mensaje de bienvenida.
Si el token de API de Zoho ha caducado:
Actualiza el token y vuelve a intentarlo.
Cómo configurar el Chatbot y asignar conversaciones
1. Configuración predeterminada del Chatbot
Configura el chatbot para que se inicie automáticamente cada vez que un usuario comience una nueva conversación.
2. Verificar el token de acceso almacenado
El sistema verifica si un token de acceso (necesario para las llamadas API) ya está guardado en los Atributos Personalizados del contacto.
Si el token existe → Úsalo en el Paso 3 (Llamada API).
Si no → Procede a obtener un nuevo token (explicado más adelante).
3. Buscar el Lead en Zoho CRM
Realiza una llamada API al endpoint "Search Records" de Zoho CRM.
Ingresa el número de teléfono del usuario para verificar si es un lead existente.
4. Gestionar respuestas de la API
Código de estado | Qué significa | Acción a tomar |
200 (Éxito) | El lead existe y la respuesta incluye el nombre del Propietario del Lead. | Usa "Establecer una condición" + "Asignar agente" para dirigir el chat al Propietario del Lead. |
204 (Sin contenido) | No existe un lead para este número de teléfono (usuario nuevo). | Trátalo como un nuevo lead y continúa con tu flujo de chatbot predeterminado. |
401 (No autorizado) | El token de acceso ha caducado. |
|
Usa el Endpoint para actualizar el token de acceso para obtener uno nuevo.
Actualiza el nuevo token en los Atributos Personalizados.
Vuelve a intentar el Paso 3 (Llamada API) con el nuevo token.
Pasos para configurar este Chatbot
1. Descargar la plantilla del Chatbot
Descarga la plantilla de chatbot lista para usar: Check Zoho Lead Owner and Assign Chat.json
Esta plantilla contiene los flujos necesarios para conectar Wati con Zoho CRM.
2. Importar la plantilla a Wati
Ve a Automatización > Chatbots en tu cuenta de Wati.
Haz clic en Importar JSON.
Sube la plantilla de chatbot descargada.
3. Actualiza tus detalles de API de Zoho
En el primer nodo de webhook de tu flujo de chatbot:
Actualiza tu Endpoint de API de Zoho.
Agrega tu Token de acceso.
4. Generar un token de acceso de Zoho CRM (si es necesario)
Si ya tienes un token de acceso para Zoho CRM, salta al paso 5.
Para generar un nuevo Token de acceso:
Ve a la consola de API de Zoho: api-console.zoho.com
Crea un Self Client para obtener tu:
client_idclient_secretcode
Usa el siguiente comando para generar tu token de acceso:
curl --location --request POST 'https://accounts.zoho.com/oauth/v2/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=authorization_code' \
--data-urlencode 'client_id=<Enter Client ID>' \
--data-urlencode 'client_secret=<Enter Client Secret>' \
--data-urlencode 'code=<Enter Code>'
Tu token se verá así:Zoho-oauthtoken 1000.xxxxxxxxxxx.xxxxxxxxxxxx
5. Agregar el token de acceso al segundo nodo de webhook
En el segundo nodo de webhook:
Ve a Personalizar encabezados (Customize Headers).
Agrega tu token de acceso de Zoho CRM en el campo Autorización.
6. Entender cómo funciona la lógica del Chatbot
El chatbot utiliza la API de Zoho para buscar un usuario según su número de teléfono.
Caso 1: El usuario existe en Zoho (Código de estado: 200)
La API devolverá el Propietario del Lead.
Usa el nodo Establecer una condición para verificar si el Propietario del Lead coincide con el nombre de un agente en Wati.
Si coincide, usa el nodo Asignar agente para asignar el chat a ese agente.
Caso 2: El usuario no existe en Zoho (Código de estado: 204)
Trata a este usuario como nuevo.
Envíale un mensaje de bienvenida.
Caso 3: Token de acceso caducado (Código de estado: 401)
Usa otro nodo de webhook para actualizar el token.
Realiza una llamada API con tu
client_id,client_secretyrefresh_token:
curl --location --request POST 'https://accounts.zoho.com/oauth/v2/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=refresh_token' \
--data-urlencode 'client_id=<Enter Client ID>' \
--data-urlencode 'client_secret=<Enter Client Secret>' \
--data-urlencode 'refresh_token=<Enter Refresh Token>'
Guarda el nuevo token en un contacto ficticio (por ejemplo,
22222222) en Wati.El chatbot utilizará este token para futuras ejecuciones.
Conclusión
Esta configuración te ayuda a:
Asignar automáticamente los chats al responsable de ventas correcto.
Brindar una mejor experiencia al cliente con respuestas más rápidas.
Gestionar a los nuevos usuarios sin problemas con un mensaje de bienvenida.
Mantener automatizada la gestión de tus tokens de Zoho.
Preguntas frecuentes (FAQ)
General
1. ¿Qué hace esta configuración de chatbot?
El chatbot verifica si un usuario existe en Zoho CRM utilizando el número de teléfono del usuario. Si el usuario existe, recupera al Propietario del Lead y asigna el chat al agente correspondiente en Wati. Si el usuario no existe, envía un mensaje de bienvenida. Si el token de acceso de Zoho CRM ha caducado, actualiza el token y vuelve a intentar la llamada API.
2. ¿Qué planes de Wati admiten esta función?
Esta función requiere el plan Pro o Business en Wati.
Integración de Chatbot y Zoho CRM
3. ¿Cómo verifica el chatbot si un usuario existe en Zoho CRM?
El chatbot realiza una llamada API al endpoint Search Records de Zoho CRM y utiliza el número de teléfono del usuario para buscar un lead existente.
4. ¿Qué sucede cuando la API de Zoho CRM devuelve el código de estado 200?
Un código de estado 200 significa que existe un lead y la respuesta incluye el nombre del Propietario del Lead. El chatbot usa Establecer una condición para verificar si el Propietario del Lead coincide con el nombre de un agente en Wati. Si coincide, el nodo Asignar agente asigna el chat a ese agente.
5. ¿Qué sucede cuando la API de Zoho CRM devuelve el código de estado 204?
Un código de estado 204 significa que no existe un lead para el número de teléfono del usuario. El chatbot trata al usuario como un lead nuevo y continúa con el flujo predeterminado del chatbot, incluyendo el envío de un mensaje de bienvenida.
6. ¿Qué sucede cuando la API de Zoho CRM devuelve el código de estado 401?
Un código de estado 401 significa que el token de acceso de Zoho CRM ha caducado. El chatbot usa el Endpoint de actualización de token de acceso para obtener uno nuevo, actualiza el token en los Atributos Personalizados y vuelve a intentar la llamada API de Zoho CRM con el nuevo token.
Configuración del Token de Acceso
7. ¿Cómo genero un token de acceso de Zoho CRM para el chatbot?
Ve a la consola de API de Zoho en api-console.zoho.com y crea un Self Client para obtener el client_id, client_secret y code. Luego, usa el endpoint de token OAuth de Zoho con grant_type=authorization_code, el client ID, client secret y el código para generar un token de acceso.
8. ¿Dónde agrego el token de acceso de Zoho CRM en el chatbot?
En el primer nodo de webhook, actualiza el endpoint de la API de Zoho y agrega el token de acceso. En el segundo nodo de webhook, ve a Personalizar encabezados (Customize Headers) y agrega el token de acceso de Zoho CRM en el campo Autorización.
9. ¿Cómo actualiza y almacena el chatbot un token de acceso de Zoho CRM caducado?
Cuando la API de Zoho CRM devuelve el código de estado 401, el chatbot utiliza otro nodo de webhook para actualizar el token usando el client_id, client_secret y refresh_token. El nuevo token se guarda en un contacto ficticio en Wati, como 22222222, y se utiliza para futuras ejecuciones del chatbot.



