Lowest price and discount at AI Commerce
This is how AI Commerce complies with the FCCA's 30/60 day rules and why the % badge may be missing. Includes quick debugging with Price History.
This guide will help you ensure that your AI Commerce online store's discount rates and "lowest price" labels comply with the FCCA's guidelines (see the FCCA's guide on the 30-day rule ). You can also find more information here: https://eur-lex.europa.eu/eli/dir/2019/2161/oj/fin
You will immediately get practical benefits: you will understand why the % badge is sometimes missing, and you will be able to check the situation Hallintapaneeli > Catalog > Product > Price History view.
“When goods are marketed at a discount… the lowest price at which the goods have been marketed during the 30 days preceding the price reduction must also be stated.”
Source: FCCA: Discount and affordability expressions in marketing
1) 30-day rule of thumb: discount is calculated from the lowest price
- The discount claim (e.g. –20%) must be calculated from the lowest price charged in the last 30 days before the discount . This is in direct line with the FCCA's policy (see FCCA ).
- If the same price as the current one has occurred within 30 days (or has been lower), the percentage cannot be calculated from the higher “normal price”.
Consequence in practice
- If the lowest price in the last 30 days = current price → the discount percentage cannot be claimed, the badge may be omitted.
Representative
- The lowest price within 30 days is €19.90 and you are now selling for €19.90 → no percentage discount will be applied.
2) First discount day: “before discount” window
- The discount start date is not included in the 30-day look-back period because the rule applies to the time before the discount .
- If there has been no lower or equal price in the 30 days prior to the discount, the percentage may be displayed.
3) 60-day rule: progressively increasing discounts
- If a continuous campaign lasts no more than 60 days and the discount increases in stages , the reference price for the entire duration of the campaign is the lowest price in the 30 days preceding the first discount .
- E.g. €100 → €80 → €60 (≤60 days within the same campaign) → the second stage discount is also still calculated from €100. This follows the FCCA's example calculation.
- When 60 days are exceeded, the 30-day rule will be returned.
4) New products: no discount claim on cost price
- New products cannot be advertised as having a price reduction because there is no lowest price in the past 30 days (KKV's interpretation of new products). AI Commerce takes this into account so that if
dateAddedis less than 30 days old, the badge will not be displayed, even if the price history only includes the current price.
5) Why the discount badge may be missing
- Same or lower price within 30 days – if the product has been at the same or lower price, a percentage is not allowed.
- Prolonged “discount” (>30 days) – the lowest price is practically set at this low price → it is a new price level, not a discount claim.
- Tiered campaign (≤60 days) – the percentage is calculated from the reference price before the first discount, does not “drift” lower within the campaign.
- New product (<30 days on sale) – no discount claims, because there is no lowest price to compare (even if the price history includes one, current price).
6) “Double” identical prices in history
- If an identical low price has been logged within 30 days (even twice), it indicates that the lowest price is this value → the percentage is often 0%. ( AI Commerce strives for idempotent storage so that unnecessary duplicates do not confuse the interpretation.)
Additional tip for the process
- Make the record idempotent (no new history row if the value doesn't change). This doesn't change the rule, but it does make the audit trail clearer.
7) Debugging: check the reference price in practice
- Open
Hallintapaneeli > Catalog > Product > Price History. - Check 30 days before the discount starts : what is the lowest recorded price?
- If a price lower than or equal to the current price is displayed → percentage discount cannot be shown . If all prices are higher → percentage allowed.
- Tiered campaign (≤60 days): compares to the lowest price in the 30 days before the first discount . After 60 days, reverts to the 30-day rule (as per the example in KKV 4.2).
Where do you view/edit the information?
- Admin Panel :
Hallintapaneeli > Catalog > Product > Price History– audit log of price changes and check lowest prices.
8) Channel-specific transparency
- The lowest price must be clearly displayed in all channels (print, online, TV, radio). This is essential information for the consumer.
9) Regulatory background
- The background is a change in the Consumer Protection Act (the prior-price rule of the EU Omnibus Directive).
- In staggered campaigns (≤60 days), the reference price is the lowest price in the 30 days preceding the first discount. For more information, see the FCCA's policy: FCCA: Discount and value expressions in marketing .
10) Quick examples (mirror your own products)
- A) Now €19.90. 30 days lowest €19.90 → badge hidden (0%).
- B) Now €19.90. 30 days lowest €24.90 → –20% allowed.
- C) Increment ≤60 days : €100 → €80 → €60 → the second discount is also calculated from €100.
- D) Campaign >60 days : return to the 30-day rule; reference is the lowest price of the last 30 days (e.g. €60).
- E) New product (<30 days): no discount claims.
Table: quick examples at a glance
| Situation | Reference (KKV rule) | Display | Argument |
|---|---|---|---|
| A) Current price = previous lowest (€19.90) | 30 days lowest = €19.90 | Badge hidden | No discount percentage on the lowest price |
| B) Current price €19.90, lowest €24.90 | 30 days lowest = €24.90 | -20% allowed | Discount is calculated from the lowest reference price |
| C) Increment ≤60 days: 100 → 80 → 60 | Lowest price in the 30 days before the first discount | –40% (100 → 60) | The reference does not “drift” within the campaign |
| D) Campaign >60 days | Return to the 30-day rule | Depends on the lowest price in the last 30 days | Campaign length exceeds 60 days |
| E) New product <30 days | No previous lowest price | No discount claims | There is no comparison price. |
Sources (KKV)
- FCCA: Discount and affordability statements in marketing – 30-day rule, 60-day rule, new products and examples. Link: https://www.kkv.fi/…/alennus-ja-edullisuusilmaisut-markkinontissa
- HE 14/2022 vp (Finlex) – legislative basis for the grading rule.
- FCCA press release 22.1.2025 – reminder to comply with the 30-day rule and to clearly present it on all channels.
Summary for the merchant
If the discount symbol is not visible, the reason is almost always that the price has been the same or lower within 30 days, or it is a tiered campaign where the 60-day rule or 30-day rule determines the reference price. Open Price History , compare with the FCCA rules (see FCCA policy ) and draw a conclusion in seconds.