На сайте клиента в корзине есть возможность выбрать один из множества способов доставки. Это может быть как самовывоз из магазина, так и доставка услугами перевозчика. Так как менеджеры не только обрабатывают заказы, оформленные на сайте, но и создают их своими руками. Это означало, что в CRM-системе будет необходим функционал расчета стоимости доставки. Проанализировав маркет готовых решений для интеграций с транспортными компаниями, было выявлено, что не для всех из требуемых сервисов есть готовые решения. Было принято решение разработки собственного модуля рассчета стоимости доставки.
Для работы данного функционала на сайте было реализовано API работы с модулями, подключенными на сайте. Менеджер вводит данные в CRM-системе и получает в ответ доступные способы доставки с тарифами и прочей дополнительной информацией из которых он может выбрать нужный.
Интеграция систем RetailCRM и 1С:Управление торговлей.
В рамках проекта предусмотрена интеграция RetailCRM и системы учета 1С. На стороне RetailCRM необходимо реализовать триггеры, реагирующие на создание и изменение сущностей в системе, которые будут выполнять https запросы. Для ускорения обмена на стороне 1С реализован обмен на web-сервисах.
А) Передача заказов, изменений по заказам и клиентов.
Реализована двухсторонняя передача заказов между системами:
– Из 1С в RetailCRM передаются заказы, оформленные клиентами на сайте (заказ покупателя) и в рознице (чек продажи).
– Из RetailCRM в 1С передаются заказы, созданные менеджерами по продажам в системе, при обращении через альтернативные каналы продаж.
При создании заказа, переданного из одной системы в другую, проверяется, что соответствующий клиент есть в базе системы (соответствие клиентов обеспечивается при помощи равенства поля “GUID”).
Если клиента нет, то в системе создается новый клиент, если клиент есть, то данные могут быть обновлены, в случае изменения информации.
Изменения в 1С инициируют некоторые изменения в системе RetailCRM (смена статуса) – Согласно логике процесса, после обработки заказа менеджером в RetailCRM, за обработку заказа принимается логист, который ведет заказ по статусам в 1С.
Формирование документа возврата через интерфейс RetailCRM. При возникновении необходимости формирования документа Возврата, менеджер в необходимом заказе меняет статус товара на “Возврат”. В этот момент выполняется запрос в систему 1С и если по заказу была сформирована отгрузка, то в системе формируется документ Возврата.
Б) Перерасчет суммы заказа, согласно маркетинговым правилам.
Магазин использует гибкую систему скидок и акций, которые можно настроить в 1С. При оформлении заказа в RetailCRM реализован функционал работы со скидками и акциями. При создании менеджером нового или изменении товарного состава существующего заказа в системе RetailCRM, а также заполнении поля промокод выполняется запрос в учетную систему 1С, содержащий информацию о товарном составе заказа и промокоде, если он был введен.
В 1С эта информация обрабатывается и на основании нее, выполняется перерасчет стоимости заказа, согласно существующим в системе актуальным правилам (акциям) магазина.
Новая рассчитанная стоимость заказа должна быть передана из 1С в RetailCRM при помощи api-запроса на обновление заказа.
В) Передача каталога и остатков.
Из 1С в CRM передаются данные о товарном каталоге (номенклатуре). Для этого регулярно генерируется файл в формате XML с полями, указанными в разделе «База товаров», и размещается по определенной ссылке. RetailCRM «забирает» данные о товарном каталоге один раз в 3-4 часа (это обусловлено функциональными возможностями RetailCRM). Максимально возможное время задержки выгрузки – 4 часа, при этом доступна возможность инициировать выгрузку каталога в любое время вручную.
Также по изменению статусов в товарном составе выполняется актуализация остатков в RetailCRM.
На стороне 1С необходимо реализовать форму-интерфейс для настройки выгрузки каталога и остатков — выбор складов, категорий номенклатуры, типов цен для выгрузки.
Г) Перемещения товаров
При изменении статуса товара в RetailCRM в 1С отправляется запрос актуализации остатков. На его основании товары, забронированные на складах, бронируются на складах в 1С. На основании этих данных в системе создается “Заказ на перемещение” со складов, где товары забронированы, на Центральный склад, который выступает сортировочным пунктом. При оприходование товаров на центральном складе, если склад отгрузки не центральный склад, создается “Заказ на перемещение” с центрального склада на склад отгрузки.