Интеграция Roistat с RetailCRM¶
Интеграция CRM RetailCRM с Roistat. Как настроить отправку заявок в CRM через Roistat и загрузку из CRM контактов клиентов, выручки по заказу и себестоимости заказов.
Обратите внимание:
Перед интеграцией необходимо установить счетчик Roistat.
Как работает интеграция¶
Отправка заявок в CRM¶
Если заявка не была помечена как дубль, то:
- Осуществляется поиск контактов (по всем контактам в CRM-системе) по номеру телефона или email-адресу.
- Если контакт найден, то создается привязанная к нему новая сделка. Если контакт не найден, создается новый контакт и новая сделка.
-
Если значение из поля Roistat будет случайно удалено, то при загрузке заявок (лидов и сделок) наша система самостоятельно определит источник обращения, чтобы сделка попала в нужный рекламный канал. Если менеджер принимает заказ по телефону, он может спросить промокод (настраивается отдельно) и ввести этот код в поле roistat.
-
Roistat передает в CRM ссылку на запись телефонного разговора вашего менеджера с клиентом.
-
Roistat поддерживает поля RetailCRM с типом Справочник.
Обратите внимание:
В RetailCRM можно настроить автоматическое создание дополнительных задач и комментариев в сделке, с которой работает менеджер, чтобы менеджер не пропускал заявки-дубли.
Загрузка данных из CRM¶
Из CRM-системы в аналитику Roistat выгружаются данные по заказам и клиентам:
- Из CRM в Аналитику загружается выручка по заказу. Выручка рассчитывается по следующей формуле: сумма товаров + стоимость доставки.
- Загружается информация по себестоимости заказа по следующей формуле: себестоимость товаров + дополнительные статьи расходов. Для подсчета себестоимости используются значения из стандартных полей RetailCRM:
purchaseSumm
+delivery->netCost
+ сумма всех товаров сделки, полученных API-методом costs. - Загружается контактная информация по клиентам для Управления клиентами.
Данная интеграция позволяет использовать разные валюты в CRM и в проекте Roistat. При загрузке в Roistat данные будут переводиться в валюту проекта.
Шаг 1. Добавьте дополнительное поле roistat¶
В настройках сделки добавьте дополнительное текстовое поле с символьным кодом roistat. Для этого нужно:
-
В RetailCRM перейти на вкладку Настройки (на панели слева), раскрыть список Системные, выбрать пункт Пользовательские поля и нажать Добавить:
-
Ввести параметры поля:
- Поле для: Заказ
- Название: roistat или любое другое
- Символьный код: roistat
- Тип поля: Строка
- Отображение: Редактируется
-
Нажать Сохранить.
Если по каким-либо причинам вы создаете сделку вручную (например, для оффлайн-источников), вы можете заполнить поле roistat данными об источнике сделки. Тогда информация об источнике сделки будет отображена в Аналитике.
Чтобы отнести сделку к определенному рекламному каналу, вводите в поле roistat следующие маркеры:
- yamarket{ID}, если хотите отнести сделку к каналу Яндекс.Маркет. Здесь и далее ID – идентификатор рекламного канала. Например, yamarket1.
- direct{ID}, если хотите отнести сделку к каналу Яндекс.Директ. Например, direct2.
- google{ID}, если хотите отнести сделку к каналу Google Ads. Например, google3.
- merchant{ID}, если хотите отнести сделку к каналу Google Merchant Center. Например, merchant4.
- vk{ID}, если хотите отнести сделку к каналу ВКонтакте. Например, vk5.
- facebook{ID}, если хотите отнести сделку к каналу Facebook*. Например, facebook6.
- mytarget{ID}, если хотите отнести сделку к каналу myTarget.
- seo_yandex, если хотите отнести сделку к каналу SEO – Яндекс.
- seo_google, если хотите отнести сделку к каналу SEO – Google.
Шаг 2. Подключите RetailCRM в каталоге интеграций¶
- В интерфейсе Roistat откройте раздел Интеграции.
- В блоке CRM выберите retailCRM и нажмите кнопку Настроить интеграцию.
-
Заполните поля для авторизации в RetailCRM:
- В поле Адрес введите URL-адрес вашего проекта в RetailCRM. Обычно он выглядит так: https://<название проекта>.retailcrm.ru.
-
В поле API-ключ введите API-ключ. Для этого скопируйте его в разделе RetailCRM Настройки → Интеграция → Ключи доступа к API:
Обратите внимание на доступы в настройках API-ключа в интерфейсе RetailCRM:
- В блоке Разрешенные действия в API должны быть выбраны все пункты.
- Если вы хотите, чтобы заказы загружались для всех магазинов, укажите тип доступа Доступ ко всем магазинам.
-
В настройках интеграции в проекте Roistat нажмите кнопку Сохранить.
- Откроется окно распределения статусов. При этом из RetailCRM загрузятся статусы сделок. Перетаскивая статусы сделок, распределите их по группам. Подробнее читайте в статье Распределение статусов сделок.
- Прочитайте Инструкцию по включению отправки заявок и нажмите Следующий шаг.
-
Откроется окно расширенных настроек:
В расширенных настройках интеграции вы можете:
- Указать параметры для фильтрации сделок. Для этого прочитайте статью Фильтрация сделок.
- Указать значения полей бизнес-показателей (поле с выручкой, поле себестоимости, поле с прибылью). Для этого прочитайте статью Поля бизнес-показателей.
По умолчанию Roistat использует собственный алгоритм определения даты продажи сделки. Если вы хотите использовать дату продажи из CRM, перетащите ползунок Использовать дату продажи из CRM вправо.
-
На шаге Отправка заявок в CRM-систему: базовые настройки выберите из выпадающего списка магазин, в котором будут создаваться заказы. Укажите имена ответственных за заявки или оставьте это поле пустым. Нажмите кнопку Сохранить, чтобы применить изменения.
-
Откроется окно Отправка заявок в CRM-систему: создание задач:
Чтобы включить данный механизм, активируйте переключатель Создавать задачи при создании сделки. Автоматическое создание задач нужно для того, чтобы менеджеры оперативно реагировали на поступающие заявки.
Время на выполнение задачи – время, за которое задача должна быть выполнена. По умолчанию устанавливаются сутки, если в поле ничего не введено. Текст задачи – текст, который будет отображаться в CRM.
Шаг 3. Настройте автоматическую отправку сделок в RetailCRM¶
Рекомендуем настроить передачу сделок в CRM через Roistat – механизм отправки сделок, при котором сделки сначала передаются в Roistat, затем отправляются в CRM. Механизм обладает рядом преимуществ. Подробнее читайте в статье Передача заявок в CRM через Roistat.
Если отправка сделок с сайта в CRM уже настроена с помощью вашего кода, для обмена данными с Roistat вам необходимо заполнить дополнительное поле roistat значением куки roistat_visit.
Пример кода, с помощью которого можно получить значение этой куки:
$roistatVisitId = array_key_exists('roistat_visit', $_COOKIE) ? $_COOKIE['roistat_visit'] : "неизвестно";
Обратите внимание:
В RetailCRM можно создавать заявки сразу в нескольких магазинах. Для этого в прокси-лиде в fields передайте параметр site с одним из символьных кодов магазина, и заказ будет создан в нужном магазине.
Настройка Товарной аналитики¶
Интеграция Roistat с RetailCRM позволяет использовать Товарную аналитику – инструмент, с помощью которого можно анализировать эффективность продаж категорий товаров и отдельных товаров.
Чтобы настроить Товарную аналитику:
-
Убедитесь, что в RetailCRM созданы товары. Для этого в личном кабинете RetailCRM перейдите в раздел Продажи → Склад → Товары. При необходимости создайте новый товар, нажав Новый товар.
-
В проекте Roistat откройте раздел Аналитика, перейдите на вкладку Товарная аналитика и нажмите Включить товарную аналитику:
-
После следующего импорта сделок из CRM информация о товарах попадет в Аналитику Roistat.
Чтобы перейти в отчет по товарам, откройте раздел Аналитика → Отчеты. Затем кликните по названию текущего отчета, чтобы открыть список всех доступных отчетов:
Раскройте группу Стандартные отчеты и выберите отчет Товары:
Также подробная информация о товаре отображается в карточке сделки:
Товарная аналитика работает как для новых сделок, так и для сделок, которые были загружены в проект до ее подключения. Чтобы обновить данные по сделкам, созданным до подключения Товарной аналитики, обратитесь в службу поддержки Roistat.
Проверка работы¶
После того, как на сайте отправлена заявка, в RetailCRM создается новая сделка с заполненным полем Roistat ID. Сделки также отображаются и в Roistat:
- В проекте Roistat откройте раздел Интеграции.
- На виджете настроенной интеграции с RetailCRM нажмите кнопку Настроить интеграцию.
- В окне настройки интеграции пройдите по ссылке Список отправленных заявок.
Если значение из поля Roistat будет случайно удалено, то при загрузке сделок наша система самостоятельно определит источник обращения, чтобы сделка попала в нужный рекламный канал.
После настройки интеграции рекомендуем воспользоваться следующими вспомогательными инструментами:
- Управление клиентами
- Дашборд
- Экспериментальные возможности
- Управление ставками
- Email-трекинг
- Когортный анализ
- Ловец лидов
- События
- Радар
Передача заявок при интеграции RetailCRM и Telegram¶
Вы можете настроить передачу заявок с номером визита из Telegram в Roistat, если у нас настроена интеграция RetailCRM с Telegram.
-
Убедитесь, что на сайте установлен счетчик Roistat. Сразу после кода счетчика вставьте следующий скрипт:
<script> (function() { if (window.roistat !== undefined) { handler(); } else { var pastCallback = typeof window.onRoistatAllModulesLoaded === "function" ? window.onRoistatAllModulesLoaded : null; window.onRoistatAllModulesLoaded = function () { if (pastCallback !== null) { pastCallback(); } handler(); }; } function handler() { function init() { appendMessageToLinks(); var delays = [1000, 5000, 15000]; setTimeout(function func(i) { if (i === undefined) { i = 0; } appendMessageToLinks(); i++; if (typeof delays[i] !== 'undefined') { setTimeout(func, delays[i], i); } }, delays[0]); } function replaceQueryParam(url, param, value) { var explodedUrl = url.split('?'); var baseUrl = explodedUrl[0] || ''; var query = '?' + (explodedUrl[1] || ''); var regex = new RegExp("([?;&])" + param + "[^&;]*[;&]?"); var queryWithoutParameter = query.replace(regex, "$1").replace(/&$/, ''); return baseUrl + (queryWithoutParameter.length > 2 ? queryWithoutParameter + '&' : '?') + (value ? param + "=" + value : ''); } function appendMessageToLinks() { var message = 'roistat_{roistat_visit}'; var text = message.replace(/{roistat_visit}/g, window.roistatGetCookie('roistat_visit')); text = encodeURI(text); var linkElements = document.querySelectorAll('[href*="//t.me"]'); for (var elementKey in linkElements) { if (linkElements.hasOwnProperty(elementKey)) { var element = linkElements[elementKey]; element.href = replaceQueryParam(element.href, 'start', text); } } } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); } }; })(); </script>
-
Если вы ещё не используете бота Telegram, создайте его:
- Найдите бота @BotFather в Telegram.
- Запустите бота, отправив в чат команду
/start
. - Отправьте в чат команду
/newbot
. - Создайте бота, следуя инструкции, которую предоставляет @BotFather.
После создания бота вам будет выдан API-токен. Сохраните его, он понадобится для настройки интеграции.
Если у вас есть готовый бот, зайдите в диалог с @BotFather и найдите в истории сообщений API-токен соответствующего бота.
-
В интерфейсе RetailCRM перейдите в раздел Администрирование → Интеграция → Ключи доступа к API и создайте API-ключ, который будет использоваться для передачи сообщений. При создании ключа выберите все метода раздела Интеграция:
-
Перейдите в раздел Администрирование → Интеграция → Маркетплейс, откройте модуль интеграции с Telegram и нажмите Подключить. На странице подключения укажите URL вашей RetailCRM и API-ключ, созданный в п.3 в разделе Ключи доступа к API. Затем сохраните изменения.
После сохранения появится дополнительная вкладка Боты, где нужно указать API-токен, полученный в п.2 при создании бота:
-
Когда клиент впервые напишет в Telegram, в RetailCRM будет передан номер визита в формате
/start roistat_{number}
, где{number}
– номер визита. В примере ниже номер визита – 100500:Чтобы данные по этой заявке передались в Roistat, при создании сделки номер визита нужно скопировать в поле roistat, созданное при интеграции с RetailCRM.
*Правообладателем Facebook является запрещенная на территории РФ компания Meta Platforms, признанная судом экстремистской.