Бонусная программа

Модуль позволяет использовать гибкую систему бонусов, начисляемых при покупке товаров с привязкой к варианту цены, предусмотренного для роли конкретного покупателя, с учетом скидок, наборов и т.д. Администратор может определить нужное количество бонусов, которые будут начислены покупателю - на все товары в магазине, на отдельные товары ,категории или бренды.

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

В дальнейшем, накопленные бонусы можно использовать для оплаты заказа, полной или частичной, в соответствии с настройками в данном модуле.

В модуле предусмотрена возможность настройки курса бонусных поинтов относительно основной валюты магазина.

Внимание!

Работа модуля поддерживается системой ImageCMS начиная с версии 4.12. Данный функционал не входит в сборку по-умолчанию - он реализован как отдельный модуль, который можно приобрести в нашем магазине дополнений.

Для установки модуля вам необходимо связатся с нашим менеджером любым удобным вам способом.

1.1. Покупка модуля

Для приобретения данного модуля вам необходимо связаться с вашим менеджером или приобрести его на странице модуля в нашем маркетплейсе.

После оплаты заказа модуль будет доступен для загрузки в вашем личном кабинете на imagecms.net

К началу

1.2. Установка

При условии покупки модуля, мы предлагаем бесплатную установку модуля на ваш магазин. Если вы приобретали модуль через менеджера или через маркетплейс, просим связаться с менеджером и обсудить с ним данный момент.

Внимание!
Установка модуля подразумевает только установку модуля в системе и не подразумевает: пользовательских настроек функционала: вывода модуля в шаблоне (в случае, если требуется вывод в шаблоне. Подробнее в пункте 4.2. Вывод в шаблоне ) Однако, если вам необходимы данные опции, вы можете заказать их дополнительно у вашего менеджера (услуги будут предоставляться на платной основе)

Если же вы желаете установить модуль самостоятельно, в таком случае вам необходимо следовать инструкции ниже:

Шаг 1: Скачайте архив модуля из вашего личного кабинета на imagecms.net, в разделе "Мои дополнения":


Внимание!
Перед установкой модуля желательно иметь резервную копию системы и базы данных сайта!

Шаг 2: Извлеките из загруженного архива папку system_bonus посредством FTP-клиента в директорию \application\modules на сервере


Примечание:

После загрузки папки модуля на сервер, проставьте права на папку модуля 755 рекурсивно, на все вложения (CHMOD 755).

Шаг 3: Перейдите в админ-профиле сайта к списку модулей

Осуществите переход в админ профиле "Модули" → "Все модули" → вкладка "Установить модули":

Шаг 4: Клик по ссылке "Установить"

В открывшемся списке модулей должен отображаться модуль "Система бонусов" - необходимо осуществить клик по ссылке "Установка" напротив данного модуля:

После этого начнется автоматический процесс установки, во время которого, модуль автоматически пропишет новые таблицы в базе данных и поля в админ профиле. Для установки может потребоваться некоторое время, хотя в большинстве случаев модуль устанавливается моментально.

Постарайтесь не вмешиваться в работу системы во время установки модуля. Если установка прошла без ошибок, в панели управления, в правом верхнем углу, появится сообщение "Модуль установлен."

Примечание:

Если после загрузки папки в директорию \application\modules, модуль не отображается в списке то:

  • Попробуйте очистить кеш из админ панели и обновить список модулей, доступных для установки
  • Проверьте права на папку модуля - права должны быть 755 (или, в редких случаях, - 777 - полный доступ) рекурсивно, на все вложенные файлы и папки.
  • Модуль уже размещён в списке установленных модулей. В таком случае, модуль надо сначала удалить, а затем инсталлировать согласно приведенным выше инструкциям.

После завершения установки - очистите кеш из админ панели

К началу

1.3. Модуль в админ-профиле

Чтобы открыть модуль "Система бонусов", вам необходимо выбрать пункт главного меню пользователя "Модули", а в нем подпункт "Система бонусов":

