Actions, Targets & Selections
What a discount does, what it applies to, and how candidates are chosen
Every Rule node pairs an action (what the discount does) with a target (what it applies to), then uses a selection strategy to pick from the matching candidates.
Actions
The action is the effect side of a Rule. Three actions are available at launch.
| Action | Parameters | Works with |
|---|---|---|
| Fixed amount off | Amount (money, 0 or more) and an optional customer message | Product, Order, Shipping |
| Percentage off | Percentage (0 to 100) and an optional customer message | Product, Order, Shipping |
| Free shipping | Optional customer message | Shipping only |
The message is the customer-facing label shown at checkout next to the discount line, for example "Member discount" or "Welcome offer".
Amounts default to the cart's presentment currency. Each action is checked for compatibility with its target when you save, so invalid pairings are rejected before the discount is stored.
Targets
The target decides which items or delivery options receive the discount. Available targets depend on the discount class.
| Target | What it does | Extra setting |
|---|---|---|
| All cart lines | Discount every line item | None |
| Lines matching condition | Discount only lines that match a per-line condition | A condition evaluated for each line |
| Cheapest line | The single lowest-priced line | None |
| Most expensive line | The single highest-priced line | None |
"Lines matching condition" and "Delivery options matching condition" reuse the same condition builder described in Conditions, evaluated once per line or per option.
Selection Strategies
When more than one candidate matches, the selection strategy tells the runtime how to pick.
| Strategy | Meaning | Available on |
|---|---|---|
| First | Apply to the first eligible candidate, then stop | Product, Order, Shipping |
| All | Apply to every eligible candidate (stackable) | Product, Order, Shipping |
| Maximum | Apply to the candidate producing the largest saving | Product only |
| Minimum | Apply to the candidate producing the smallest saving | Product only |
Valid Combinations
Only the pairings below are allowed. The builder rejects anything else when you save.
| Action | Allowed targets |
|---|---|
| Percentage off | All cart lines, Lines matching condition, Cheapest line, Most expensive line |
| Fixed amount off | All cart lines, Lines matching condition, Cheapest line, Most expensive line |
Any Product target supports First, All, Maximum, and Minimum selection.
| Action | Allowed target |
|---|---|
| Percentage off | Order subtotal |
| Fixed amount off | Order subtotal |
Order targets support First and All selection.
| Action | Allowed targets |
|---|---|
| Free shipping | All delivery options, Delivery options matching condition |
| Percentage off | All delivery options, Delivery options matching condition |
| Fixed amount off | All delivery options, Delivery options matching condition |
Shipping targets support First and All selection.
Pick a legal combination
Walk this tree from your discount class to a valid action, target, and selection.
Not Yet Available
Buy-X-get-Y, fixed-price, and shipping percentage-off with extra options are natural extensions of the framework but are not exposed at launch. See How It Works for the wider roadmap.