В существующих реалиях, все (или почти все) кто связан с интернет-торговлей, понимают необходимость сбора данных о заказах и покупателях, хранения и дальнейшего использования этих данных, а также автоматизации в работе отделов продаж.
Именно поэтому многие интернет-магазины уже связаны с crm-системами, которые в свою очередь стараются дать все большие возможности, как в плане функций, так и для обмена с сайтами.
RetailCrm - облачная crm, для управления продажами и не только. Одна из лидирующих систем в онлайн-торговле.
Интеграция с помощью модуля
Интеграцию между сайтом на Битрикс и retailCrm проще всего настроить используя готовый модуль - официальное и бесплатное решение.
Это решение с открытым исходным кодом . Обычно, в маркетплейс обновления попадают реже, чем на github.
Как быстро внедрить данный модуль, инструкция есть на сайте retailCrm.
Модуль может:
- производить выгрузку новых заказов из 1С-Битрикс в систему;
- производить обновление данных по существующим заказам с учетом изменений, внесенных в 1С-Битрикс;
- производить выгрузку новых заказов и клиентов из системы в 1С-Битрикс;
- производить обновление данных по существующим заказам с учетом изменений, внесенных в систему (например, в системе был изменен статус заказа, количество товаров в заказе и др., в 1С-Битрикс эти изменения также будут отражены);
- отправлять в систему информацию об онлайн-оплате заказа пользователем.
Для базовых процессов все «из коробки».
Способы кастомизации
Все для разработчиков собрано на одной странице .
При использовании модуля есть несколько путей для кастомизации без потери кода при обновлениях:
- Вызываемые функции - в методах модуля встроен вызов нескольких функций, в которых можно модифицировать отправленные или полученные из crm данные
- Копирование файлов с классами из модуля в bitrix/php_interface/retailcrm, таким образом получаем возможность модифицировать код файла целиком.
- Использовать методы модуля в своих компонентах / контроллерах
В случае если нужно разработать полностью кастомную интеграцию под свои процессы, стоит воспользоваться php-библиотекой , на базе которой и построен готовый модуль.
Мини-кейс по доработке интеграции 1С-Битрикс и RetailCrm из реального проекта
Проблема
В случае нашего клиента, товары на сайте могут дополняться опциями, которые транслируются в заказ как свойства товаров.
В crm же товары уходили без свойств, что вызывало сложности с отгрузкой, в том числе случаи, когда товар уходил покупателю не в той комплектации.
Решение
В retailCrm было решено использовать свойства товара в заказе.
Эти свойства хранятся только в заказе и не добавляются в объект самого товара Crm (номенклатура товара остается не измененной).
Отправка заказа на сайте, в установленной версии модуля, осуществляется на событие OnSaleOrderEntitySaved, но в этот момент еще нет свойств товаров в корзине. Именно поэтому не удалось использовать наиболее подходящий на первый взгляд, способ кастомизации с помощью Вызываемых функций .
Следующим вариантом решения, стало подключиться к событию сохранения заказа OnSaleOrderSaved:
В кастомном классе, сформированы функции для:
- получения данных по заказу из crm;
- получения данных заказа в магазине;
- формирования новой корзины и отправки ее в crm.
При создании объекта класса, происходит авторизация в crm, для получения данных:
Данные заказа из retailCrm:
Таким образом мы получили данные из заказа и сформировали новую корзину для crm.
Затем обновили уже созданный к этому времени заказ в crm, c помощью методов модуля:
Кроме этого, на сайте был обработчик для заказа в 1-клик, его также дополнили, для отправки выбранной комплектации в retailCrm.
Требуется интеграция интернет-магазина с retailCRM или другой CRM системой или внешним сервисом? Отправьте вашу задачу на почту info@artwot.ru или позвоните нам по телефону +7 (495) 055-15-23. Менеджер проконсультирует вас и предложит варианты решения вашей задачи.