Если у вас установлен данный модуль, но он не отображается в выпадающем меню, вам необходимо выбрать пункт главного меню пользователя "Модули", а в нем - подпункт "Все модули".

Далее, из открывшегося списка надо выбрать "Система бонусов":

Чтобы вывести модуль в список выпадающего меню, нужно перевести графический переключатель напротив данного модуля в положение "Активно" (колонка - "Показывать в меню").

К началу

1.4. На сервере

Все файлы модуля физически находятся на сервере в папке system_bonus, которая должна находится в директории \application\modules:

В корневой папке модуля находится файл README.md , с содержание которого мы рекомендуем ознакомится, если вы планируете самостоятельно осуществлять работы по выводу/установке модуля в вашем интернет-магазине.

К началу

1.5. Модуль в БД

После создания, модуль создает необходимые для работы таблицы в базе данных. Это таблицы:

mod_system_bonus_data_value - содержит данные о пользователях и количестве начисленных бонусных баллов:

  • id - уникальный идентификатор пользователя, который используется в модуле
  • user_id - уникальный идентификатор профиля пользователя (колонка "id" в списке пользователей)
  • count_bonus - колличество бонусов, закрепленное за пользователем

mod_system_bonus_list - содержит данные о бонусных программах:

  • id - уникальный идентификатор бонусной программы
  • type - тип бонусной программы. Возможные типы бонусных программ:
    • RegisterOnSite - за регистрацию на сайте
    • FirstPaidOrder - за первый оплаченный заказ
    • CommentPaidProduct - за комментирование приобретенного товара,
    • BrandBonus - за покупку товара указанного бренда
    • ProductBonus - за покупку конкретного товара
    • CategoriesBonus - за покупку товара из указанной категории
  • name - название бонусной программы
  • count_bonus - размер начисляемого бонуса
  • active - активность бонусной программы. Возможные значения:
  • 1 - программа активна
  • 0 - программа отключена

Колонки show_always, show_from, show_to - колонки, содержащие данные о периоде активности бонусной программы. По умолчанию, все бонусные программы создаются как бессрочные (значение show_always - 1, значение show_from и show_to - NULL)

  • position - порядок расположения программ в общем списке, в админ профиле (Значение - от 1 (первая программа в списке) …. до Х (последнего числа по порядку, в зависимости от общего количества программ))
  • price_type - метод подсчета начисления бонусов по программе. Возможные значения:
1 - Точный метод начисления бонусов, при котором указывается конкретное количество бонусных балов. Например: значение 4 - это 4 бонусных балла.
2 - Процентный метод начисления бонусов, при котором указывается процент от цены товара, относительно которого будут начислены бонусные баллы. Например: значение 4 - это 4% от цены товара.


mod_system_bonus_values
- содержит связки между бонусными программами и товарами/категориями магазина, на которые эти программы распространяются.

Кроме того, модуль создает свою строку system_bonus в таблице components

К началу

1.6. Гарантии разаработчиков

Пользователям ImageCMS, которые приобрели данный модуль, мы, как разработчики данного продукта, предоставляем гарантию на функционал модуля сроком 1 календарный месяц.

Уточнение:

  • При приобретении модуля через менеджера и установке модуля нашими специалистами, гарантия предоставляется на 30 дней с момента окончания и приёма работ.
  • При приобретении модуля через маркетплейс и самостоятельной установке, гарантия предоставляется на 30 дней, с момента покупки модуля.
Внимание!

Гарантия не распространяется и не покрывает следующие работы:

  • Исправления ошибок, допущенных администратором при самостоятельной установке модуля.
  • Проблем и ошибок в работе модуля, которые возникли из-за правки модуля сторонними специалистами.
  • Проблем, возникающих из-за несоответствия хостинга требованиям системы.
  • Исправление ошибок и конфликтов, которые вызваны:
    • Сторонними сервисами и дополнениями, установленными на сайте.
    • Индивидуальными доработками стандартного функционала и/или шаблона

