+7 (843) 212-62-17 - Казань
+7 (843) 212-62-17 - Казань

Ошибка 1 при учете скидок в правилах (со стороны битрикс)

Вопрос:

Ситуация 1:
В настройках правила оплаты или начисления указано не учитывать товары со скидкой.
Но при этом, товары, на которые не установлена скидка, считаются как будто на них есть скидка.

Ситуация 2:
В настройках правила оплаты или начисления указано условие с конкретным размером скидки (например условие: "скидка равно 10%).
Но при этом, товары на которые установлена скидка 10% не попадают под это условие.

Ответ:
Примерно с сентября 2025 года битрикс изменил работу округлений.
Если в настройках интернет магазина у вас настроено округление не до копеек (т.е. происходит округление), то битрикс производя округление добавляет размер этого округления в скидку товара! Визуально битрикс не отображает размер столь маленькой скидки, но он присутствует в данных объекта корзины!
В результате система битрикс видит что на товар, на который изначально не было скидки, скидка есть. А на товар, на который к примеру скидка 10%, при округлении получается скидка 10.1%
К сожалению, мы не можем влиять на разработчиков битрикс и работу ядра битрикс.
Вариант решения проблемы:
1. Установить точность округления в настройках интернет магазина до копеек.
2. Устанавливать в правилах диапазон скидок, а не точный размер скидки.
3. При использовании условия по наличию скидки указывать условие по размеру скидки. Например, вместо условия "Только товары без скидки" указать условие "Товары со скидкой менее 1 руб."

Для наглядности покажем разработчикам что происходит.
Вод данные в объекте корзины битиркс, когда установлено округление до копеек (выведены данные из объекта корзины битрикс):



Тот же товар, но когда в настройках магазина установлено округление до целых (видно, что битрикс добавил скидку в размере округления):









Возврат к списку