Как распределить скидку на товары в заказе
Распределение скидки по товарам нужно для корректной работы с платёжными системами и правильной передачи данных в налоговую. Без этого чеки могут формироваться с ошибками, а покупатели — видеть неправильные суммы.
Виды скидок в Shop-Script
Заголовок раздела «Виды скидок в Shop-Script»В Shop-Script доступны два типа скидок:
- скидка на каждый товар — применяется к отдельной позиции;
- скидка на весь заказ — применяется к сумме всего заказа.
Почему скидку нужно распределять по товарам
Заголовок раздела «Почему скидку нужно распределять по товарам»Платёжные системы и налоговая работают только со скидками на конкретные товары. Они не поддерживают понятие «скидка на весь заказ».
Поэтому для корректной передачи данных в платёжные системы и налоговую скидку на заказ необходимо равномерно распределить по всем заказанным товарам.
Некоторые платёжные системы умеют распределять скидку самостоятельно, но каждая делает это по-своему. Это приводит к расхождениям в суммах:
- страдает бухгалтерская отчётность;
- покупатели видят разные суммы в чеке и в личном кабинете.
Распределение скидки по товарам — обязательное требование для стабильной работы современного интернет-магазина. Shop-Script выполняет это автоматически по единым правилам и передаёт готовые данные в плагины оплаты и фискализации.
Способы распределения скидки
Заголовок раздела «Способы распределения скидки»В Shop-Script доступно два способа:
- С корректировкой итогового размера скидки — скидка пересчитывается и распределяется по товарам.
- С разделением позиции заказа — один из товаров разделяется на две строки (с учётом скидки и без).
Выберите нужный способ в настройке «Распределение скидки в заказе» в разделе Настройки → Валюты.
Способ 1. Корректировка итогового размера скидки
Заголовок раздела «Способ 1. Корректировка итогового размера скидки»Для этого способа в настройках выберите вариант «Распределение скидки в заказе: увеличить скидку».

Как работает этот способ
Заголовок раздела «Как работает этот способ»Скидка на весь заказ делится поровну между всеми одинаковыми товарами.
Простой пример: общая скидка — 100 руб., в заказе 5 одинаковых товаров. Скидка на каждый товар: 100 / 5 = 20 руб.
Сложный пример: общая скидка — 100 руб., в заказе 3 одинаковых товара. Деление 100 на 3 даёт 33,33 руб. и остаток 1 копейка.
Если просто отбросить эту копейку, покупатель получит скидку на 1 копейку меньше обещанной и может быть недоволен.
Если добавить остаток к одному товару, одинаковые товары получат разную скидку. Это создаст проблемы при частичном возврате: непонятно, какую цену возвращать — со скидкой 33,33 руб. или 33,34 руб.
Решение: корректировка скидки
Заголовок раздела «Решение: корректировка скидки»Чтобы покупатель получил обещанную скидку, а все одинаковые товары — одинаковую сумму, размер скидки увеличивается на несколько копеек. Так её можно разделить поровну.
Уменьшать скидку нельзя — покупатель будет недоволен.
Пример корректировки
Заголовок раздела «Пример корректировки»До распределения скидки:
- Товар: 3 шт.
- Скидка на весь заказ: 100 руб.
- Сумма заказа: 1000 руб.
После распределения скидки:
- Товар: 3 шт.
- Скидка на весь заказ: 33,34 × 3 = 100,02 руб.
- Сумма заказа: 999,98 руб.
Когда происходит корректировка
Заголовок раздела «Когда происходит корректировка»Скидка увеличивается не всегда, а только в таких случаях:
- Все товары в заказе присутствуют в количестве больше 1 штуки.
- Скидку нельзя разделить между ними без остатка.
Если в заказе есть хотя бы один товар в единственном экземпляре, остаток копеек добавляется к нему. Корректировка всей скидки не требуется.
Когда размер скидки увеличивается на несколько копеек, итоговая сумма заказа уменьшается на столько же.
Как настроить сумму корректировки скидки
Заголовок раздела «Как настроить сумму корректировки скидки»Иногда скидка на заказ не делится ровно на количество товаров. Например, при скидке 100 рублей на 3 товара получается 33,33 рубля — такую скидку нельзя применить к каждому товару одинаково. В этом случае система автоматически корректирует сумму. По умолчанию корректировка составляет 1-2 копейки. При необходимости эту сумму можно увеличить.
Например, для заказа с 3 товарами скидка может стать 100,02 руб., 100,20 руб., 102 руб., 120 руб. или 300 руб. — любая из этих сумм делится на 3 без остатка.
Как настроить
Заголовок раздела «Как настроить»-
Выберите нужную точность округления в настройках валюты, в которой вы принимаете оплату.

-
Включите настройку «Округление → Для итогового размера скидки» в разделе «Настройки → Валюты».

Как разделить одну позицию заказа на две
Заголовок раздела «Как разделить одну позицию заказа на две»Чтобы использовать этот способ, выберите настройку «Распределение скидки в заказе: разделить одну из позиций в заказе на две».

Как это работает
Заголовок раздела «Как это работает»Когда скидку на весь заказ нельзя разделить без остатка на количество товаров, один товар в заказе разделяется на две строки. Остаток от деления добавляется к скидке одной из этих строк.
Заказ: 3 одинаковых товара, скидка на заказ — 100 руб.
Поскольку 100 не делится на 3 без остатка, система разделяет товар на две строки:
- 2 шт. — скидка 33,33 руб. за штуку
- 1 шт. — скидка 33,34 руб. за штуку
Итого: 33,33 × 2 + 33,34 × 1 = 100 руб.
| Состояние | Товар | Скидка |
|---|---|---|
| До распределения | 3 шт. | 100 руб. на весь заказ |
| После распределения | 2 шт. | 33,33 × 2 = 66,66 руб. |
| После распределения | 1 шт. | 33,34 × 1 = 33,34 руб. |
При разделении товара итоговая скидка и количество товаров не меняются. Изменяется только количество позиций в заказе — то есть число записей о заказанных товарах, которые покупатель видит в уведомлении, личном кабинете и чеке.