В версии модуля sale 17.0.34 вышло исправление, но если обновится вам не вариант, то можно пойти на хулиганство.
Файл: /bitrix/modules/sale/lib/discount.php
Метод: roundApplyBasketPricesByIndex
Убрать:
Файл: /bitrix/modules/sale/lib/discount/actions.php
Метод: percentToValue
Добавить:
1) если в сторону магазина
2) если в сторону клиента
Округление будет работать.
Файл: /bitrix/modules/sale/lib/discount.php
Метод: roundApplyBasketPricesByIndex
Убрать:
| if ($roundConfig['DISCOUNT_INDEX'] != $index['DISCOUNT_INDEX']) return; |
Файл: /bitrix/modules/sale/lib/discount/actions.php
Метод: percentToValue
Добавить:
1) если в сторону магазина
| return ceil($value); |
| return floor($value); |
Округление будет работать.