Control which locations can fulfill orders based on cart properties
Cart rules let you restrict fulfillment based on cart properties. When a cart meets specific criteria like total quantity, total amount, or contains items with specific attributes, you can control exactly which locations are allowed to fulfill the order.
Cart rules are ideal for routing high-value orders to secure locations, bulk orders to warehouses, or orders with special handling requirements to capable locations.
Go to Charlie → Fulfillment Constraints and click Create rule.
2
Name your rule and set status
Enter a descriptive name (max 75 characters) that explains the rule’s purpose, like “High-value orders - Warehouse only” or “Bulk orders - Distribution center”.Set the Status to:
Active: Rule applies immediately at checkout
Draft: Rule is saved but won’t affect checkout
3
Select Cart based as the rule type
Under Rule type, select Cart based.
4
Configure the condition (When)
In the Configuration section under When, set up what triggers the rule:Condition: Choose the cart property to evaluate
Condition
Description
Total cart quantity
Total number of items in the cart
Total cart amount
Total value of the cart in your store currency
Line item has attribute
Items with specific custom attributes
The available operators and value fields depend on the condition you select.
5
Configure the location filter (Then)
Under Then, define which locations are affected when the rule triggers:
Action:
Action
Effect
Include
Only the specified locations can fulfill (all others blocked)
Exclude
The specified locations are blocked (all others allowed)
Property: Choose how to target locations
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
6
Save the rule
Click Save to create your rule. If set to Active, it takes effect immediately at checkout.
You can create up to 10 configurable rules total across Product, Customer, and Cart rule types. Plan your rules strategically.
Triggers based on the total number of items in the cart.Operators available:
Operator
Description
Equal
Cart has exactly this many items
Not Equal
Cart does not have exactly this many items
Greater Than
Cart has more than this many items
Less Than
Cart has fewer than this many items
Greater Than Or Equal
Cart has this many or more items
Less Than Or Equal
Cart has this many or fewer items
Value: Enter the quantity thresholdBest for:
Routing bulk orders to warehouses
Limiting small stores to single-item orders
Handling large orders with dedicated fulfillment
Example: Orders with more than 10 items should only be fulfilled from warehouses with bulk packaging capabilities.
Triggers based on the total value of the cart in your store currency.Operators available: Same as Total cart quantity (Equal, Not Equal, Greater Than, Less Than, Greater Than Or Equal, Less Than Or Equal)Value: Enter the amount threshold (in your store currency)Best for:
High-value orders requiring secure handling
Premium orders with special packaging
Insurance or verification requirements
Example: Orders over €500 should only be fulfilled from your central warehouse with dedicated security processes.
Triggers based on custom attributes attached to line items. This is the most flexible condition type.
Constraint applies only to line items matching this attribute. Other items in the cart are not affected.
Operators available:
Operator
Description
Equal
Attribute value exactly matches
Not Equal
Attribute value does not match
Is Set
Attribute exists (any value)
Is Not Set
Attribute does not exist
Fields:
Attribute key: The name of the attribute (max 125 characters)
Attribute value: The value to match (max 125 characters, not required for Is Set/Is Not Set)
Best for:
Gift wrapping or special packaging
Engraving or personalization
Pre-order or backorder items
Custom handling requirements
Example: Items with a gift_wrap attribute set to true should only be fulfilled from locations with gift wrapping capabilities.
Line item attributes are typically set by your theme or custom app at cart/checkout. Common examples include gift messages, personalization text, or special handling instructions.
A jewelry retailer wants to ensure orders over €500 are only fulfilled from their central warehouse where they have insurance verification and secure packaging.
1
Create the rule
Name: High-value orders - Warehouse only
Status: Active
Type: Cart based
2
Set condition (When)
Condition: Total cart amount
Operator: Greater Than
Value: 500
3
Set filter (Then)
Action: Include
Property: Location with type
Value: Warehouse
Result: Orders over €500 are fulfilled exclusively from warehouses with proper security handling.
A fashion brand offers gift wrapping, but only flagship stores have the premium packaging materials and trained staff.
1
Tag flagship stores
Add the tag gift-wrap-capable to stores with gift wrapping services.
2
Create the rule
Name: Gift wrap - Flagship stores only
Status: Active
Type: Cart based
3
Set condition (When)
Condition: Line item has attribute
Operator: Equal
Attribute key:gift_wrap
Attribute value:true
4
Set filter (Then)
Action: Include
Property: Location with tag
Value:gift-wrap-capable
Result: Items with gift wrapping are only fulfilled from stores with gift wrapping capabilities.
Remember: with Line item has attribute, only the specific items matching the attribute are constrained. Other items in the same cart can be fulfilled from any location.