[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurrency


В версии 1.3.0 компонент получил новый полезный функционал для электронной коммерции:

– Бонус-коды (или подарочные купоны, или сертификаты),
– Уведомления о скором сгорании бонусов,
– Массовое начисление бонусов пользователям,
– Совместимость с msMultiCurrency.

Бонус-коды



Бонус-коды – это подарочные купоны/карты или сертификаты, которые единоразово вводятся юзером на фронтенде в личном кабинете, после чего сумма бонус-кода попадает на бонусный счёт юзера.

Например, вы можете вознаграждать своих покупателей N-ной суммой в виде купона, который они будут вводить в своём личном кабинете и использовать полученную сумму бонусов на будущую покупку. Также можно замотивировать пользователей поскорее потратить этот активированный бонус, указав в системной настройке msb2_lifetime_for_bonus его (coupon_accrual) время жизни, например в течение 1 недели.

Важно осознавать, что это не промо-коды. Для реализации функционала промо-кодов в корзине, есть компонент msPromoCode2.

Для вывода формы активации бонусного купона достаточно вызвать сниппет msBonus2Coupon в Личном кабинете юзера:

{'!msBonus2Coupon' | snippet : []}

Уведомления о скором сгорании бонусов



Часто бывает нужно подтолкнуть покупателя совершить заказ на сайте. Для этого можно предпринимать разные методы. Одним из таких методов может быть уведомления на почту о скором сгорании бонусов на бонусном счёте юзера.

Теперь в компоненте можно указать количество дней, за которое заранее предупреждать пользователя о сгорании части бонусов на его бонусном счёте. Делается это через настройку msb2_notify_burning_days. В ней можно указать несколько уведомлений через запятую, например: 10,5,1 (юзер будет уведомлён за 10 дней, далее за 5 дней и за 1 день до сгорания бонусов).

Важно!
Любые уведомления на почту совершаются только если настроен cron-скрипт для отработки рутинных действий, либо если установлен пакет Scheduler и включена настройка ms2_use_scheduler в miniShop2.
Реализовано это так для того, чтобы лишний раз не нагружать фронтенд рассылкой писем, что вполне логично.

Массовое начисление бонусов



Также в новой версии появилась возможность ручного массового начисления (или списания) бонусов юзерам.
Можно начислить как вообще всем, так и только выбранным в таблице юзерам.

Вместе с тем было реализовано разделение ручных действий с бонусами (системная настройка msb2_form_action_types) на одиночные и массовые, через исключения определённых ключей из массовых действий. Для этого появилась системная настройка msb2_form_exclude_types_from_mass.

Совместимость с msMultiCurrency


Совместимость с компонентом msMultiCurrency, реализующим мультивалютность на сайте, работает только в режиме единой базовой валюты – иначе говоря, при выключенной системной настройке msmulticurrency.cart_user_currency = false.

Важно!
Если у вас уже была реализована совместимость msBonus2+msMultiCurrency, то будьте аккуратны при обновлении msBonus2 до версии 1.3.0. После обновления обязательно перепроверьте, всё ли корректно работает при оформлении заказа с применёнными бонусами. Если есть проблемы, то попробуйте отключить ваш кастомный функционал данной совместимости. Вероятно, это могло быть реализовано у вас на сайте через плагин на события msmcOnToggleCurrency и msOnChangeOrderStatus + правками в чанках tpl.msBonus2.form и tpl.msBonus2.logs.

P.S. Проспонсировал новый функционал MiniWarPaint.
Павел Гвоздь
01 февраля 2025, 00:07
modx.pro
Поблагодарить автора Отправить деньги

Комментарии: 4

Денис Усманов
01 февраля 2025, 00:43
+1
Круто! Увидел твой компонент у клиента на днях, мне очень понравился! Рад, что есть такой мощный инструмент, очень полезный практически на всех магазинах!
    Павел Гвоздь
    01 февраля 2025, 00:49
    +1
    Благодарю за такую высокую оценку!
    Андрей Шевяков
    01 февраля 2025, 08:46
    0
    Добрый день!
    Бонус-коды – это подарочные купоны/карты или сертификаты, которые единоразово вводятся юзером на фронтенде в личном кабинете, после чего сумма бонус-кода попадает на бонусный счёт юзера.

    Например, вы можете вознаграждать своих покупателей N-ной суммой в виде купона, который они будут вводить в своём личном кабинете и использовать полученную сумму бонусов на будущую покупку. Также можно замотивировать пользователей поскорее потратить этот активированный бонус, указав в системной настройке msb2_lifetime_for_bonus его (coupon_accrual) время жизни, например в течение 1 недели.
    Вопрос:

    Это отличный вариант, чтобы делать вариант Подарочных сертификатов на сайте. Но не понятен момент, можно ли для них выставлять параметр «Максимальный процент корзины»?

    Пример:

    У нас на сайте бонусами можно оплатить 20% от стоимости заказа.


    Если мы донастроим момент с подарочными сертификатами из нового функционала дополнения, то получается клиенту добавятся бонусы на счет, но вариант списания все равно 20% останется же, для нашего случая верно же понимаю?

    Т.е. нельзя разделить это как то на 2 вида, обычные бонусы и подарочные бонусы, которыми например можно оплатить все 100%?
      Павел Гвоздь
      01 февраля 2025, 11:15
      0
      Если мы донастроим момент с подарочными сертификатами из нового функционала дополнения, то получается клиенту добавятся бонусы на счет, но вариант списания все равно 20% останется же, для нашего случая верно же понимаю?
      Верно!

      Т.е. нельзя разделить это как то на 2 вида, обычные бонусы и подарочные бонусы, которыми например можно оплатить все 100%?
      Нельзя.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      4