В случае обнаружения ошибки, исправление которой не описано в данном документе, просим создать отдельное обращение в службу тех-поддержки ImageCMS, при этом четко описав проблему и предоставить пошаговую инструкцию для воссоздания проблемы.

К началу

2. Настройки модуля

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

Для того, что-бы открыть основные настройки модуля, вам необходимо в админ-профиле осуществить клик по кнопке "Настройки":

После этого откроется форма настроек, содержащая следующие элементы:

Количество бонусов для валюты по умолчанию - поле, в котором можно указать курс бонусных поинтов, по умолчанию (для всех пользователей без роли), по отношению к единице основной валюты сайта.

При указании курса бонусных поинтов нужно учитывать, что курс указывается для бонусного балла, т.е. в настройках системы на программном уровне прописана логика 1 бонусный балл = ХХХ единиц основной валюты.

К примеру, если вы желаете указать:

  • Равный курс бонусных баллов и основной валюты - курс один к одному, 1 бонусный балл = 1 единице основной валюты магазина - в поле настройки вам необходимо указать число 1. В таком случае, курс будет составлять - 1 бонус = 1 руб/грн/$ и т.д.
  • Меньший курс бонусного балла к основной валюте - например курс 1 бонусный балл = 0.5 единице основной валюты магазина - в поле настройки вам необходимо указать число 0.5 (обязательно через точку - другие символы не допустимы). В таком случае, курс будет составлять - 1 бонус = 50 копеек/центов.
  • Больший курс бонусного балла к основной валюте - например, курс - 1 бонусный балл = 5 единиц основной валюты магазина - в поле настройки вам необходимо указать число 5. В таком случае, курс будет составлять - 1 бонус = 5 руб/грн/$ и т.д.

Примечание:
Курсы поинтов можно указывать отдельно для каждой роли пользователей. Для этого используйте поля ниже - они будут созданы автоматически, отдельно для каждой роли пользователя (роли пользователей должны быть предварительно созданы в системе)

Подробнее о ролях пользователей:

По умолчанию, в системе создана только одна роль пользователей - Администратор.

Количество бонусов для валюты по умолчанию - обязательное поле. Значение по умолчанию - 1

Частичная оплата бонусом - поле, значение которого позволяет осуществлять частичную оплату заказа покупателем, используя бонусные баллы. Если установлено значение:

  • Выбрано - покупатель имеет возможность оплатить часть стоимости товара, используя бонусные баллы. Остальную часть стоимости, за вычетом суммы оплаченной бонусными баллами, покупатель должен будет оплатить одним из доступных в магазине способов.
  • Не выбрано - при этом значении, покупатель имеет возможность полностью оплатить заказ используя бонусные баллы (покрыть ими всю стоимость покупки).


Учитывать скидку - ячейка, значение которой определяет, будет ли учтена скидка, при расчете получаемых покупателем бонусов. Если установлено значение:

  • Выбрано - размер бонусов будет начисляться исходя из стоимости товара со скидкой (если таковая есть). Например, если стоимость товара 1000 и на него установлена скидка в 50% и бонусная программа в 10% - то при его покупке, пользователю будет начислено 50 бонусных поинтов (50% от 1000 = 500. 10% от 500 = 50).
  • Не выбрано - размер бонусов будет начисляться исходя из стоимости товара без учета скидки (если таковая есть). Например, если стоимость товара 1000 и на него установлена скидка в 50% и бонусная программа в 10% - то при его покупке, пользователю будет начислено 100 бонусных поинтов (10% от 1000 = 100).


Учитывать доставку - позволяет указать, учитывать ли бонусы при оплате доставки. Если установлено значение: Выбрано - пользователь может оплатить стоимость доставки бонусными баллами.

Не выбрано - пользователь не может оплатить доставку бонусами и даже, если полная стоимость товара покрыта бонусными баллами, доставку необходимо оплатить отдельно, одним из доступных на сайте способов

