PrestaShop category discount: one price rule instead of a discount on every product
You set up a PrestaShop category discount with one catalog price rule. In Catalog > Discounts you choose a percentage or fixed amount, dates with times and a category condition. The same mechanism covers a brand or a feature value. The rule does not change the base price, ends by itself and also applies to products added during the promotion.
Author: The TellMyShop team. A guide for PrestaShop store owners: the cause, the manual fix and the same work in a chat conversation.
Last updated: · 6 min read
How is a catalog price rule different from a promotion on a product?
A rule works on a group of products according to conditions, while a promotion on a product applies to that one product only. Both are saved in PrestaShop as specific prices, and both leave the base price unchanged.
| Catalog price rule | Promotion on the product page | |
|---|---|---|
| Where in the admin | Catalog > Discounts > Catalog Price Rules | Catalog > Products > product > Pricing |
| Scope | categories, manufacturers, suppliers, attributes, features | one product or one combination |
| New products | get the discount if they meet the conditions | no |
| When to choose it | a promotion on a category, brand or collection | a one-off deal, clearing the last items |
| How to end it | change the date or delete one rule | delete it on each product |
The rule's fields are described in the documentation on catalog price rules. Specific prices on the product page are covered in the pricing part of managing products.
How to set up a category discount step by step
One rule with dates and one category condition is enough.
- In the admin go to Catalog > Discounts and open the Catalog Price Rules tab.
- Add a new rule and give it a name you will recognise in six months, for example “Garden −15% November”.
- Leave the shop, currency, country and group on “All”, unless the promotion is only for selected customers.
- Set “From quantity” to 1, otherwise the discount only applies from several items.
- Enter the from and to dates with times, for example from 00:00:00 to 23:59:59.
- Choose the discount type (percentage or amount) and its size. For an amount, choose whether it includes tax.
- In the conditions section add a condition group, choose the category and save the rule.
- Open the category in a private browser window and check the prices of a few products.
A manufacturer discount works the same way. Instead of a category, you choose the manufacturer in the conditions.
Why doesn't the category discount cover all products?
Most often because of conditions that work differently from what the store owner assumes.
- Category versus subcategories. The category condition covers products assigned to that category. A product that is only in a subcategory may miss out. Check the assignments or add the subcategories to the condition.
- Condition groups. Conditions in one group must all be met together. Separate groups work as “or”.
- Another promotion on the product. Discounts do not add up, PrestaShop picks one specific price.
- Customer group and country. A rule only for the Customer group will not apply to a guest.
- Start time. A rule starting at 10:00 in the morning does not work at 8:00.
If you show the lowest price from the last 30 days with the discount, work it out before the start. PrestaDev shows what such a test looks like using an Omnibus module (in Polish). Modules such as price history by x13 calculate this price themselves.
How to check the promotion before it starts
Run a short test in a private browser window, as a guest. That is the same view most customers will see.
| What to check | Where | What should be there |
|---|---|---|
| Price in the category list | category page | the discounted price and the struck-through base price |
| Price on the product page | product page | the same price as in the list |
| Combinations | choosing a variant | the discount calculated from the variant's price |
| Cart | adding the product | the discounted price, without an extra code |
| A product outside the promotion | another category | price unchanged |
If the rule starts in the future, plan this test for the first hour of the promotion. Before the start, check at least the dates, the times and the number of products covered. It is better to find a mistake in the conditions yourself than in a message from a customer.
How much work is a promotion set up by hand?
Little with one rule, and a lot with discounts on every product. Tuesday, 22:15: the supplier has confirmed that from Friday they fund 20% off their brand. Some stores do this with a discount on each product page, because that is how they have always done it. With 140 products that means a lot of clicking, and after the promotion the same again to clean up.
A rule saves that work, but it needs checking. You need to know how many products it will cover, which ones already have their own promotion and what the prices look like after the discount.
How to describe a promotion in words and get a ready rule
You describe the promotion in plain words, and your chat (Claude or ChatGPT) builds the rule and shows a preview. You see the number of products, sample prices before and after, and warnings about overlapping promotions.
You: -15% on everything in the Garden lighting category, from Friday 00:00 to Monday 23:59. Check whether anything already has a promotion.
Your chat: The rule will cover 52 products, including subcategories. Sample gross prices:
Note: 3 products have their own −20% promotion. Discounts do not add up, PrestaShop will pick one price.
You: Approved.
Your chat: Saved as one rule with an end date. The promotion will switch off by itself on Monday at 23:59.
old version: Kula 20 cm solar lamp: €49.99
new version: Kula 20 cm solar lamp: €42.49
old version: LED string lights 10 m: €89.00
new version: LED string lights 10 m: €75.65
A discount above 50% triggers an extra warning, and above 90% needs explicit consent. You can undo the rule from the change history.
The rule is only saved by TellMyShop Pro with the Sales switch on, which stays off after the module is installed. In TellMyShop Free the chat shows the products in the category and their prices, but will not create the rule.
Request examples: a timed promotion on a category and a promotion on a whole brand or category. If you are planning a permanent price change rather than a promotion, read about bulk price changes. When the discount does not show on the page, check why the struck-through price is not showing.
Questions and answers
Will a catalog price rule cover products added later?
Yes. PrestaShop applies the rule to products added later too, so a product added to the category during the promotion gets the discount with no extra work. The same goes for new products of a given brand. That is exactly why, for a promotion on a whole category, a rule is more convenient than discounts entered on each product separately.
Does the discount from a rule add up with a promotion on the product?
No. When a product has several specific prices, PrestaShop picks one of them rather than adding the discounts together. A product with its own −30% promotion will not also get −15% from the category rule. Before the start, check which products already have a promotion and decide whether to leave it as it is.
How do I run a manufacturer discount in only one category?
In the rule you set two conditions in one group: the category and the manufacturer. A product must then meet both at once. If you added them as two separate condition groups, PrestaShop would treat them as alternatives, and the discount would cover the whole category plus every product of the brand in the store.
How do I end a promotion early?
The simplest way is to change the rule's end date to the current time or delete the rule. Prices return to base straight away, because the product's base price never changed. If the chat created the rule, you can also ask it to undo it from the change history, with a preview before saving.
What can I check before a promotion without TellMyShop Pro?
Quite a lot, because the free TellMyShop Free reads store data. The chat counts the products in the category, shows their prices and sales from previous months, but will not save the rule. Promotions need TellMyShop Pro and the Sales switch, which is off after installation and which you turn on yourself in the module panel.
PrestaShop is a registered trademark of PrestaShop SA. Claude is a trademark of Anthropic PBC. ChatGPT and OpenAI are trademarks of OpenAI. TellMyShop is not affiliated with these companies.