Automation rules run on every order that imports into ShipHero. Each rule pairs a trigger, which is the condition ShipHero checks on the order, with an action, which is the change ShipHero makes when that condition is true. This page lists every trigger you can build a rule on, and points to the article that documents each action.
To build a rule, go to How to Use Automation Rules in ShipHero. Any trigger on this page can be paired with any action, so triggers and actions are documented separately.
Table of Contents
- Available Automation Rule Triggers
- Trigger Details That Affect Whether Your Automation Rule Fires
- Automation Rule Action Index
Available Automation Rule Triggers
ShipHero has 52 automation rule triggers, grouped below by what they look at on the order. Every trigger works with any action. Triggers marked Multi-warehouse only require Multi-Warehouse Allocation and run only after your Multi-Warehouse Allocation rules finish.
How Automation Rule Trigger Conditions Work
Each trigger accepts one of six condition sets. The Conditions column in each table below names the set a trigger uses. Match that name to this table to see the operators available.
| Condition set | Operators available |
|---|---|
| Text | equals, not equals, contains, does not contain, starts with, not starts with, ends with, not ends with, greater than, greater than or equal to, less than, less than or equal to, in list, not in list, in list contains, not in list contains, in list starts with, not in list starts with, in list ends with, not in list ends with |
| Numeric | equals, not equals, greater than, greater than or equal to, less than, less than or equal to, in list, not in list |
| Yes or No | yes, no |
| Exact match or list | equals, not equals, in list, not in list |
| Exact match only | equals, not equals |
| Time comparison | greater than, greater than or equal to, less than, less than or equal to |
Address and Destination Automation Rule Triggers
Match on where the order is going. ShipHero reads these from the shipping address on the order, not the billing address.
| Trigger | What it matches | Conditions | Multi-warehouse only |
|---|---|---|---|
| Address 1 | Shipping address line 1 on the order. | Text | No |
| Address 2 | Shipping address line 2 on the order. | Text | No |
| City | Shipping city on the order. | Text | No |
| Company | Company name on the shipping address. | Text | No |
| Country | Country on the shipping address, written as a two-character country code. | Text | No |
| State | State on the shipping address, written as a two-character state abbreviation. | Text | No |
| Zipcode | Zip code on the shipping address. | Text | No |
| Shipping and billing address 1 match | Whether address line 1 is the same on the shipping and billing addresses. | Yes or No | No |
| Shipping and billing Zip match | Whether the zip code is the same on the shipping and billing addresses. | Yes or No | No |
| USPS Zone | The USPS shipping zone, calculated from the origin zip on the order’s profile and the destination zip. | Numeric | No |
Products on the Order Automation Rule Triggers
Match on what is in the order: which SKUs, how many, and which vendor supplies them.
| Trigger | What it matches | Conditions | Multi-warehouse only |
|---|---|---|---|
| SKU | A SKU on the order. | Text | No |
| SKU quantity | The ordered quantity of a SKU. Available only after a SKU trigger. | Numeric | No |
| Product name | Product name as it appears on the order. | Text | No |
| Product tag | A tag on a product. Tags can be added in ShipHero or Shopify. | Text | No |
| Number of unique SKUs | How many different SKUs are on the order, counted in any status: pending, canceled, or fulfilled. | Numeric | No |
| Number of pending line items | How many line items are still open. A pending line item is one that is not canceled and not fulfilled. This counts lines, not quantities. | Numeric | No |
| Sum of line items quantities | Total units on the order, including auto-fulfilled products. | Numeric | No |
| Sum of line items pending quantities | Total units across pending line items only. Canceled and fulfilled lines are excluded. | Numeric | No |
| All items in the order are from vendor | Every item on the order is assigned to the vendor you select. On accounts without Multi-Warehouse Allocation, this is the only trigger that requires all items to match. | Exact match only | No |
| Any items in the order are from vendor | At least one item on the order is assigned to the vendor you select. | Exact match only | No |
Order Identity and Timing Automation Rule Triggers
Match on which order it is and when it arrived in ShipHero.
| Trigger | What it matches | Conditions | Multi-warehouse only |
|---|---|---|---|
| Order number | The order number. Matching is exact. | Text | No |
| Order Tag | A tag on the order. Tags can come from Shopify or from the action of an earlier automation rule. | Text | No |
| Order Profile | The profile assigned to the order, either by default from the store settings or by an earlier automation rule. | Text | No |
| Store Name | The store shown in the Store field on the order. Often a URL for Shopify stores, for example my-store.myshopify.com. | Text | No |
| Order date and time | The date and time the order imported, in the time zone set in your account settings. | Numeric | No |
| Day of Week (0:Sun, 1:Mon, etc) | The day of the week the order imported, entered as a number: 0 for Sunday, 1 for Monday, and so on. | Text | No |
| Time of Day (HH:MM[am/pm]) | The time the order imported, in the customer’s time zone. Enter as HH:MMam or HH:MMpm, for example 05:30pm. | Time comparison | No |
Order Value Automation Rule Triggers
Match on the money on the order. These amounts come from the sales channel.
| Trigger | What it matches | Conditions | Multi-warehouse only |
|---|---|---|---|
| Order Total | The total price of the order, shown as Total on the order page. | Numeric | No |
| Subtotal | The order total before tax and shipping, taken directly from the sales channel. | Numeric | No |
| Sales tax | The sales tax line on the order. | Numeric | No |
| Shipping price | What the customer paid for shipping at checkout. | Numeric | No |
Size and Weight Automation Rule Triggers
Match on the physical dimensions and weight of the products on the order. All of these include auto-fulfilled products.
| Trigger | What it matches | Conditions | Multi-warehouse only |
|---|---|---|---|
| Total weight of products in the order in ounces (oz) | Combined weight of every product on the order, in ounces. | Numeric | No |
| Products Total Cubic Inches | Combined cubic inches of every product on the order. | Numeric | No |
| Any product dimension in inches | Fires when any single dimension (length, width, or height) on any product on the order matches. | Numeric | No |
| All product dimensions in inches | Fires only when every dimension on every product on the order matches. If one dimension on one product does not match, the rule does not run. | Numeric | No |
Customer Automation Rule Triggers
Match on who placed the order.
| Trigger | What it matches | Conditions | Multi-warehouse only |
|---|---|---|---|
| The customer email, taken from the billing address. | Text | No | |
| Phone Number | The shipping phone number on the order. | Text | No |
| Customer orders count | How many previous orders the customer has placed. This count comes from Shopify store data and does not work the same way for other store platforms. Using Customer Order Count | Numeric | No |
Shipping Assignment Automation Rule Triggers
Match on how the order will ship. These three triggers look similar and are not interchangeable.
| Trigger | What it matches | Conditions | Multi-warehouse only |
|---|---|---|---|
| Shipping carrier | The carrier the order is assigned to, for example UPS, USPS, or FedEx. Set by your shipping method mapping. | Text | No |
| Shipping method | The shipping method the order is assigned to, for example 2 Day, Ground, or Express. Set by your carrier mapping. | Text | No |
| Shipping name | The shipping service the customer chose at checkout, for example Free Shipping, Economy, or International Economy. Comes from the shopping cart. | Text | No |
Existing Holds Automation Rule Triggers
Match on a hold that is already on the order. These are the triggers that make hold-release rules possible: a rule reads the hold with a Has trigger, then clears it with a Set action. Without them, a rule can apply a hold but nothing can detect one.
| Trigger | What it matches | Conditions | Multi-warehouse only |
|---|---|---|---|
| Has Address Hold | The order has an address hold. The hold can come from the address validator or from an earlier automation rule. | Yes or No | No |
| Has Fraud Hold | The order has a fraud hold. The hold can come from your Shopify fraud settings or from an earlier automation rule. | Yes or No | No |
| Has Operator Hold | The order has an operator hold. This hold is set by an earlier automation rule. | Yes or No | No |
| Has Payment Hold | The order has a payment hold. The hold can come from your Shopify store settings or from an earlier automation rule. | Yes or No | No |
Allocation and Location Automation Rule Triggers
Match on where inventory sits or where it was allocated. Most of these require Multi-Warehouse Allocation and only run after your Multi-Warehouse Allocation rules have finished.
| Trigger | What it matches | Conditions | Multi-warehouse only |
|---|---|---|---|
| All items allocated to warehouse | Every item on the order is allocated to the same warehouse, which you pick from a list. If items are backordered and Allow Partial is off, the rule cannot run. Multi-Warehouse triggers | Exact match or list | Yes |
| Any item allocated to warehouse | At least one item on the order is allocated to the warehouse you pick from the list. Multi-Warehouse triggers | Exact match or list | Yes |
| No items allocated to warehouse | No items on the order are allocated to the warehouse you pick from the list. Multi-Warehouse triggers | Exact match or list | Yes |
| Any item back ordered to warehouse | At least one item on the order is backordered to the warehouse you pick from the list. Multi-Warehouse triggers | Exact match or list | Yes |
| Allocated Warehouse Count | How many warehouses the order was allocated across. Multi-Warehouse triggers | Numeric | Yes |
| Shopify item assigned to location | The Shopify location an item is assigned to. Works only when Save Item Fulfillment Location When Importing Orders is enabled on the store settings page. Using Shopify Locations | Exact match or list | No |
| Item bin location | An item on the order is assigned to the bin location you enter. | Text | No |
Pro-Tip
Pair a Has trigger with a Set action to release holds automatically. A rule that uses the trigger Has Payment Hold set to Yes, with the action Set Payment Hold set to Off, clears the hold once your payment condition is met. See How to Manage Order Holds with Automation Rules for the full hold workflow.
Trigger Details That Affect Whether Your Automation Rule Fires
Some automation rule triggers expect a specific format or depend on something else happening first. A trigger that looks correctly configured will never fire if one of these details is wrong.
Formatting Requirements for Automation Rule Triggers
| Trigger | What to enter |
|---|---|
| Country | The two-character country code, not the country name. Enter US, not United States. |
| State | The two-character state abbreviation, not the state name. Enter CA, not California. |
| Order number | The exact order number, including the # if the order number has one. Enter at least two characters. The equals and starts with operators both match exactly. |
| Order Tag | Order tags that import from Shopify always begin with the words "shopify tag". Include that prefix when you match on an imported tag. |
| Product tag | Product tags that come from Shopify also begin with the words "shopify tag". |
| Day of Week (0:Sun, 1:Mon, etc) | The day as a number, where 0 is Sunday and 1 is Monday. |
| Time of Day (HH:MM[am/pm]) | The time in HH:MMam or HH:MMpm format, for example 05:30pm. |
Automation Rule Triggers That Depend on Rule Order
Automation rules run in the order they are listed. When one rule sets the value another rule reads, the rule that sets the value has to run first.
- USPS Zone is calculated from the origin zip on the order’s profile. If you use an automation rule to set the profile, place that rule above any rule that triggers on USPS Zone.
- SKU quantity is only available once a SKU trigger is in place. Add the SKU trigger first, then add SKU quantity to the same rule.
- Existing hold triggers read a hold that is already on the order. If the hold comes from an earlier automation rule, that rule has to run first.
- Multi-warehouse triggers run only after your Multi-Warehouse Allocation rules finish. See How to Use Automation Rules with Multi-Warehouse Allocation.
Shipping Carrier, Shipping Method, and Shipping Name Are Different Triggers
These three triggers read three different values, and using the wrong one is a common reason a shipping rule does not fire.
| Trigger | Where the value comes from | Example values |
|---|---|---|
| Shipping carrier | Your shipping method mapping in ShipHero. | UPS, USPS, FedEx |
| Shipping method | Your carrier mapping in ShipHero. | 2 Day, Ground, Express |
| Shipping name | The shopping cart. This is what the customer selected at checkout. | Free Shipping, Economy, International Economy |
Important
The Item bin location trigger is unreliable unless a SKU is only ever stored in one bin. Slotting moves inventory between bins, so an item that matched the bin in your rule yesterday may not match it today. Keeping every SKU restricted to a single bin takes enough manual work that this trigger is not recommended for most accounts.
Before using Store Name: check how the store name appears in the Store field on an order first. It is often a URL for Shopify stores, and it varies on manual order uploads and orders created through the API. If order uploads are a large part of your business, Store Name is a useful trigger once you confirm the value.
Automation Rule Action Index
ShipHero has 60 automation rule actions. Each one is documented in full, with its available values and worked examples, in the article named beside it. Actions are grouped by the article that documents them, and listed alphabetically within each group.
| Action | Where this action is documented |
|---|---|
| Set Address Hold | Order Holds |
| Set Client Hold | Order Holds |
| Set Fraud Hold | Order Holds |
| Set Hold Until Date ahead X days | Order Holds |
| Set Hold Until Date ahead X hours | Order Holds |
| Set Hold Until Date and Time | Order Holds |
| Set Ignore Address Validation Errors | Order Holds |
| Set Operator Hold | Order Holds |
| Set Payment Hold | Order Holds |
| Apply discount to Customs Value | International Orders |
| Set Currency | International Orders |
| Set FTR exemption | International Orders |
| Set order incoterms | International Orders |
| Set Order Tax Type and ID | International Orders |
| Set adult signature required | Shipping and Label Settings |
| Set alcohol tag | Shipping and Label Settings |
| Set dry ice weight | Shipping and Label Settings |
| Set FedEx Dangerous Goods | Shipping and Label Settings |
| Set insurance | Shipping and Label Settings |
| Set insurance amount based on product value | Shipping and Label Settings |
| Set profile | Shipping and Label Settings |
| Set requires signature | Shipping and Label Settings |
| Set Saturday delivery flag | Shipping and Label Settings |
| Set shipping method | Shipping and Label Settings |
| Add a SKU | Products on an Order |
| Add X units of a SKU | Products on an Order |
| Add X units of a SKU for every Y units ordered | Products on an Order |
| Cancel items | Products on an Order |
| Cancel the entire order but don’t cancel on platform | Products on an Order |
| Change SKU | Products on an Order |
| Delete all instances of a SKU | Products on an Order |
| Delete one unit of a SKU | Products on an Order |
| Remove X units of a SKU for every Y unit ordered | Products on an Order |
| Add Gift Note | Notes and Notifications |
| Add Order History | Notes and Notifications |
| Add Warehouse Note | Notes and Notifications |
| Call URL | Notes and Notifications |
| Disable shipment notification | Notes and Notifications |
| Send email | Notes and Notifications |
| Auto-print shipping labels | Packing and Documents |
| Do not print the invoice | Packing and Documents |
| Pre-Print Shipping Label | Packing and Documents |
| Set box to use | Packing and Documents |
| Set gift invoice | Packing and Documents |
| Set tote QA | Packing and Documents |
| Set a custom status | Classify and Prioritize |
| Set order tag | Classify and Prioritize |
| Set phone number | Classify and Prioritize |
| Set priority flag | Classify and Prioritize |
| Set auto print return label | Return Settings |
| Set auto-generate RMA | Return Settings |
| Set return warehouse | Return Settings |
| Set return weight | Return Settings |
| Create dropship for vendor (only items in the order) | Fulfillment Routing and Allocation |
| Lock items to warehouse | Fulfillment Routing and Allocation |
| Set allocation priority | Fulfillment Routing and Allocation |
| Set allow partial | Fulfillment Routing and Allocation |
| Set required ship date ahead to X business days | Fulfillment Routing and Allocation |
| Set Workflow | Fulfillment Routing and Allocation |
| Toggle wholesale | Fulfillment Routing and Allocation |
Not sure which article you need? Getting Started with Automation Rules in ShipHero lists all nine action articles by task. If a rule is built but not running, see Troubleshooting: Why Is My Automation Rule Not Working?