Перейти к основному содержимому

Как устроен обмен Битрикс24 и МойСклад — общая картина

Этот раздел — не про то, какую галочку где поставить, а про то, что происходит внутри, когда менеджер сохраняет сделку или кладовщик меняет заказ. Если понимать механику, большинство вопросов «почему заказ не появился» и «откуда взялся дубль» решаются за минуту.

Обмен в одной картинке​

Любое изменение — с какой бы стороны оно ни пришло — проходит через три звена: триггер, очередь и агент.

  1. Триггер замечает изменение. Со стороны Битрикс24 это событие CRM («сделку сохранили»), со стороны МойСклад — вебхук, то есть уведомление, которое МойСклад сам присылает на портал.
  2. Очередь получает задачу: «сделку № 1042 нужно выгрузить» или «заказ из МойСклад нужно загрузить». В задаче нет самих данных — только ссылка на запись.
  3. Агент берёт задачу, читает запись в её актуальном виде и переносит во вторую систему.

На практике это занимает секунды: модуль запускает задачу в фоне сразу после постановки, не дожидаясь расписания. Подробнее — в разделе Очередь.

Житейский пример

Менеджер переводит сделку на стадию «Счёт выставлен» и нажимает «Сохранить». Битрикс24 сразу отвечает менеджеру, а модуль в фоне ставит задачу, находит или создаёт в МойСклад заказ покупателя с теми же товарами и выставляет ему статус, сопоставленный этой стадии. Через пару секунд заказ уже виден на складе.

Что с чем обменивается​

Модуль работает с двумя парами сущностей — документами и контрагентами — и отдельно с оплатами:

Битрикс24МойСклад
СделкаЗаказ покупателя или заказ поставщику
Контакт, компанияКонтрагент (физлицо, ИП или юрлицо)
Оплата в сделкеВходящий платёж

Подробная таблица — что такое каждая сущность и какие её части переносятся — на странице Сущности МойСклад и Битрикс24.

Что от чего зависит​

Обмен — это цепочка: одни настройки не заработают без других. Ниже — что нужно, чтобы каждый участок действительно поехал.

  • Без подключения к МойСклад не работает ничего. Если доступ пропал (сменили пароль, отозвали токен), очередь приостанавливается и ждёт — попытки задач при этом не тратятся. См. Подключение к МойСклад.
  • Без вебхуков нет обратной стороны. Экспорт будет работать, но изменения, сделанные в МойСклад, в Битрикс24 не придут. См. Вебхуки МойСклад.
  • Контрагенты нужны всегда. У заказа в МойСклад обязательно есть контрагент, поэтому клиент сделки переносится вместе со сделкой — даже если отдельный обмен контактами и компаниями выключен. Значит, поиск и типы контрагентов придётся настроить в любом случае. См. Контрагенты.
  • Документу нужны поле типа документа и поля поиска. Пока в настройках документа не выбрано поле сделки с типом документа МойСклад и ни у одного поля поиска не включено «Сохранять соответствия», модуль этот документ не обменивает — он защищается от дублей. См. Заказ покупателя.
  • Справочники — сотрудники, валюты, единицы измерения, ставки НДС — сопоставляются вручную. Без соответствия ответственный или валюта просто не переносятся. См. Справочники.
  • Товары в заказе требуют каталога. Чтобы переносить товарные позиции, нужно включить обмен корзиной в настройках документа и указать на странице Корзина инфоблок торгового каталога и поля поиска товаров. См. Корзина.
  • Оплаты живут только рядом с заказом покупателя. Обмен оплатами работает, когда включён обмен заказом покупателя и заказ уже есть в МойСклад. Для импорта оплат обязательна «Платёжная система по умолчанию». См. Оплаты.
Недонастроенное пропускается молча

Если какой-то обязательной настройки не хватает, модуль не показывает ошибку — он просто не обменивает эту запись, а задача в очереди завершается как «Выполнена». Причину пропуска ищите в Логах, а не в очереди.

Куда читать дальше​