Правила репрайсера
Модуль ТЗ: 5.3 · Репрайсер
Что это
Правило репрайсера описывает, как автоматически менять цену: «для этих товаров, если показатель такой-то, повысить или понизить цену на N%, но не выходить за минимальную и максимальную цену». Само создание правила цену не меняет — цены меняются при запуске репрайсера.
Где найти
Боковое меню → «Цены» → «Репрайсер» (/app/wb/<кабинет>/repricer) →
блок «Правила» и форма «Новое правило» справа от него.
Как пользоваться
Создать правило
Заполните форму «Новое правило»:
- Название — например, «Повышение при низком остатке».
- Область действия — на какие товары распространяется правило:
- «Тип области»: «Один артикул» (nmId товара), «Бренд» (название бренда точно так, как оно записано в Wildberries) или «Список артикулов» (nmId через запятую или пробел);
- «Значение» — артикул, бренд или список.
- Условие — когда срабатывает правило: «Показатель», «Сравнение» (больше / меньше / равно) и «Порог».
- Изменение цены — «Действие» («Повысить цену на» или «Понизить цену на»), величина «На, %» от 1 до 50, а также «Мин. цена, ₽» и «Макс. цена, ₽» — границы, за которые репрайсер не выйдет. Границы можно не задавать.
- Флажок «Правило активно» — участвует ли правило в прогонах.
- Нажмите «Создать правило».
Изменить, выключить или удалить правило
В таблице «Правила» видны область, условие, действие, лимиты, частота и статус каждого правила. В колонке «Действия»:
- «Включить» / «Выключить» — правило остаётся, но выключенное не участвует в прогонах;
- «Редактировать» — открывает форму «Редактирование правила»; сохраните изменения кнопкой «Сохранить правило»;
- «Удалить» — после подтверждения правило удаляется из списка. Удаление «мягкое»: прошлые прогоны и история цен по этому правилу сохраняются.
Какое правило закреплено за конкретным товаром, видно в блоке «Товары под репрайсером», колонка «Правило».
Какое правило сработает
Если товар попадает под несколько активных правил, применяется созданное раньше всех — более старое правило имеет приоритет. Чтобы поменять приоритет, пересоздайте правила в нужном порядке.
Ограничения
-
Показатели для условий сейчас никто не передаёт автоматически. Кнопка «Запустить» и расписание запускают движок без показателей, поэтому правило с условием по показателю в таких прогонах не срабатывает. Срабатывает оно только при запуске через API с переданными показателями.
-
Подписи показателей в форме не совпадают с тем, что проверяет движок. Фактическое соответствие сейчас такое:
В форме Что на самом деле проверяется Остаток на WB остаток в днях продаж Заказы за 7 дней место товара в рейтинге продаж категории Маржа, % маржинальность, % Выкуп, % отклонение цены от средней цены конкурентов, % Текущая цена отклонение цены от средней цены конкурентов, % -
Форма умеет только процентное изменение от 1 до 50% и сравнения «больше / меньше / равно». Через API доступно больше: изменение в рублях, процент от −99 до +500, сравнения «не больше» / «не меньше» и безусловное правило
always. Если такое правило открыть и сохранить в форме, оно будет перезаписано ограниченным набором формы (например, изменение в рублях превратится в процентное, аalways— в «равно») или форма не даст его сохранить — правьте такие правила через API. -
Частота в таблице правил сейчас всегда показывает «По расписанию сервиса»: интервал расписания нельзя задать ни в форме, ни через API (см. «Расписание репрайсера»).
-
Минимальная цена не может быть больше максимальной; обе — целые рубли от 1.
-
Правило по бренду срабатывает только когда при запуске известен бренд товара; при запуске кнопкой «Запустить» и по расписанию бренд не передаётся, поэтому такие правила там не срабатывают.
Связанные страницы
Для интеграторов
POST /repricer/rules— поляwbAccountId,name,conditionMetric(stock_days,sales_rank,margin_pct,price_gap_pct),conditionOperator(lt,lte,gt,gte,eq,always),conditionValue,actionType(absolute— рубли,percent— проценты от −99 до 500),actionValue(положительное — повышение, отрицательное — понижение),minPrice,maxPrice,scope(sku,brand,list),scopeValue(nmId строкой / название бренда / JSON-массив nmId, например"[123,456]"),isActive.GET /repricer/rules?wbAccountId=…— фильтрыscope,isActive, пагинация.GET /repricer/rules/:id,PATCH /repricer/rules/:id(частичное обновление, кабинет менять нельзя),DELETE /repricer/rules/:id(мягкое удаление,204).GET /repricer/products— каталог кабинета с привязанным правилом.- Поле
scheduleIntervalHoursв API не принимается и не возвращается. - Справочник: API, решение — ADR-0022.