Для эффективного управления продажами и складским учетом необходимо обеспечить актуальность данных о товарных остатках и сделках. Если вы используете Битрикс24 для управления сделками и МойСклад для учета товаров, отсутствие интеграции между этими системами приводит к ручной обработке данных, что отнимает время и увеличивает вероятность ошибок. В этой статье мы разберем, как настроить автоматическое создание и обновление заказов в МойСклад при изменении статуса сделки в Битрикс24, а также как сопоставить товары между системами по артикулу.
1. Отсутствие синхронизации между Битрикс24 и МойСклад
Проблема
Наш заказчик занимается оптовыми и розничными продажами лабораторной посуды, оборудования и аксессуаров для химических процессов. Товарный каталог есть и в Битрикс24, и в МойСклад.
Учет товаров ведется в МойСклад, а сделки — в Битрикс24, но без интеграции возникают сложности:
- Ручной ввод данных. Когда создается новая сделка, в которой прикреплены товары и их количество, эти данные не попадают в МойСклад и остатки не актуализируются. Приходится вручную вносить данные по остаткам товаров в МойСклад.
- Несоответствие названий товаров. Названия товаров в системах может различаться и поэтому сопоставлять товары можно только по артикулу.
- Обновление заказов. Иногда в сделку, которая уже отправлена на сборку товаров для клиента, нужно внести изменения. Тогда заказ в МойСклад становится неактуален, пока его не исправят вручную.
- Поиск контрагентов. Контрагента в МойСклад нужно вруучную искать по ИНН и привязывать к заказу.
- Ошибки. Ручная работа увеличивает риск ошибок при отгрузке и учете.
Такая ручная синхронизация товаров в МойСклад и сделок в Битрикс24 отнимает много времени менеджеров и чревата ошибками. Что замедляет процессы и снижает эффективность продаж.
Решение
Убраь ручной труд из процесса синхронизации товаров в МойСклад и сделок в Битрикс24 можно с помощью интеграций на платформе Пинкит. Для этого нужно настроить интеграции по такой логике:
1.1. Создание заказа. При перемещении сделки в Битрикс24 в воронке "Юридические лица" на стадию "На сборке" заказ автоматически создается в МойСклад.
1.2. Обновление заказа. Если сделка, которая была на стадии "На сборке", затем перешла на другую стадию и вернулась после изменений обратно на стадию "На сборке", заказ в МойСклад обновляется.
Как настроить создание заказа в МойСклад при обновлении сделки в Битрикс24?
Схематически интеграция "Сделка – обновлена => Создать заказ в МойСклад" настравивается так:
– Шаг 1 – Сделка – обновлена. Направление: "ЮЛ" и Стадия: "На сборке"
– Шаг 2 – Обрабатываем полученную информацию по сделке и проверяем, что ранее заказ уже не создавался. Учитываем момент, что если сделка возвращается на эту стадию снова, то мы просто её обновляем, а не создаем новую (будет чек-бокс, который будет фиксировать это). Поиск нужного товара будем делать по артикулу.
– Шаг 3 - Мой склад – создать заказ.
– Шаг 4 – Сопоставление данных.
Как обновить заказ в МойСклад при изменении сделки?
Шаги настройки интеграции "Сделка – обновлена => Заказ обновить в МойСклад" выглядят так:
– Шаг 1 – Сделка – обновлена. Направление: "ЮЛ" и Стадия: "На сборке".
– Шаг 2 – Обрабатываем полученную информацию по сделке и проверяем, что ранее заказ уже был создан и его нужно просто обновить. Поиск нужного товара будем делать по артикулу.
– Шаг 3 - Мой склад – создать заказ.
– Шаг 4 – Сопоставление данных.
Готовый шаблон интеграции и описание кейса вы можете установить по ссылке.
Далее покажем, как настроить эти интеграции "с нуля".
2. Сделка переведена на стадию "На сборке" => Создать заказ в МойСклад
2.1. Шаг 1: Откуда
Сделка переводится на стадию "На сборке", выбираем событие обновления сделки в Битрикс24.
2.2. Шаг 2: Инструменты
2.2.1. Проверить, что ранее заказ не выгружался
- Проверить
Используем проверку по полю source.UF_CRM_1747215899. Условие - (Логическое) Ложь, Действие - Продолжить, если проверка пройдена.
- Проставить галочку, что заказ создался в МойСклад
Используем API-запрос методом GET с указанием URL /crm.deal.update?id={{source.ID}}&fields[UF_CRM_1747215899]=1.
2.2.2. Проверка контрагента и его создание
- Получить реквизиты по Компании
Используем API-запрос методом GET с указанием URL /crm.requisite.list?filter[ENTITY_ID]={{source.COMPANY_ID}}.
- Найти компанию в МойСклад по ИНН
Используем API-запрос методом GET с указанием URL /entity/counterparty?filter=inn~{{step3.result.0.RQ_INN}}.
- Если компания найдена по ИНН в МойСклад, тогда Ложь, иначе Истина
Используем инструмент Если-иначе по полю step4.rows. Условие - пустое значение, Результат при успешной проверке = 1, Результат при неуспешной проверке 0.
- Создать контрагента, если ранее его не было в МойСклад
Используем API-запрос методом POST с указанием URL /entity/counterparty. Условие выполнения - step5.
Тело запроса:
{
"name": "{{step3.result.0.RQ_COMPANY_NAME|escape()}}",
"legalTitle": "{{step3.result.0.RQ_COMPANY_FULL_NAME|escape()}}",
"inn": "{{step3.result.0.RQ_INN}}",
"kpp": "{{step3.result.0.RQ_KPP}}"
}
- Выбрать уже существующего или нового контрагента
Используем инструмент Если-иначе по полю step4.rows. Условие - Пустое значение, Результат при успешной проверке - {{step6.meta.href|default()}}, Результат при неуспешной проверке - {{step4.rows.0.meta.href|default()}}.
2.3. Шаг 3: Куда
Создаем заказ в МойСклад.
2.4. Шаг 4: Сопоставление данных
Сопоставляем название заказа покупателя и название сделки.
2.5. Шаг 5: Запуск
3. Обновить заказ и добавить в него нужное количество товаров
3.1. Шаг 1: Откуда
Выбираем событие успешного срабатывания предыдущей интеграции.
3.2. Шаг 2: Инструменты
- Получить товары сделки
Используем API-запрос методом GET с указанием URL /crm.deal.productrows.get?id={{source.int10682.source.ID}}.
- Для каждого полученного товара
Используем перебор Для каждого поле step1.result.
- Преобразовать товар в массив
Используем Преобразование типов данных в поле step2. Тип данных - Массив.
- Получить товар подробнее в Битрикс24
Используем API-запрос методом GET с указанием URL /crm.product.get?ID={{step2.PRODUCT_ID}}.
- Поиск товара в МойСклад
Используем API-запрос методом GET с указанием URL /entity/product/?search={{step3.result.PROPERTY_240.value}}.
- Собрать массив товаров
Объединяем прогоны.
- Собрать запрос с товаром
Используем Преобразование массива объектов в поле step6.
Сопоставляем количество, цену, скидку и другие параметры.
- Фильтр
Используем Фильтр элементов массива в поле step7. Название поля внутри элемента массива - quantity. Условие - Существует.
3.3. Шаг 3: Куда
Обновляем заказ в МойСклад.
3.4. Шаг 4: Сопоставление данных
Сопоставляем ID заказа и {{source.int10682.result.id}}.
Добавляем пользовательское сопоставление:
Позиции товаров
Тип: Тело
Название параметра: positions
Значение параметра: {{step10}}
3.5. Шаг 5: Запуск
Запускаем.
4. Сделка переведена на стадию "На сборке" => Обновить заказ в МойСклад
4.1. Шаг 1: Откуда
Сделка переводится на стадию "На сборке", выбираем событие обновления сделки в Битрикс24.
4.2. Инструменты
4.2.1. Проверить, что ранее заказ не выгружался
- Проверить
Используем проверку по полю source.UF_CRM_1747215899. Условие - (Логическое) Истина, действие - продолжить, если проверка пройдена.
- Найти ранее выгруженный заказ
Используем шаг Поиск ID соответствующий сущности. Название поля - source.ID.
- Проверить, что заказ уже есть
Используем проверку по полю step8. Условие - (Логическое) Истина, Действие - Продолжить, если проверка пройдена.
4.2.2. Получить реквизиты по Компании
Используем API-запрос методом GET с указанием URL /crm.requisite.list?filter[ENTITY_ID]={{source.COMPANY_ID}}.
- Найти компанию в МойСклад по ИНН
Используем API-запрос методом GET с указанием URL /entity/counterparty?filter=inn~{{step3.result.0.RQ_INN}}.
- Если компания найдена по ИНН в МойСклад, тогда Ложь, иначе Истина
Используем инструмент Если-Иначе по полю step4.rows. Условие - Пустое значение, Результат при успешной проверке = 1, Результат при неуспешной проверке = 0.
- Создать контрагента, если ранее его не было в МойСклад
Используем API-запрос методом POST с указанием URL /entity/counterparty. Условие выполнения step5.
Тело запроса:
{
"name": "{{step3.result.0.RQ_COMPANY_NAME|escape()}}",
"legalTitle": "{{step3.result.0.RQ_COMPANY_FULL_NAME|escape()}}",
"inn": "{{step3.result.0.RQ_INN}}",
"kpp": "{{step3.result.0.RQ_KPP}}"
}
- Выбрать уже существующего или нового контрагента
Используем шаг Если-иначе в поле step4.rows. Условие - Пустое значение, Результат при успешной проверке - {{step6.meta.href|default()}}, Результат при неуспешной проверке - {{step4.rows.0.meta.href|default()}}.
4.3. Шаг 3: Куда
Обновляем заказ в МойСклад.
4.4. Шаг 4: Сопоставление данных
Сопоставляем ID заказа и {{step8}}.
4.5. Шаг 5: Запуск
Запускаем.
5. Обновить заказ и добавить туда нужное количество товаров
5.1. Шаг 1: Откуда
Выбираем событие успешно отработавшей интеграции, настроенной ранее.
5.2. Шаг 2: Инструменты
- Получить товары сделки
Используем API-запрос методом GET с указанием URL /crm.deal.productrows.get?id={{source.int10400.source.ID}}.
- Для каждого полученного товара
Используем шаг Для каждого в поле step1.result.
- Преобразовать товар в массив
Используем Преобразование типов данных в поле step2. Тип данных - массив.
- Получить товар подробнее в Битрикс24
Используем API-запрос методом GET с указанием URL /crm.product.get?ID={{step2.PRODUCT_ID}}.
- Поиск товара в МойСклад
Используем API-запрос методом GET с указанием URL /entity/product/?search={{step3.result.PROPERTY_240.value}}.
- Собрать массив товаров
Объединяем прогоны.
- Собрать запрос с товаром
Используем преобразование массива объектов в поле step6.
- Фильтр
Используем Фильтр элементов массива в поле step7. Условие - Существует, Название поля внутри элемента массива - quantity.
5.3. Шаг 3: Куда
Обновляем заказ в МойСклад.
5.4. Шаг 4: Сопоставление данных
Сопоставляем ID заказа и {{source.int10400.result.id}}. Добавляем пользовательское сопоставление.
Позиции товаров
Тип: Тело
Название параметра: positions
Значение параметра: {{step10}}
5.5. Шаг 5: Запуск
Запускаем.
6. Итог
Интеграция Битрикс24 и МойСклад на платформе Пинкит позволяет автоматизировать процессы создания и обновления заказов, минимизировать ручной труд и исключить ошибки, связанные с несоответствием данных.
Настройка синхронизации через API обеспечивает актуальность информации о товарах и контрагентах, ускоряя обработку сделок и повышая эффективность продаж:
- Не нужно больше руками создавать заказ в МойСклад из сделки Битрикс24, искать соответствующие товары и контрагента и привязывать их к заказу.
- В каждой сделке проставляется галочка, что заказ в МойСклад создан.
- Актуализируются остатки товаров в МойСклад без ручного труда автоматически при переводе сделки на стадию В сборке.
С помощью приведенной в статье инструкции вы можете сами настроить это решение или просто скачайте готовый шаблон интеграции, адаптировав его под свои бизнес-процессы.
Начните оптимизацию уже сегодня и выведите управление заказами на новый уровень!
Нет времени вникать и разбираться с настройками? Напишите нам в Телеграм или WhatsApp, расскажите о вашем бизнес-сценарии, и наши инженеры помогут настроить первичную обработку поступающих сообщений без ручного труда и вести сделку по воронке продаж в Битрикс24.
Если вам нужна интеграция с сервисом, которого в Пинкит нет, или приватное событие/действие, через Пинкитбилдер вы можете самостоятельно добавить авторизацию, необходимые события и действия без разработки.
Подберите свой кейс публичной интеграции без регистрации здесь.
Алексей Окара, продакт-менеджер Пинкит
#пинол #пинкит #pinall #pinkit #bitrix24 #битрикс24 #amo #amocrm #амо #амоцрм #crm #црм #црмсистема #црм_система #внедрениецрм #интеграция #миграция #обмен #пинкитбилдер #битрикс24 #пинкит_мойсклад_битрикс24 #пинкит_мойсклад