В данном кейсе рассмотрим, как можно создать заказ покупателя в Мой склад
Мой склад — это облачная система для автоматизации учета, управления торговлей и складом
Задача
При переходе сделки в amoCRM на определенный этап — данные этой сделки вместе с товарами будут отправляться в MoreKit, по этим данным MoreKit будет создавать заказ покупателя в Мой Склад
Перед настройкой интеграции убедитесь, что ваши товары в Мой Склад и в amoCRM связаны по какому-либо полю, чтобы можно было найти товар в Мой Склад по данным товара в amoCRM
Подключение сервисов
Первым делом — подключим Мой склад и amoCRM в MoreKit, чтобы появились функциональные блоки дял выстраивания логической схемы
Подключение amoCRM
В MoreKit в разделе Сервисы — ищем в списке сервисов amoCRM, нажимаем на кнопку Добавить, произойдет перенаправление на страницу переадресации amoCRM, где необходимо выбрать нужную CRM, которую надо подключить в MoreKit
В amoCRM лучше создать поля для связи между сделкой и заказом в мой склад. В данном примере будут созданы поля Номер заказа и ID заказа в мой склад
Данные поля будут использованы в при поиске уже существующего заказа и заполняться в конце процесса для удобства


Подключение Мой склад
Теперь необходимо подключить Мой склад. Для подключения найдите Мой склад в списке сервисов, введите свой логин и пароль

В мой склад также создадим поля для связи. Создано два поля: Id сделки в амо и ссылка на сделку в амо

Создание процесса и установка webhook
Следующим шагом — создадим в MoreKit процесс с типом amoCRM DP и установим хук на нужном статусе, при перемещении на который нужно отправить сделку

После создания процесса — копируем ссылку из первоначального блока и устанавливаем триггер в amoCRM


Далее — переместим сделку с товарами на нужный статус, где установлен хук и убедимся, что данные дошли в Morekit

В MoreKit переходим в События в созданном процессе


Как видим — данные пришли, можно выстраивать схему передачи данных
Настройка процесса
Схема процесса будет выглядеть следующим образом

В данной схеме:
- Находим сделку в амо по ID сделки, который присылает триггер
- Ищем контакт из сделки
- Ищем контрагента в Мой Склад по номеру телефона или email. Если контрагент не нашелся — процесс не продолжится, в амо будет закреплено примечание, что не нашелся контрагент в Мой Склад
- Получаем товары из амо
- Находим каждый товар в Мой Склад по артикулу товара
- Переводим цены в копейки (амо отдает цену в рублях, мой склад требует передать цену в копейках)
- Подготавливаем список товарных позиций для передачи в мой склад
- Создаем заказ в Мой склад с товарами и заполняем технические поля в сделке и в заказе
Описание блоков схемы

#1 Найти сделки — получаем полные данные о сделке по ее ID из входящих данных

#2 Найти контакты — ищем контакт из сделки

#11 Найти контрагентов — ищем контрагентов в Мой Склад по номеру телефона контакта из амо

#13 Найти контрагентов — ищем контрагентов в Мой Склад по Email

#12 Создать примечание — если контрагент в Мой склад не был найден — оповещаем об этом в сделке в амо с помощью примечания

#3 Список привязанных элементов — получаем список товаров, привязанных к сделке в амо

#4 Цикл — запускаем цикл на товары. Каждый товар внутри цикла будет собран в товарную позицию для передачи в мой склад
Часть блоков внутри цикла:

#5 Найти элемент каталога — получаем данные товара в amoCRM

#7 Найти товары — ищем товар в Мой склад по артикулу товара в амо

#8 Посчитать — Переводим цену товара амо из рублей в копейки

#6 Подготовить позицию заказа — подготавливаем позицию заказа по товару для передачи в заказ в Мой склад

#9 Добавить в список — переменная в MoreKit, в которую запишется список позиций заказа по товарам из amoCRM

#10 Создать заказ — создаем заказа в Мой склад. Заполняем технические поля по данным сделки из amoCRM, передаем список с товарными позициями и контрагентов

#14 Обновить сделку — заполняем сделку в amocrm данными по созданному заказу в мой склад
Тестирование процесса
После выстраивания логической схемы — нужно проверить, что все работает. Можно либо нажать на значок перезапуска события в morekit

Либо снова передвинуть сделку на этап, где установлен триггер отправки webhook в amocrm
Передвинем сделку, предварительно проверим, что в ней есть товары с артикулами


После перемещения сделки видим — что заполнились тех. поля, значит процесс выполнился

Идем проверять заказ в Мой Склад

Перейдем в заказ, убедимся что товарные позиции подтянулись и поля заполнились. Теперь можно провалиться в сделку amoCRM прямо из заказа в Мой склад

В MoreKit соответственно появилось выполненное по шагам позиция

Если заказ не создался — смотрите событие, там будет ошибка. В последнем шаге ошибочного лога описывается, в чем проблема
Подведем итоги
В данном кейсе рассмотрели, как можно создать заказ в Мой склад по данными сделки в amoCRM, с учетом прикрепления товарных позиций
В процессе:
- Настроили логическую схему передачи в morekit
- Обработали поиск контрагента в Мой склад
- Предсобрали позиции заказа по товарам в amoCRM
- Создали заказ с заполнением технических полей