# PrestaShop 8 & 9 Quantity Discount Module — Buy X Get Y Free & Promo Badges

> Build quantity promotions on PrestaShop 8 and 9: buy 4 get 2 free, 3+1, 2nd item at -25%, pack pricing or tiered discounts (-5% from 2 items, -10% from 3). The badge shows on the product thumbnail and the discount is applied in the cart, with no code to enter.

- Page: <https://www.datafirefly.com/en/product/dfquantitydeal/>
- Language: en
- Last updated: 2026-10-28
- Platform: PrestaShop
- Category: Marketing & Promotions
- SKU: DF-QUANTITYDEAL-FR
- Price: 79.00 EUR
- Other languages: [fr](https://www.datafirefly.com/product/dfquantitydeal/index.md), [es](https://www.datafirefly.com/es/producto/dfquantitydeal/index.md), [de](https://www.datafirefly.com/de/produkt/dfquantitydeal/index.md), [it](https://www.datafirefly.com/it/product/dfquantitydeal/index.md), [pl](https://www.datafirefly.com/pl/produkt/promocje-ilosciowe-prestashop/index.md), [nl](https://www.datafirefly.com/nl/product/dfquantitydeal/index.md), [pt](https://www.datafirefly.com/pt/produto/dfquantitydeal/index.md)
- Index: <https://www.datafirefly.com/en/product/llms.txt>

Customers take one unit where your margin needs three. Quantity promotions fix that without touching the unit price: buying more becomes visibly worthwhile, and the offer is visible from the category page.

This module adds six quantity promotion mechanics (buy X get Y free, Nth item at -X%, at a fixed amount off, at an imposed price, pack pricing, or a tiered discount applied to every item) and places the matching badge on the product thumbnail, the way supermarkets do it. The discount is recalculated on every cart change through a private cart rule. The customer never enters a code.

Your negotiated prices stay protected: a per-offer option leaves out customers who already have a specific price on the product, whether it is assigned to their account or to their group.

Compatible with PrestaShop 8.0 to 9.x, multistore. The back office and the text your customers see are available in eight languages: English, French, Italian, Spanish, German, Dutch, Polish and Portuguese. No class or controller override.
