Триггер на изменение статуса заказа
Создание триггера
Задача - отловить изменение статуса заказа в RetailCRM и отправить информацию об этом на сайт.
- Создаю новый триггер в RetailCRM. Называю его changeStatus.
- Указываю событие Изменение заказа
- Задаю условие применения (срабатывания) триггера
changeSet.hasChangedField("status") and changeSet.getNewValue("status")
- Указываю действие HTTP запрос
- Указываю страницу сайта, на которую будет отправлен запрос https://site.ru/
Для MODX я всегда указываю главную страницу сайта или просто адрес сайта. - Выбираю HTTP метод POST
- Параметры запроса.
Имя | Значение |
---|---|
retailCRM_action | change_status |
status | {{order.getStatus().getCode()}} |
order_id | {{order.getExternalId()}} |
- Сохраняю.
Если все сделал правильно, то при изменении статуса заказа - на сайт улетит POST запрос, с указанными параметрами.
Прием и обработка данных на сайте
На сайте данные подхватит плагин modRetailCRM, который найдет нужный заказ и установит для него соответствующий статус. Нужно только проследить, чтобы настройках miniShop2 в каждом статусе заказа - был заполнен символьный код статуса в RetailCRM А в системных настройках modRetailCRM была заполнена настройка modretailcrm_sync_statuses