Вполне возможно у кого-то есть готовое правило и он может поделиться им или рассказать как такое организовать.
Требуется на список товаров, произвольной цены выставлять такую акцию. Список может состоять и из 1000 товаров и вот за каждые 2 товара из этого списка, не важно количественно или позиционно нужно давать цену 999, а не их реальную.
Пример:
пусть у нас в корзине только товары из списка(а могут быть и другие), тогда
т1 =2штука =>999
т1 + т2 =>999
2*т1 + т2 => на 2 товара с наименьшей ценой нужно дать такую скидку чтобы суммарно получилось 999 + товар по своей цене
и т.д.
2*т1 + т2 => на 2 товара с наименьшей ценой нужно дать такую скидку чтобы суммарно получилось 999 + товар по своей цене
а с этим проблема, потому что
с наименьшей ценой
штатно нельзя определить наименьшую цену
---
Что то подобное делается так:
в корзине определяем условия и пишем формулу расчета, в итоге имеем рассчитанную итоговую сумму для всего заказа. Методом api создаем купон на скидку, применяем его через api, пересчитываем заказ.
Но в любом случае, скидка раскидывается на все товары в заказе, если скидка идет по условиям корзины.
Скидка не раскидывается только в случае когда скидка установлена в товарах (торговых предложениях).
---
Если первые два товара из одной категории, а третий и последующие товары из другой, или стоимость третьего товара и последующего всегда выше, чем первый и второй товар, то тут можно уже подумать и что то сделать штатно.
можно если товаров парочка, но как я говорил их 1000+ и сколько пойдет в корзину вопрос, ладно это тоже решаемо заведением свойств и происыванием всем товарам и после условия завязывать на них
Если делать через купон, то я просто забью вариантами скидок всё и потом в них разбираться будет не лучше чем сейчас думать как решить эту задачу так как за 4 товара скидка уже будет другой, так как сумма 4 товаров будет 999*2, для 6 - 999*3... а в корзину закинут кто-то 3шт, кто-то 333, а кто-то все 1000 это тоже нужно учитывать.
Так что пока не уверен что ваш вариант возможен.
Вот в дополнение:
даже если исключить "с наименьшей ценой" и можно скидку размазать по всем товарам
возьмем за основу, что у нас пусть будет только разный ценник и список товаров в разных категориях лежит и их 1000+
получается пусть дано
т1=500
т2=600
т3=900
т4=800
итого если у нас в корзину попадут только 2*т1, то скидка всего 1р, а если 2*т3, то 801р. , это же сколько вариантов нужно заводить просто даже без учета наименьших сумм, даже через API, даже штатно не получится