Хотелось бы узнать, каким образом можно было бы реализовать функционал акции:
"покупая два товара, вы можете купить третий со скидкой 50%".
Я понимаю, что это должен быть модуль или что-то вроде, догадываюсь, в какую сторону копать, но как это реализовать - понятия не имею.

Суть в чем: я запускаю акцию (название указано выше, аналоги вы видели во многих магазинах). Надо, чтобы на самый дешевый n-ный товар в корзине действовала скидка n%, отображалась покупателю в корзине и фиксировалась в админке при оформлении заказа.
Если кто знает, как реализовать, или как называется модуль, позволяющий это сделать, прошу подсказать. Если есть у кого уже готовый - могу поменяться.

Если честно, то, в идеале, кроме указанного выше функционала хотелось бы заиметь следующее:
1. возможность делать прогрессивную скидку (т.е. на 3-й товар 10%, на 4-й 20% и т.д.).
2. динамически выводить покупателю его скидку в шаблоне: т.е., например у него в корзине 1 товар: все как обычно. Он добавляет второй товар, и после этого на всех товарах, которые попадают под условие акции (имеют цену меньше или равной самому дешевому товару в корзине) выводится новая цена с учетом скидки, указанной в акции. Как по мне, очень сильно и наглядно мотивирует купить что-то еще.

Буду благодарен за любую информацию по сущестующим модулям с подобным функционалом или подсказки, как реализовать хотя бы часть этих функций самостоятельно.
Спасибо