Skip to main content
Customer conditions let you price shipping differently for particular groups of customers — wholesale accounts, loyalty tiers, or staff.
Customer data is only available when the customer is logged in. For a guest checkout Shopify sends no customer record, so these conditions will not match. Always have a rule that covers guests, or guests may see no rates at all.

Available attributes

Shipping Customizations offer a wider set of customer conditions, including Total Spend, Order Count, Company, and Customer Metafield. See Customer Attributes under Shipping Customizations.

Customer Tag

Tag customers in Shopify Admin (or via your ERP / loyalty app), then match on the tag:
Multiple tags are separated by commas and match if any of them is present:
Tag matching is the most reliable customer condition because you control the tags. Prefer it over name matching, which depends on how the customer typed their name.

First and Last Name

Available mainly for edge cases and testing. Name conditions match against the name on the customer record.
Do not build business logic on names — they are not unique and customers type them inconsistently. If you need to identify a group of people, tag them.
Note that the first name shipmagic is reserved for test mode. While the app is in test mode it only returns rates for checkouts using that first name.

Covering guests

Because customer conditions silently fail for guests, a rule set built only on customer tags will leave guest shoppers with nothing. The usual pattern is a pair of rules:
A guest fails rule 1 and passes rule 2, so they still get a rate.

Examples

Free shipping for wholesale customers
Staff rate, combined with a cart condition

Cart Conditions

Match on cart value, quantity, weight, and contents.

Location and Address

Match on postcode, country, province, and warehouse.

Customization customer conditions

The larger customer condition set available to customizations.

Testing the app

How test mode uses the first name field.