Меню

Оплата заказа с внутреннего счета только за товары, без учета стоимости доставки

Оплата заказа с внутреннего счета только за товары, без учета стоимости доставки

Задача: В магазине реализован внутренний счет (бонусный счет) для покупателей. Необходимо, чтобы при оплате заказа бонусами учитывалась только
стоимость товаров, а стоимость доставки не входила в сумму оплаты с внутреннего счета.
Для шаблона оформления заказа, что бы показать пользователю правильные расчеты.
В блоке Итого модифицируем данные (в result_modifier)
Код
<?
// Если выбрана оплата бонусами иначе этого блока и не видно
if (!empty($arResult['PAYED_FROM_ACCOUNT_FORMATED'])) {
    $totalBonusPaid = $arResult['JS_DATA']['TOTAL']['ORDER_PRICE'] * 0.3;
    // Доп проверка - если у пользователя бонусов меньше чем $totalBonusPaid
    $userCurrentAccount = CSaleUserAccount::GetByUserID(
        $USER->GetID(),
        "RUB"
    );
    if ($totalBonusPaid > $userCurrentAccount['CURRENT_BUDGET']) {
        $totalBonusPaid = $userCurrentAccount['CURRENT_BUDGET'];
    }
    // Итого будет оплачено бонусами
    echo $totalBonusPaid . ' ₽';

   // Итого за минусом бонусов и плюс доствка
   $arResult['JS_DATA']['TOTAL']['ORDER_PRICE'] = $arResult['JS_DATA']['TOTAL']['ORDER_PRICE'] - $totalBonusPaid + $arResult['JS_DATA']['TOTAL']['DELIVERY_PRICE'];

}
?>
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить файлы
 

Блог-note: заметки разработчика

Вывести имя пользователя добавившего элемент инфоблока в Битрикс

Иногда, необходимо вывести имя пользователя добавившего элемент инфоблока. Например, автора новости или автора объявлени...

Бонус на внутренний счет пользователя по информации из 1С

Задача: 1С-Предприятие каждый день выгружает HL справочник на сайт с количеством бонусов контрагента в виде "XML-ID...

Как получить свойства заказа в 1С-Битрикс: старые методы и современный API D7

Задача: Получить все доступные свойства заказа для всех активных типов плательщика из модуля магазина.

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

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

Как работает система сертификации партнеров 1С-Битрикс, уровни партнеров и специалистов

Сертификация от «1С-Битрикс» – это объективная оценка знаний и практических навыков разработки проектов на платформе от ...

Фиксированная корзина с обновлением, без перезагрузки страницы.

Иногда нужно сделать так, чтобы корзина в интернет магазине, созданном на Битрикс, была постоянно на виду, при этом обно...

Если предложение SKU в корзине, поменять кнопку добавления на "В корзине"

Данная заметка является дополнением к ранее опубликованной: Если товар в корзине, поменять значение input на "В корзине"...

Создание агента в 1С-Битрикс, на реальном примере

Задача: Каждый час нужно обновлять свойство элементов/товаров с типом строка "В наличии", вписывать в него либ...

Установка поиска Sphinx на Ubuntu 22.04 для 1С-Битрикс

Задача: установить и сконфигурировать поиск Sphinx под управлением Ubuntu 22.04 и панели управления HestiaCP для использ...