Create discounts that apply automatically when an order meets your conditions—no code required.
A discount rule reduces a shopper's checkout total on its own, as soon as the
order meets the conditions you set. The shopper doesn't type anything—if the cart
qualifies, the discount is applied.
This is the automatic counterpart to
discount codes, which only apply
when the shopper enters a code. Both live under Settings → Checkout in
Dashboard and share the same builder, rule language, and scheduling.
Use discount rules for offers like:
Free shipping on orders over a threshold
A percentage off the order total once the cart reaches a minimum
A flat amount off the cart for qualifying orders
A discount on a specific SKU, product ID, or category
Dashboard splits checkout discounts into two pages. Both are backed by the same
rule engine—the only difference is whether the shopper has to enter a code.
↕
Discount codes↕
Discount rules↕
Dashboard page
Settings → Checkout → Discount codes
Settings → Checkout → Discount rules
How it applies
The shopper enters the code at checkout
Automatically, when the order meets the conditions
Identifier
Discount code—the value shoppers type
Name—an internal label shoppers never see
Underlying rule
Condition includes a :promo_codes: clause
Condition has no :promo_codes: clause
Conditions required
None—the code itself is the condition
At least one (minimum purchase or item restriction)
Renamed page
The page previously called Discounts is now Discount codes. Existing
discounts, links, and URLs are unchanged—/settings/checkout/discounts still
opens the discount codes list.
Both pages are available to online store organizations. Marketplace, postal, and
brokerage organizations are redirected away from them.
Go to Dashboard → Settings → Checkout → Discount rules.
Click New discount rule.
Enter a Name and, optionally, a Description.
Choose what the discount adjusts under Apply discount to, and set the
start and end dates.
In the Discount builder, pick the discount type and value, then add at
least one condition—a minimum purchase requirement, an item restriction, or
both.
Required. An internal label for the rule, shown in the Discount rules list. Shoppers never see it, and it is never added to the rule condition. Apostrophes are allowed.
Description
Free-form notes for your team. Not shown to shoppers.
Start / end date
When the rule becomes active and when it stops. Leave the end date blank to keep it active indefinitely; set it to a past date to deactivate.
Renaming a rule only changes its display name. Because the name never enters the
condition, renaming will not rewrite a rule you have hand-edited in the Rule
preview.
Apply discount to
The Apply discount to dropdown controls which part of the order the discount
adjusts, and caps the discount at that amount—a $50 discount applied to a $20
cart only takes $20 off. Choose Order total, Cart total, Shipping
total, or Item.
When you're editing an existing rule, Apply discount to is restricted to
options compatible with the rule's original context. To switch between
order-level and item-level discounts, create a new rule instead.
A discount code is always gated by the code the shopper types. A discount rule
has no code, so it needs something else to decide when it fires—otherwise it
would discount every order.
Set at least one of the following in the Discount builder:
Minimum purchase requirements—a minimum amount and currency. The rule only
applies when the shopper's items total is at or above this amount.
Restrict to specific items—limit the rule to items matched by SKU,
product ID, or category.
If you save without either, Dashboard blocks the save with:
A discount rule needs at least one condition. Add a minimum purchase
requirement or restrict it to specific items.
The Discount builder assembles the rule for you and works the same way it
does for discount codes. Use the Enable toggle in the section header to
choose how you author the rule:
Enable on (default)—the builder fields are shown and the Rule preview
is read-only. Change any field and the preview regenerates automatically.
Enable off—the builder fields are hidden and you edit the rule text
directly in the Rule preview.
If you open a rule whose saved logic the builder can't reproduce, the toggle is
off and locked, and the rule can only be edited in the preview.
Discount type
Percentage off—enter the Percentage (0–100) and pick what it's
calculated against under Calculate percentage against: Items subtotal,
Shipping, Items subtotal + Shipping, or Item amount (available when
Apply discount to is Item).
Fixed amount off—a flat discount. Enter the Amount and choose the
Currency.
Requirements
Under Configure when this discount should be available, choose Minimum
purchase requirements and set an amount and currency. For a discount rule this
is one of the two ways to satisfy the "at least one condition" requirement.
Restrict to specific items
Use Restrict the discount to items matched by SKU, product ID, or category to
limit which items the rule applies to: Any item, Specific SKUs,
Specific product IDs, or Specific categories (available when Apply
discount to is Item).
Each value is committed when you press Enter. Spaces inside a value are
allowed (e.g. Holiday Gifts); empty entries are filtered out. Item matching
uses exact equality, so PROD-123 will not match PROD-1234.
The Rule preview shows the rule that gets saved. A rule has two halves
separated by then:
:items_total: >= 100 usd
then :amount: = :shipping: * -1 and :type: = 'SHIPPING'
The condition (before then) decides when the rule fires.
The actions (after then) describe what the discount does and where it
applies—:type: is always required and indicates the context
('ORDER_TOTAL', 'CART_TOTAL', 'SHIPPING', or 'ITEM').
The difference from a discount code is the condition: a discount rule's condition
never contains a :promo_codes: clause. Everything else about the rule
language—operators, variables, and the Operators reference dialog—is
identical. See
Rule preview for the
full rule language reference.
Examples
Click Examples at the bottom of the rule preview to load a ready-made rule.
The Discount rules page shows condition-only templates, with no promo code in
them:
Example↕
What it does↕
Free shipping (100%)
100% off shipping when the order subtotal is at least $100
Percentage off order total
10% off the order total when the subtotal is at least $50
Fixed amount off cart
Fixed $5 off cart total when a minimum purchase of $50 is met
Free gift by SKU
100% off a specific item matched by SKU
Category discount
20% off items in a specific category
Clicking Use this example overwrites the current draft's rule, but keeps the
Name you already typed. Use the search field to filter the list.
Dashboard sorts a saved discount into one of the two pages by looking at its
condition:
Conditions that contain a :promo_codes: clause appear under Discount
codes.
Conditions that don't appear under Discount rules.
Editing the rule directly moves the discount
If you turn the Discount builder off and hand-write a :promo_codes: clause
into a discount rule's condition, the discount becomes a discount code and moves
to the Discount codes page after you save. The reverse is also true: removing
the :promo_codes: clause from a discount code moves it to Discount rules.
Its name and settings are preserved either way.
Expire a discount rule
To stop an existing rule from applying, you have two options:
Schedule it to expire
Go to Dashboard → Settings → Checkout → Discount rules.
Select the rule you want to expire.
Set the end date to a date in the past (or any future date you want it to
stop).
Click Save changes.
Expire it immediately
Go to Dashboard → Settings → Checkout → Discount rules.
Checkout discount rules
Checkout discount rules
Create discounts that apply automatically when an order meets your conditions—no code required.
A discount rule reduces a shopper's checkout total on its own, as soon as the order meets the conditions you set. The shopper doesn't type anything—if the cart qualifies, the discount is applied.
This is the automatic counterpart to discount codes, which only apply when the shopper enters a code. Both live under Settings → Checkout in Dashboard and share the same builder, rule language, and scheduling.
Use discount rules for offers like:
Discount codes vs. discount rules
Dashboard splits checkout discounts into two pages. Both are backed by the same rule engine—the only difference is whether the shopper has to enter a code.
:promo_codes:clause:promo_codes:clauseThe page previously called Discounts is now Discount codes. Existing discounts, links, and URLs are unchanged—
/settings/checkout/discountsstill opens the discount codes list.Both pages are available to online store organizations. Marketplace, postal, and brokerage organizations are redirected away from them.
Create a discount rule
Details
Renaming a rule only changes its display name. Because the name never enters the condition, renaming will not rewrite a rule you have hand-edited in the Rule preview.
Apply discount to
The Apply discount to dropdown controls which part of the order the discount adjusts, and caps the discount at that amount—a $50 discount applied to a $20 cart only takes $20 off. Choose Order total, Cart total, Shipping total, or Item.
Every rule needs at least one condition
A discount code is always gated by the code the shopper types. A discount rule has no code, so it needs something else to decide when it fires—otherwise it would discount every order.
Set at least one of the following in the Discount builder:
If you save without either, Dashboard blocks the save with:
Discount builder
The Discount builder assembles the rule for you and works the same way it does for discount codes. Use the Enable toggle in the section header to choose how you author the rule:
If you open a rule whose saved logic the builder can't reproduce, the toggle is off and locked, and the rule can only be edited in the preview.
Discount type
Requirements
Under Configure when this discount should be available, choose Minimum purchase requirements and set an amount and currency. For a discount rule this is one of the two ways to satisfy the "at least one condition" requirement.
Restrict to specific items
Use Restrict the discount to items matched by SKU, product ID, or category to limit which items the rule applies to: Any item, Specific SKUs, Specific product IDs, or Specific categories (available when Apply discount to is Item).
For the full reference on the builder fields, see Checkout promo codes and discounts.
Rule preview
The Rule preview shows the rule that gets saved. A rule has two halves separated by
then:then) decides when the rule fires.then) describe what the discount does and where it applies—:type:is always required and indicates the context ('ORDER_TOTAL','CART_TOTAL','SHIPPING', or'ITEM').The difference from a discount code is the condition: a discount rule's condition never contains a
:promo_codes:clause. Everything else about the rule language—operators, variables, and the Operators reference dialog—is identical. See Rule preview for the full rule language reference.Examples
Click Examples at the bottom of the rule preview to load a ready-made rule. The Discount rules page shows condition-only templates, with no promo code in them:
Clicking Use this example overwrites the current draft's rule, but keeps the Name you already typed. Use the search field to filter the list.
Which list a discount appears in
Dashboard sorts a saved discount into one of the two pages by looking at its condition:
:promo_codes:clause appear under Discount codes.If you turn the Discount builder off and hand-write a
:promo_codes:clause into a discount rule's condition, the discount becomes a discount code and moves to the Discount codes page after you save. The reverse is also true: removing the:promo_codes:clause from a discount code moves it to Discount rules. Its name and settings are preserved either way.Expire a discount rule
To stop an existing rule from applying, you have two options:
Schedule it to expire
Expire it immediately
Was this page helpful?