Loading

Discount Rules and Stacking

The list gives a starting price. Rules adjust it — a promotion, a contract discount, a settlement incentive.

Where to find it

Architect Panel → ERP - Trading & Analytics:

  • Price Rules — the rules, their priority and stacking
  • Pricing — the console — resolve a price and see what applied

What a rule holds

  • Scope and criteria — what it applies to.
  • Action and value — a percentage off, an amount off, or an override price.
  • Priority — the order rules are considered in.
  • Stackable — whether other rules may apply after it.
  • Valid from and to — the promotional window.
  • Budget cap — the most this rule may give away in total.
  • Hit count — how many times it has actually fired.

Stacking is explicit

This is the field that matters most. A non-stackable rule stops further rules applying, which is how you express "10% off, and that is instead of the contract discount, not on top of it".

Stacking left to chance is how a customer receives three discounts intended as alternatives and pays less than cost. Decide it per rule, deliberately, and check it in the pricing console before the rule goes live.

Order of application

Rules apply by priority. With percentages this is not commutative — 10% then 5% is not 5% then 10% off the same base — so the order is a commercial decision. Put the discount you would defend first, and set the rest to non-stackable if they are meant as alternatives.

Budget caps

A cap is the total a rule may give away before it stops applying. Use it on promotions: it converts an open-ended commitment into a known maximum, and it is the difference between a campaign that overperforms profitably and one that overperforms expensively.

Hit counts tell you the truth

The hit count is the most useful diagnostic here. A rule with zero hits is not working — usually its criteria are wrong or a higher-priority non-stackable rule is short-circuiting it. A rule with far more hits than expected is catching more than intended.

Check hit counts a week after a promotion launches, not at the end. That is when it can still be fixed.

Always test in the console

The Pricing console resolves a price and shows what applied. Test a representative order before enabling a rule for real, including one that should not qualify — the negative case is where criteria errors show up.

Expire rather than delete

Let a finished promotion lapse on its end date. A deleted rule takes its hit count and its history with it, and next year you will want to know how the same promotion performed.

Worked example

A retailer runs a 15% seasonal promotion, non-stackable, priority 100, capped at £20,000, valid for six weeks. Contract discounts sit at priority 50, stackable. The promotion therefore replaces the contract discount rather than adding to it, and when £20,000 has been given away it stops. Hit counts after week one confirm it is firing on the intended lines.

Recommendations

  • Set stackable explicitly on every rule. Never leave it to the default.
  • Cap every promotion.
  • Test a qualifying and a non-qualifying order before going live.
  • Review hit counts a week in.