Product rules are ideal when certain items require special handling, packaging, or should only ship from locations with specific capabilities.
How product rules work
A product rule has two parts:- When (condition): Which products or collections trigger the rule
- Then (filter): Which locations to block or allow when triggered
Create a product rule
Name your rule and set status
Enter a descriptive name (max 75 characters) that explains the rule’s purpose, like “Fragile items - Warehouse only” or “Premium collection - Flagship stores”.Set the Status to:
- Active: Rule applies immediately at checkout
- Draft: Rule is saved but won’t affect checkout
Configure the condition (When)
In the Configuration section under When, set up what triggers the rule:Condition: Choose between Product or Collection
Operator: Select how the condition matches
Value: Click Select products or Select collections to open the picker and choose your items.

| Operator | Effect |
|---|---|
| Includes | Rule triggers when cart contains ANY of the selected items |
| Does not include | Rule triggers when cart does NOT contain the selected items |
- Product picker
- Collection picker
Search and select individual products from your catalog.

Configure the location filter (Then)
Under Then, define which locations are affected when the rule triggers:Action:
Property: Choose how to target locations
| Action | Effect |
|---|---|
| Include | Only the specified locations can fulfill (all others blocked) |
| Exclude | The specified locations are blocked (all others allowed) |

| Property | Value | Use when |
|---|---|---|
| Specific locations | Select individual locations | You need precise control over specific locations |
| Location with tag | Enter tag names | You want to target locations by capability |
| Location with type | Warehouse or Store | You want to target all locations of a type |
Configuration options
Condition types
- By Products
- By Collections
Target specific individual products by selecting them from your catalog.Best for:
- One-off items with special requirements
- Products that need specific handling
- Items exclusive to certain locations
Location filters
Filter by specific locations
Filter by specific locations
Select individual locations from your list. Use this when you need precise control.Example setup:
- Action: Include
- Property: Specific locations
- Value: Paris Warehouse, Lyon Warehouse
Filter by location tag
Filter by location tag
Target locations based on tags you’ve assigned. This is powerful for capability-based routing.Example setup:
- Action: Include
- Property: Location with tag
- Value:
hazmat-certified
hazmat-certified can fulfill matching products.Make sure you’ve set up location tags before using this filter.
Filter by location type
Filter by location type
Target all Warehouses or all Stores at once.Example setup:
- Action: Exclude
- Property: Location with type
- Value: Store
Examples
Fragile items from warehouse only
A home décor retailer sells delicate glass items that require bubble wrap and custom packaging only available at their central warehouse.Create a collection
In Shopify, create a collection called “Fragile Items” and add all glass products.
Exclusive products for flagship stores
A fashion brand launches a limited collection only available at their 3 flagship stores.Tag your flagship stores
Go to Locations and add the tag
flagship to your 3 flagship stores.Heavy items excluded from small stores
A furniture retailer has small urban stores that can’t handle oversized deliveries.Set condition (When)
- Condition: Collection
- Operator: Includes
- Value: Oversized Furniture, Heavy Appliances
Best practices
Use collections over products
Collections automatically include new products, reducing maintenance. Reserve individual product selection for true one-offs.
Use tags for capabilities
Tag locations by what they can do (
fragile-certified, cold-chain, oversized-shipping) rather than what they are.Test with Draft status
Create rules in Draft mode first, verify the logic, then activate. This prevents unexpected checkout blocks.
Name rules clearly
Use descriptive names like “Hazmat items - Certified locations only” instead of “Rule 1”. Future you will thank you.
Troubleshooting
Customers see 'no shipping options' at checkout
Customers see 'no shipping options' at checkout
This means all locations with stock are blocked by your rule.Check:
- Does at least one allowed location have the product in stock?
- Is the filter too restrictive? (e.g., including only one location that’s out of stock)
- Are multiple rules conflicting and blocking all locations?
Rule doesn't seem to apply
Rule doesn't seem to apply
Check:
- Is the rule status set to Active?
- Does the product/collection in cart actually match the condition?
- If using “Does not include”, remember the logic is inverted
Can't create more rules
Can't create more rules
You’ve reached the limit of 10 configurable rules (Product + Customer + Cart combined).Solutions:
- Consolidate similar rules using collections instead of individual products
- Delete unused or Draft rules
- Use location tags to make rules more flexible

