Выдано 109580 лицензий

Бонусы на товары

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

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

Для добавления бонусов в основном меню магазина выберите СкидкиБонусы..

Список бонусов

Добавление работы с бонусами в XSL-шаблоны и типовые динамические страницы

В код XSL-шаблона товара и списка товаров добавьте вывод информации о доступных бонусах:

<!-- Бонусы для товара -->
<xsl:if test="count(shop_bonuses/shop_bonus)">
    <div class="shop_property product-bonuses">
        +<xsl:value-of select="shop_bonuses/total" /> бонусов
    </div>
</xsl:if>

В XSL-шаблон МагазинПлатежнаяСистема добавьте флажок для возможности частичной оплаты с лицевого счета:

<table class="shop_cart">
    <tr class="total">
        <th>Форма оплаты</th>
        <th>Описание</th>
    </tr>
    <xsl:apply-templates select="shop_payment_system"/>
</table>

<!-- Добавить -->
<xsl:if test="siteuser/transaction_amount/node() and siteuser/transaction_amount &gt; 0">
    <p>
        <label><input type="checkbox" name="partial_payment_by_personal_account" /> Частично оплатить с лицевого счета, на счету <strong><xsl:value-of select="siteuser/transaction_amount" /><xsl:text> </xsl:text><xsl:value-of select="shop_currency/name" /></strong></label>
    </p>
</xsl:if>
<!-- /Добавить -->

<input name="step" value="4" type="hidden" />
<input value="Далее →" type="submit" class="button" />

В типовую динамическую страницу корзины в 4-й шаг добавьте обработку возможности частичной оплаты с лицевого счета:

// Окончание оформления заказа
case 4:
    // Оплата бонусами с лицевого счета
    if (Core_Array::getPost('partial_payment_by_personal_account', 0))
    {
        $_SESSION['hostcmsOrder']['partial_payment_by_personal_account'] = TRUE;
    }