К началу

2.1. Типы бонусных программ

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

В модуле предусмотрены следующее типы бонусных программ:

  • Регистрация на сайте - значение, при котором бонусы будут начисляться пользователю разово, при регистрации в вашем магазине;
  • Первый оплаченный заказ - значение, при котором бонусы будут начислены пользователю за осуществление первой покупки;
  • Комментарий к оплаченному товару - значение, при котором бонусы будут начислены пользователю за комментарий только к тем товарам, которые есть в списке оплаченных заказов пользователя. За комментарий к неприобретенному товару - бонусов нет;
  • Категории - значение, при котором бонусы будут начислены пользователю за покупку товара из определенной категории или категорий на сайте;
  • Бренды - значение, при котором бонусы будут начислены пользователю за покупку товара, относящегося к определенному бренду;
  • Товары - значение, при котором бонусы будут начислены пользователю за покупку определенного товара;
Примечание:
В зависимости от выбранного значения в поле "Тип", функциональные элементы в форме создания бонусной программы могут менятся.

К началу

2.2. Настройка шаблона email-уведомления

После установки модуля, в другом функционале, в модуле "Управление email-уведомлениями", автоматически создается шаблон уведомления, который в общем списке отмечен как system_bonus


Для того, чтобы перейти к редактированию шаблона письма, вам необходимо осуществить переход в админ профиле: "Модули" → "Управление email-уведомлениями" → шаблон "system_bonus"

В шаблоне доступны следующее переменные:

  • $userName$ - используется для вывода имени пользователя.
  • $mesage$ - используется для вывода текста уведомления пользователю
  • $adminMessage$ - используется для вывода текста уведомления администратору
  • $href$ - используется для вывода ссылки на профиль пользователя

Подробнее о работе с шаблонами email-уведомлений.

К началу

3. Создание бонусной программы

Для того, что-бы создать бонусную программу, вам необходимо:

Шаг 1: Клик по кнопке "Создать систему бонусов"


Шаг 2: Укажите название системы бонусов в поле "Название"


Поле может содержать кириллические и латинские символы, а также цифры. Использование разделительных символов и знаков пунктуации не рекомендуется.

Шаг 3: Выберите тип бонусной программы в поле "Тип":


В поле "Тип", доступном в форме создания бонусной программы, следует указать метод начисления бонусов пользователю.

Шаг 4: Для типов бонусной программы: "Категории", "Бренды", "Товар".

Если вы выбрали тип бонусной программы "Регистрация на сайте", "Первый оплаченный заказ", "Комментарий к оплаченному заказу", данный шаг следует пропустить.

Для бонусной программы: "Категории" - выберите категории, на которые будет распространяться программа в поле "Категории" (поле генерируется при выборе типа программы "Категории" ).

Примечание:

Выбрать несколько товарных категорий вы можете удерживая при выборе клавишу Ctrl.

Если вы хотите вывести программу для всех категорий, вам необходимо выбрать значение "Показывать во всех категориях".

Чтобы создать бонусную программу для всех товаров в магазине, выбирите тип "Категории" в открывшимся поле "Категории", выберите значение "Показывать во всех категориях".

Для бонусной программы: "Бренды" - выберите производителей, на которые будет распространяться программа в поле "Бренды" (поле генерируется при выборе типа программы "Бренды").

Примечание:

Выбрать несколько брендов вы можете удерживая при выборе клавишу Ctrl.

Если вы хотите вывести программу для всех категорий, вам необходимо выбрать значение "Показывать все бренды".

Для бонусной программы: "Товары" - выберите производителей на которые будет распространяться программа в поле "Выбор товара" (поле генерируется при выборе типа программы "Товары").

В поле "Выбор товара" при помощи поиска по названию, артикулу или ID выберите товар, за покупку которого будут начислятся бонусы.

Примечание:
Тип "Товар" предназначен для работы с единичными товарами - возможности массового добавления товаров через данный тип не предусмотрено.

