Integración con CRM via API para desarrolladores
El objetivo de integrar JivoChat con un sistema de CRM es guardar los datos de JivoChat en la sección de clientes potenciales / clientes de su CRM y también mostrar información actualizada (por ejemplo, información de contacto del visitante, detalles del cliente etc.) en la aplicación del agente de JivoChat (también conocida como la aplicación donde los usuarios de JivoChat reciben chats de sus clientes).
Para activar esta integración lo que necesita es añadir la URL de su Endpoint del CRM o de su servidor en las configuraciones del canal en el cuál desea activar esta integración. Luego de insertartlo, enviremos webhooks a la URL que usted especificó con los datos de los chats del canal que usted haya configurado.
Para añadir la URL, vaya a la aplicación web de JivoChat o a la aplicación instalada en el computador. Vaya a "Ajustes"-> "Canales"-> "Configuraciones del canal" (debajo del nombre del canal):
Ahora vaya al menú "Configuración de integración para desarrolladores", active la opción "habilitar webhooks" e inserte la URL en el campo de "URL para webhooks"
Ahora usted recibirá de forma automática a la URL ingresada, todos los webhooks de las nuevas conversaciones en JivoChat.
El sistema JivoChat envía una solicitud HTTP POST a la URL especificada en tales casos:
• chat_accepted - El agente aceptó la solicitud de chat en la aplicación
• client_updated: los datos de contacto del visitante se han actualizado (ya sea que el visitante proporcionó esta información por su cuenta o fue editado por un agente)
• chat_assigned - Se conectó un chat al CRM
• chat_finished: el chat ha finalizado (la conversación se terminó haciendo clic en "abandonar chat" de la aplicación o automáticamente al finalizar el tiempo de espera una vez que el visitante ha abandonado el sitio web)
• chat_assigned: el agente asignó manualmente un visitante al registro de CRM del cliente haciendo clic en "Vincular a CRM" y pegando un enlace url.
• offline_message: se envió un mensaje offline mientras los agentes estaban desconectados
¿Cuáles datos son transferidos?#
Puede ver nuestra documentación en https://www.jivochat.es/api.
Datos principales que JivoChat envía:
• Id. De chat. Puede usar este ID para generar un enlace directamente a la conversación en la aplicación de JivoChat, por ejemplo: https://app.jivosite.com/chat/archive/{chat_id}_chat-{site_id}-{chat_id} (https://app.jivosite.com/chat/archive/1652173_chat-1-1652173)
• Nombre, correo electrónico y número de teléfono
• ID del cliente: puede usar este ID para generar un enlace a la página con todos los chats de los visitantes, por ejemplo, https://app.jivosite.com/chats/view?chat_id=123 (Nota: identificamos a los visitantes por cookies, no por IP)
• Comentario: en la aplicación puede establecer un comentario sobre el visitante.
• ID, inicio de sesión y nombre del agente que conversó con el cliente: puede utilizar esta información para crear un cliente potencial o una cuenta de cliente en su CRM. Si el chat se transfirió entre agentes, obtendrá una matriz con todos los datos de los agentes.(No tendrá orden especifico de atención)
• Todos los mensajes de chat se envían con marcas de tiempo.
JivoChat puede recibir respuestas de su sistema de CRM con los siguientes datos:
• Información de contacto completa de sus clientes / clientes potenciales si su correo electrónico o teléfono específico ya existe en el sistema JivoChat. Por ejemplo, si el visitante dio su correo electrónico durante un chat, su CRM puede responder con el nombre, número de teléfono y comentario del visitante y hacer que se complete automáticamente los campos de información de contacto de JivoChat.
• Cualquier dato personalizado, por ejemplo, el saldo del visitante, la licencia actual, cualquier otra información y un enlace a la página de su cuenta en su CRM:
• Algunos datos no se transfieren, por ejemplo, fuente de la visita, ip, ciudad, página actual. Probablemente se agregará en futuras actualizaciones, pero por ahora puede enviar cualquier otro dato desde la página de detalles del visitante de JivoChat al CRM. Por ejemplo, si el usuario inicia sesión en un sitio web o envía una identificación como su identificación de usuario de Google Analytics, es posible mediante la función jivo_api.setUserToken. Llámelo como está escrito aquí:
function jivo_onLoadCallback(){
jivo_api.setUserToken("a link | id | any data");
}
JivoChat no procesa el user_token y no se mostrará en ningún lugar, simplemente transferirá todos sus datos a su CRM.
Cómo recibir datos de JivoChat en su servidor#
La solicitud de webhook de JivoChat es una solicitud HTTP con el método POST a la URL especificada. El cuerpo de la solicitud es un objeto JSON con todos los datos que puede encontrar en la documentación . Aquí hay un ejemplo en PHP sobre cómo obtener una solicitud y guardarla en un archivo de registro:
<?php
$fp = fopen('/request.log', 'a');
fwrite($fp, file_get_contents('php://input'));
fclose($fp); ?>
Por supuesto, no significa que deba usar un archivo de texto para mantener todos los datos. Es solo un ejemplo que puede usarse para verificar cómo funciona y cómo se ve nuestra solicitud. A continuación, debe analizar estos datos, insertarlos en su base, buscar un registro de clientes potenciales, etc. Después de eso, su CRM debe enviar una respuesta con los datos del cliente en el objeto como se describe en la documentación. Puede usar algo como la función echo en PHP, sin ningún encabezado HTTP adicional.
Aquí es cómo se ve una respuesta:
{"result":"ok","custom_data":[{"title":"Answer","content":"42"},{"title":"Last chat","content":"27 Sep 2016 19:37:12"}],"contact_info":{"name":"John Doe","phone":"+79500123567","email":"johny1337@jivoteam.com","description":"Visitor comment"},"enable_assign":true,"crm_link":"http:\/\/mycrm.ru\/user\/1"}
Y desde un navegador:
¿Qué debe hacer la integración?#
Esto es lo que los usuarios suelen esperar de la integración con un sistema CRM. Una vez que el sistema JivoChat se conecte con su CRM (ya sea cuando ocurra un evento chat_accepted o chat_updated), debe buscar a ese cliente en su CRM y si existe un cliente con la información de contacto especificada, entonces su CRM debe completar el resto de la información completa del cliente. Datos en JivoChat y también insertará un enlace al perfil de ese cliente en su CRM. Si ese cliente no existe en su CRM, debe crearse una nueva cuenta de cliente / cliente potencial automáticamente con los dato que JivoChat envía a su CRM.
Creación de registro de leads.
• Algunos sistemas de CRM no solo tienen el nombre del cliente potencial, sino también su título. Puede ser algo como JivoChat # 18 - Tom Clifton
• Una cosa muy importante es asignar un gerente. Es mejor asignar un administrador con el mismo inicio de sesión de JivoChat como un inicio de sesión de CRM o alguna persona predeterminada.
• Especifique una fuente principal: JivoChat. Es útil para encontrar datos que vinieron de un chat.
• Mostrar fuente de visita y una página donde ha comenzado el chat. JivoChat no lo envía en webhooks, pero si es posible, use setUserToken. Los usuarios de CRM y chat quieren saber de qué canal provienen sus clientes potenciales. Es perfecto si las marcas son conocidas y mostradas.
• Agregue una descripción o comentario sobre el visitante, útil para gerentes u otro personal.
• Algunos sistemas de CRM requieren que rellene algunos campos para agregar un Cliente potencial. Por favor, si esos campos están vacíos, verifique su sistema. • Cuando se envía un mensaje fuera de línea, el sistema de CRM debe crear una tarea o correo electrónico con un administrador responsable para procesar esta solicitud.
• Guardar una conversación en un registro o en notas.
Por favor, preste atención a la prioridad de los datos. ¿Qué datos serán grabados o borrados? Si un usuario se presentó a sí mismo en un chat y especificó la dirección de correo electrónico A y el número de teléfono B, pero en el CRM existe una diferencia con el correo electrónico A y el número de teléfono C. ¿Qué número debe guardarse, el más antiguo o el más reciente? Probablemente sea mejor si el CRM tiene campos para teléfonos y correos electrónicos adicionales.