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

События связанные с заказом

[OnBeforeOrderApiCreate] Событие перед созданием заказа в МС

Событие вызывается перед созданием заказа в МС по API. Необходимо, если нужно модифицировать отправляемый запрос в МС на создание заказа.

Параметры события

ПараметрТипОписание
orderIdintID заказа в БУС
orderBx\Bitrix\Sale\OrderОбъект заказа Битрикс
orderChangesStackarray|nullМассив данных, отправляемых в МС как запрос на создание заказа

Возвращаемое значение

Верните EventResult::SUCCESS с модифицированным массивом данных. Массив заменит orderChangesStack перед отправкой в МС.

return new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::SUCCESS, $orderChangeStack);

[OnAfterOrderApiCreate] Событие после успешного создания заказа в МС

Событие вызывается после успешного создания заказа в МС по API. Необходимо для действий с заказом после создания в МС.

Параметры события

ПараметрТипОписание
orderIdintID заказа в БУС
orderMsobjectОбъект созданного заказа в МойСклад (ответ API)

Возвращаемое значение

Ничего возвращать не нужно. Событие информационное — результат не влияет на дальнейшую работу.


[OnBeforeSaveOrderChanges] Событие перед изменением заказа из БУС в МС

Событие вызывается каждый раз, когда модуль отправляет данные заказа в МС при обновлении заказа в БУС. Можно применять для модификации отправляемых данных в МС.

Параметры события

ПараметрТипОписание
orderIdintID заказа в БУС
orderBx\Bitrix\Sale\OrderОбъект заказа Битрикс
orderMsobjectОбъект заказа МойСклад (текущее состояние в МС)
orderChangesStackarrayМассив изменений, отправляемых в МС

Возвращаемое значение

Верните EventResult::SUCCESS с модифицированным массивом изменений. Массив заменит orderChangesStack перед отправкой в МС.

return new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::SUCCESS, $orderChangeStack);

[OnBeforeImportBxOrder] Событие перед началом импорта заказа в БУС из МС

Событие вызывается перед тем, как модуль начнёт создавать заказ в Битриксе из заказа МойСклад. Позволяет остановить импорт конкретного заказа.

Параметры события

ПараметрТипОписание
msOrderobjectОбъект заказа МойСклад, который планируется импортировать

Возвращаемое значение

Для остановки импорта — верните new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::ERROR)

Если импорт продолжать — ничего не возвращайте


[OnBeforeCreateBxOrder] Событие перед созданием заказа в БУС из МС

Событие отличается от события [OnCreateWebhookOrder] тем, что вызывается перед тем, как модуль сохранит заказ в Битриксе и позволяет редактировать его перед созданием.

Параметры события

ПараметрТипОписание
bxOrder\Bitrix\Sale\OrderОбъект заказа БУС (ещё не сохранён в БД)
msOrderobjectОбъект заказа МойСклад

Возвращаемое значение

Ничего возвращать не нужно. Объект $bxOrder передаётся по ссылке — вы можете напрямую модифицировать его через методы Bitrix API.


[OnFilterOrder] Событие для кастомной фильтрации заказов

Событие вызывается при проверке заказа на соответствие фильтрам модуля. Позволяет добавить собственные правила фильтрации заказов, которые могут запрещать или разрешать экспорт заказа в МС.

Параметры события

ПараметрТипОписание
orderIdintID заказа в БУС
isFiltredboolТекущее состояние фильтрации (true = заказ отфильтрован и НЕ будет отправлен в МС)

Возвращаемое значение

Верните EventResult::SUCCESS с массивом ['isFiltred' => true/false]:

  • true — заказ будет отфильтрован (НЕ отправится в МС)
  • false — заказ пройдёт фильтр (отправится в МС)
return new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::SUCCESS, ['isFiltred' => true]);