Экспорт из Битрикс24 в МойСклад — события CRM, очередь, заказ
Экспорт — это перенос из Битрикс24 в МойСклад. Его никто не запускает вручную: кнопки «Выгрузить» в карточке сделки нет и не нужно. Менеджер просто работает в CRM, а модуль следит за изменениями.
Что запускает экспорт
Модуль подписан на события Битрикс24. Каждое из них только ставит задачу в очередь — сам обмен идёт следом, в фоне.
| Что произошло в Битрикс24 | Что уходит в МойСклад |
|---|---|
| Сделку создали | Заказ покупателя или заказ поставщику |
| Сделку изменили (стадия, поля, товары, клиент…) | Обновление того же заказа |
| Контакт создали или изменили | Контрагент — только если включён независимый обмен контрагентами |
| Компанию создали или изменили | Контрагент — только если включён независимый обмен контрагентами |
| Оплату в сделке сохранили | Входящий платёж — только если включён контур оплат с направлением в МойСклад |
Список событий модуля и их состояние видны на странице Диагностика → События модуля (см. События модуля). Если событие там отключено, изменения в CRM просто не создают задач.
На удаление сделки, контакта или компании модуль не подписан. Удалённая в Битрикс24 запись останется в МойСклад. См. Ограничения.
Путь сделки до заказа
По шагам:
- Какой это документ. Модуль смотрит на поле типа документа в сделке. Явное значение «Заказ поставщику» — пойдёт заказ поставщику; во всех остальных случаях — заказ покупателя.
- Включён ли этот документ. Если обмен выбранным документом выключен («Включить обмен для документа»), сделка пропускается.
- Хватает ли настроек. Модуль проверяет, что выбрано поле типа документа и есть хотя бы одно поле поиска с «Сохранять соответствия». Если нет — сделка не уезжает, причина пишется в Логи.
- Проходит ли фильтр. Если на вкладке Фильтры заданы условия для сделок Битрикс24, сделка должна подойти под все сразу. Например, «только сделки, созданные после 1 января».
- Есть ли уже такой заказ. Модуль ищет пару в МойСклад по полям поиска — сверху вниз. Как это устроено, читайте в разделе Как модуль находит пару.
- Создать или обновить. Нашёл — обновляет, причём отправляет только реально изменившиеся поля. Не нашёл — создаёт новый заказ.
- Клиент. Вместе с заказом модуль находит или создаёт в МойСклад контрагента — по контакту или компании сделки. Это происходит всегда, даже если независимый обмен контрагентами выключен: заказ без клиента в МойСклад не бывает.
- Товары. Если включён обмен корзиной в сторону МойСклад, товарные строки сделки превращаются в позиции заказа. Товара, которого нет в МойСклад, модуль создаёт сам — см. Корзина.
- Связка. После создания модуль сохраняет идентификатор нового заказа в те поля поиска сделки, у которых включено «Сохранять соответствия», — по ним заказ найдётся в следующий раз.
Менеджер добавил в сделку два товара и перевёл её на стадию «Счёт выставлен». В МойСклад появляется заказ покупателя: клиент — компания из сделки, в позициях — те же два товара с ценами и скидками, статус — тот, что сопоставлен стадии «Счёт выставлен» на вкладке Статусы.
Контакты и компании
Отдельно от сделок контакты и компании выгружаются, только когда включена настройка «Включить независимый обмен контрагентами» (Контрагенты → Общие настройки). Без неё в МойСклад попадают лишь те клиенты, по которым есть сделки.
Каким типом контрагента станет запись, модуль решает так:
- по полю типа контрагента в карточке контакта или компании, если оно заполнено;
- иначе — по типу уже связанного контрагента в МойСклад;
- иначе — по настройке «Тип по умолчанию — компания» или «Тип по умолчанию — контакт».
Если выключена «Компания участвует в обмене» или «Контакт участвует в обмене», такие записи не обмениваются вовсе — ни отдельно, ни в составе сделки.
Оплаты
Сохранение оплаты в сделке выгружается во входящий платёж, когда одновременно:
- включён «Включить контур оплат» и направление «Направление обмена оплатами» допускает выгрузку в МойСклад;
- включён обмен заказом покупателя, и заказ этой сделки уже есть в МойСклад — платёж привязывается к нему;
- оплата принадлежит заказу, связанному со сделкой. Оплаты интернет-магазина без сделки модуль не трогает.
При включённой «Экспортировать только оплаченные» (так по умолчанию) уходят только оплаты с отметкой «Оплачено». Подробнее — Оплаты.
Как быстро
Обычно — за несколько секунд после сохранения. Если изменений сразу много (массовое обновление сделок, импорт в CRM), модуль переходит на разбор очереди по расписанию: агент обрабатывает до десяти задач примерно раз в минуту. Подробнее — в разделе Очередь.