Быстрый старт
Пошаговое руководство по запуску промо-кодов на MiniShop3-магазине.
Шаг 1: Установка
Установите ms3PromoCode через Extras → Installer в админке MODX. Перед установкой убедитесь, что есть зависимости:
- MiniShop3 1.10+
- pdoTools 3.x
- VueTools
При установке Phinx-миграции применятся автоматически — таблицы modx_ms3_promo_codes и modx_ms3_promo_code_usages будут созданы.
Шаг 2: Создание первого кода
- Откройте Промо-коды → Управление кодами в админ-меню.
- Нажмите Создать.
- Заполните форму:
- Код — например,
WELCOME10. - Тип скидки —
percent. - Размер —
10. - Область —
all(на всю корзину). - Активен — да.
- Код — например,
- Сохраните.
Подробнее об опциях — Управление кодами.
Шаг 3: Добавление формы в шаблон корзины
В шаблоне страницы корзины (например, tpl.msCart или собственный чанк) добавьте вызов сниппета:
{'!ms3PromoCodeForm' | snippet}Сниппет отрендерит готовую форму с полем ввода и кнопкой «Применить». Стили подключатся автоматически (через системную настройку ms3promocode.frontend_assets_preset).
Шаг 4: Проверка
- Откройте каталог, добавьте товар в корзину.
- Перейдите в корзину — должна появиться форма промо-кода.
- Введите
WELCOME10→ нажмите «Применить». - Цены позиций уменьшатся на 10%, итоговая сумма обновится.
- Оформите заказ.
- В админке: Заказы → ваш заказ → вкладка «Промо-код» покажет применённый код.
- Промо-коды → Аналитика — увидите запись о применении.
Шаг 5 (опционально): Настройка автосброса при отмене
Если хотите, чтобы при переводе заказа в статус «Отменён» применение промо-кода откатывалось (декремент used_count) — настройте системную настройку:
- Система → Настройки → namespace
ms3promocode. - Найдите
ms3promocode.cancel_statuses. - Укажите ID статусов через запятую, например:
5,6(если 5 = «Отменён», 6 = «Отказ»).
При обратном переходе из этих статусов применение восстанавливается автоматически.
Шаг 6 (опционально): Блокировка изменений по статусу
Чтобы менеджеры не могли применить или снять код у заказа в определённых статусах:
- Система → Настройки →
ms3promocode.lock_statuses. - Укажите ID статусов через запятую, например:
4,5(если 4 = «Доставлен», 5 = «Отменён»).
В этих статусах вкладка «Промо-код» в карточке заказа становится только-для-чтения.
Что дальше
- Управление кодами — все опции редактора (даты действия, лимиты, минимальная сумма, правила).
- Шаблон формы — как переопределить чанк, какие data-атрибуты доступны.
- Web API — для интеграции с собственным фронтендом / SPA.
- Аналитика — KPI и журнал использований.
Типовые сценарии
Скидка на конкретный бренд
- Создайте код, например
APPLE15, типpercent, размер15. - Область —
matching(только подпадающие позиции). - Перейдите на вкладку Правила, в секции Бренды выберите нужный бренд.
- Сохраните.
В корзине скидка будет распределена пропорционально только по позициям выбранного бренда.
Скидка только при заказе от 5000 ₽
- Создайте код, например
BIG500, типfixed, размер500. - В поле Минимальная сумма заказа укажите
5000. - Сохраните.
Если корзина меньше 5000 ₽ — покупатель увидит сообщение «Сумма заказа меньше требуемого минимума (5 000 ₽)».
Пакетная генерация кодов для рассылки
- Промо-коды → Создать.
- Переключите режим на По маске.
- Маска:
WINTER-####-??. - Количество:
1000. - Установите остальные параметры (тип, размер, период).
- Сохраните — будет создано 1000 уникальных кодов вида
WINTER-4729-KM, готовых к рассылке.