Шаг 5: Укажите количество начисляемых бонусов

В поле "Количество бонусов" и способ начисления укажите точное количество начисляемых бонусных баллов:

Для всех выше упомянутых в шаге типов бонусных программ, необходимо выбрать способ расчета бонусов в поле "Тип цены". В данном поле допустимы значения:

  • Количество бонусов - точное значение начисляемых бонусных баллов по программе.
  • Процент от цены - значение процента от цены заказа, в размере которого пользователю будет начислен бонус.


Шаг 6: Выберите значения полей "Показывать всегда" и "Активный"


  • Поле "Показывать всегда" - если значение выбрано, программа будет числиться как постоянная. Если значение не выбрано, вам необходимо указать дату начала и окончания программы
  • Поле "Активная" - определяет, будет ли создаваемая бонусная программа активной на страницах магазина.


Шаг 7: Сохраните и очистите кеш.

К началу

3.1. Редактирование бонусной программы

Для редактирования бонусной программы осуществите клик по названию программы в общем списке программ:

После этого внесите все необходимые правки (как руководство, можете использовать пункт 3. Создание бонусной программы), сохраните изменения и очистите кеш.

К началу

4. Просмотр и начисление бонусов пользователям

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

Для того, что-бы просмотреть количество бонусов по конкретному пользователю и/или начислить бонусы, вам необходимо:

Шаг 1: Клик по кнопке "Список бонусов по пользователю"


Шаг 2: Выберите пользователя:

В открывшейся форме, в списке пользователей, выберите нужного пользователя:


Шаг 3: Укажите нужное количество бонусов в поле "Бонус для пользователея"

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

Шаг 4: Сохраните изменения


После сохранения, бонусы сразу же будут доступны покупателям для использования.

К началу

5. Вывод в шаблоне

Если вы используете один из новых шаблонов (на основе UniShop, MultiShop , GoodLook, MegaShop и их производных), версии ниже 1.5, то вам будет необходимо вывести отображение модуля в шаблоне (в версии шаблонов от 1.5 и выше по умолчанию уже содержатся все необходимые правки - в таком случае, правка кода не нужна).
Примечание:
Если вы используете шаблон ранних версий, до 1.5 без правок и доработок верстки, то, как решение проблемы, можно обновить шаблон полностью, загрузив его из нашего магазина дополнений и разместив на сервере вместо своего оригинального шаблона.

Для вывода модуля на страницах шаблонов ранних версий вы можете:

Обратится к вашему менеджеру и заказать данную услугу. Для шаблонов Multishop, Unishop, UnishopVertical до версии 1.5 стоимость вывода составит 40$. Для других шаблонов - 80$.

При самостоятельном выводе используйте подсказки и инструкции, поданные в файле README.md (файл README.md находится в корневой папке модуля бонусов - system_bonus )

К началу

6. Приоритетность бонусных программ

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

Если в системе создано несколько параллельных бонусных программ то:

Получаемые бонусы могут суммироваться, если программы являются параллельными и не пересекаются. Например: бонусная программа за регистрацию (условно 10 бонусов) + бонусная программа за первую покупку (условно 20 бонусов) - то пользователю будет зачислена общая сумма бонусов обеих программ (условно 30 бонусов)

Учитывается приоритетность бонусных программ - если бонусные программы пересекаются, пользователю будет начислено то количество бонусов, которое указано в программе с высшим приоритетом. Например: если пользователь покупает товар, на который распространяются:

  • бонусная программа на категорию (условно 10 бонусов, администратором указан приоритет ниже, чем у программы на бренд)
  • бонусная программа на бренд (условно 15 бонусов, администратором указан приоритет выше, чем у программы на категорию)

То пользователю за покупку этого товара будет начислено 15 бонусов из бонусной программы на бренд.

К началу

7. Совместимость бонусной программы с другим функционалом:

7.1. Бонусная программа и модуль скидок

