Самый распространённый запрос на интеграцию сайта с учетной системой МойСклад, как правило, импорт и синхронизация каталога, а также передача поступивших заказов и обновление их статусов.
Действительно, это базовый сценарий в работе интернет-магазинов, которые как раз таки и чаще пользуются CRM МойСклад, в отличии от каких-нибудь Битрикс24 или AmoCRM. Но иногда наши клиенты хотят большего и появляются интересные нетиповые сценарии обмена, про один из которых мы опишем в данном материале.
Стоит отдельно отметить широту возможностей REST API у МойСклад. Функционал настолько обширен, что позволяет реализовать, наверно, любой требуемый бизнес-процесс. И это касается не только обмена с сайтом, но и, например связь с другим сторонним сервисом или приложением.
Задача на обмен с МойСклад (МС)
Итак, суть поставленной задачи в широком смысле – исключить необходимость заходить в панель управления сайтом для менеджеров. Чтобы все взаимодействие с клиентом было в рамках одного окна внутри МС.
Причины запроса на поверхности – минимизация затрат на лишние операции менеджеров, на лишнее обучение работы с сайтом. Так же дополнительные моменты связанные с безопасностью, ведь требуется создавать каждому сотруднику отдельный доступ на сайт, а это лишние каналы утечки и прочего связанного.
Особым усложнением была особая надстройка на сайте заказчика. Каталог в этом интернет-магазине имеет несколько особых типов категорий. Одна категория доступна для любого клиента, но товары из других категорий становятся доступными для покупки после проверки документов покупателей.
Да, такая вот система. Пользователь регистрируется на сайте, подгружает документы, менеджер их проверяет и, если все хорошо, открывает доступ для приобретения товаров.
Не будем углубляться в тонкости бизнеса, нас больше интересует техническое решение. Как сделать так, чтобы менеджер проверял документы и открывал доступ в МойСклад и это автоматически передавалось бы на сайт?
Реализация двухстороннего обмена сайта с МойСклад
Первый ход был на стороне сайта. В реализованную форму регистрации мы добавляем обработчик, передающий данные в МС.
Конечно, при передачи идет проверка на наличие такого контрагента, ведь он до взаимодействия с сайтом мог напрямую работать с менеджером по телефону и офлайн каналам, и его карточка могла быть уже создана в CRM.
В этом стартовом обработчике после проверки существования контрагенты мы или создаем нового или обновляем существующего и передаем прикрепленные при регистрации файлы.
Если контрагент новый, его надо привязать к ответственному менеджеру. Заказчик по этому моменту дал инструкцию, что надо рандомно привязывать к одному из указанных сотрудников. Так и реализовали, завели список менеджеров и рандомайзер для связки с одним из них.
В CRM МС сотрудник получает уведомление и проверяет контрагента, если все хорошо ему надо клиента привязать к одной из 4 групп и эти группы связаны с группами пользователей на сайте. Для реализации этой части было создано в МС пользовательское поле и внесены 4 группы из которых менеджер и выбирает привязку.
Вебхуки изменения контрагента в МойСклад
Осталась последняя часть – сайт должен ловить изменения в МС, чтобы обновлять группу у пользователя и открыть ему возможность покупать продукцию. Стоит отметить, что до проверки аккаунт пользователя на сайте не активен.
Как вы уже могли догадаться, изменения в МойСклад мы проверяем через вебхуки.
Их особенность в том, что создаются они только через API, в отличии от ряда других аналогичных систем, когда можно их создавать в панели управления. Через скрипты с сайта мы добавили вебхук на изменения контрагента и связали его со специальным обработчиком, который предварительно создали.
Так как нас интересуют не все изменения, ведь карточку контрагента менеджер может обновлять часто, мы в скрипте настраиваем фильтрацию события – ищем только изменения пользовательского свойства групп сайта. И если находим, то меняем группу пользователя на сайте и активируем его.
Сохранение активность пользователя на сайте в МойСклад
В рамках этого же проекта по запросу заказчика так же был добавлен скрипт, который после каждой авторизации пользователя на сайте передает информацию о последнем входе. В целом это интересный сценарий, мы можем передавать любую событийную информацию с сайта, в ряде случаев это может помочь отслеживать активность клиентов, помогать менеджерам продавать больше, а автоматизировать процессы продаж привязываясь к по особым триггерам действий на сайте.
Резюме
REST API у МойСклад обладает широкими возможностями для реализации различных сценариев и бизнес-процессов. Руководителю компании достаточно обозначить цели и задачи, а наши специалисты разработают для вас оптимальное решение. Обращайтесь к нам за консультацией и для реализации кастомных и нетиповых интеграций сайтов с МС.