В настройках модуля скидок есть поле "Учитывать скидку", значение которой определяет взаимодействие программы бонусов и скидок. Подробнее о данной настройке - в пункте 2. Настройки модуля, данной статьи.

К началу

7.2. Бонусная программа и наборы товаров

На момент написания данной статьи, модуль не предусматривает начисления бонусов за приобретение товаров в наборе, даже если оба товара в наборе участвуют в бонусной программе.

В будущем, в процессе развития модуля, этот момент может быть изменен.

К началу

7.3. Бонусная программа и варианты цен

Программа бонусов, пересекаясь с вариантом цены, работает примерно следующим образом:

Если метод начисления бонусов установлен как процент от цены, а вариант цены указан как:

  • Процент - в таком случае, бонус будет рассчитан, как процент от итоговой цены (с учетом варианта цены для пользователя). Например, если стоимость товара составляет 1000, вариант цены для пользователя 50% и при настройке бонусной программы 10%, то при покупке пользователю будут начислены 50 бонусных баллов (полная цена ( 1000 ) с вычетом скидки (50%) = 500. Отсюда 10% от 500 = 50 бонусных баллов)
  • Фиксированная величина - количество бонусов будет составлять процент от итоговой для покупателя цены, согласно созданному варианту цены. Например, если стоимость товара составляет 1000, вариант цены для пользователя 900 и при настройке бонусной программы 10%, то при покупке пользователю будут начислены 90 бонусных баллов (полная цена ( 1000 ) с вычетом скидки (100) = 900. Отсюда 10% от 900 = 90 бонусных баллов)

Если метод начисления бонусов установлен как фиксированная величина, а вариант цены указан как процент или фиксированная величина - количество бонусов будет составлять фиксированную величину в любом случае, независимо от итоговой для покупателя цены, согласно созданному варианту цены. Например, если стоимость товара составляет 1000, вариант цены для пользователя 900 или 500 (при фиксированной - скидка 100, при процентной -50%) и при настройке бонусной программы указан фиксированный размеров в 8 баллов, то при покупке пользователю будут начислены 8 бонусных баллов.

К началу

7.4. Бонусная программа и вывод в чеке

В момент написания статьи, модуль бонусов не предусматривает вывода в чеке - т.е. при полной или частичной оплате заказа покупателем, в чеке не будут указано, какая часть от стоимости была оплачена бонусными баллами, а какая денежными средствами - вся оплаченная сумма будет отображена как полностью оплаченная денежными средствами.

К началу

7.5. Бонусная программа и валюты

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

Также, модулем учитывается только основная валюта сайта, при указании курса бонусных баллов и оплате заказа.

К началу

8. Частые вопросы

Установленный модуль не отображается в списке модулей

Если после загрузки папки в директорию \application\modules, модуль не отображается в списке то:

Попробуйте очистить кеш из админ панели и обновить список модулей, доступных для установки; Проверьте права на папку модуля - права должны быть 755 (или 777 - полный доступ) рекурсивно на все вложенные файлы и папки.

После установки модуль не работает или работает некорректно (или же нигде не отображается)

В подобных случаях, нельзя исключатьвозможность сбоя или ошибки при установке модуля. Если у вас возникла подобная проблема, попробуйте удалить модуль из админ панели (не затрагивая папку модуля на сервере) и попробуйте переустановить модуль повторно, из админ панели (подробнее - в пункте 1.2. Установка).

Если ошибка повторится, просим создать обращение в службу тех поддержки, при этом четко описав суть проблемы.

Как вывести отображение количества бонусов в личном кабинете покупателя (на странице http://****/shop/profile ) ?

Вам необходимо в файле templates/ваш_шаблон/shop/includes/profile/user_data.tpl

Вставить:

<!-- Bonus -->
<div class="form__field">
    <div class="form__label">{tlang('Bonus')}: {module('system_bonus')->getBonusForUser()}</div>
</div>

Сохраните правку и очистите кеш.

К началу