When you have multiple warehouses, every incoming order needs to be assigned to the right one. By default, Warehance assigns all new orders to your organization's Primary Warehouse. If you need orders routed to different warehouses based on which store they come from, where the customer is located, or any other order attribute, you can set this up using Automation Rules.
Automation rules run automatically when an order is created. You can create as many rules as you need, and they execute in priority order — so your most specific routing logic always takes precedence.
How Default Warehouse Assignment Works
Before setting up routing rules, it helps to understand how Warehance assigns warehouses by default:
- Single warehouse — If your organization only has one warehouse, all orders are automatically assigned to it.
- Multiple warehouses — Orders default to your organization's Primary Warehouse. You can see which warehouse is set as primary under Settings > Organization.
This means if you're seeing all orders going to the same warehouse (and you have more than one), it's because no routing rules are in place — Warehance is using your Primary Warehouse as the default.
Setting Up Warehouse Routing with Automation Rules
The recommended way to route orders to specific warehouses is by creating automation rules with the Order Created trigger and the Set Warehouse action.
Step 1:
Navigate to Automation Rules in the left sidebar.
Step 2:
Click Create Rule in the top right corner.
Step 3:
Give your rule a descriptive name. Use something that makes the routing logic clear at a glance, such as Route Shopify US orders to Main Warehouse or Amazon Store → West Coast WH.
Step 4:
Set the Trigger to Order Created. This ensures the rule runs every time a new order syncs into Warehance.
Step 5:
Add your Conditions. Conditions determine which orders the rule applies to. You must add at least one condition group. Within a condition group, conditions act as OR — if any one condition in the group is met, the group passes. If you have multiple condition groups, they act as AND — all groups must pass for the rule to fire.
For store-based routing, add the Order Store condition and select the store you want to target.
Step 6:
Add the Set Warehouse action. Select the warehouse you want matching orders assigned to.
Step 7:
Click Save. The rule is now active and will apply to all future orders that match your conditions.
Already have orders that were routed to the wrong warehouse? You can manually trigger automation rules on existing orders. Open the order, click the Actions menu, and select Run Automation Rules.
Example: Route Orders by Store
Scenario: You have two stores — Shopify US and Shopify EU — and two warehouses — Main Warehouse and Europe Warehouse. You want Shopify US orders to go to Main Warehouse and Shopify EU orders to go to Europe Warehouse.
Rule 1: Shopify US → Main Warehouse
- Name: Shopify US → Main Warehouse
- Trigger: Order Created
- Condition Group 1:
- Order Store is Shopify US
- Action: Set Warehouse → Main Warehouse
Rule 2: Shopify EU → Europe Warehouse
- Name: Shopify EU → Europe Warehouse
- Trigger: Order Created
- Condition Group 1:
- Order Store is Shopify EU
- Action: Set Warehouse → Europe Warehouse
Example: Route Orders by Customer State
Scenario: You have an East Coast warehouse and a West Coast warehouse. You want to route orders based on the customer's shipping state to minimize transit time.
Rule 1: West Coast → LA Warehouse
- Name: West Coast states → LA Warehouse
- Trigger: Order Created
- Condition Group 1:
- Order Customer State is CA
- OR Order Customer State is OR
- OR Order Customer State is WA
- OR Order Customer State is NV
- OR Order Customer State is AZ
- Action: Set Warehouse → LA Warehouse
All remaining orders will stay on your Primary Warehouse. You don't need a catch-all rule — only rules for the exceptions.
Example: Route by Store AND Client (3PL)
Scenario: You're a 3PL with multiple clients. One client wants all their orders fulfilled from your secondary warehouse, regardless of which store the order came from.
Rule: Acme Co → Denver Warehouse
- Name: Acme Co → Denver Warehouse
- Trigger: Order Created
- Condition Group 1:
- Order Client is Acme Co
- Action: Set Warehouse → Denver Warehouse
3PL users can create automation rules at either the organization level (applies across all clients) or the client level (scoped to a single client). Client-level rules are useful when a client has their own specific routing preferences.
Using Multiple Condition Groups (AND Logic)
If you need orders to match multiple criteria, add more than one condition group. All groups must pass for the rule to fire.
Example: Route orders from your Amazon store where the customer is in Texas to a specific warehouse.
- Condition Group 1:
- Order Store is Amazon
- Condition Group 2:
- Order Customer State is TX
- Action: Set Warehouse → Dallas Warehouse
This rule only fires when both the store is Amazon and the customer state is TX.
Rule Priority
When you have multiple routing rules, priority determines which rule runs first. Rules execute from highest priority (lowest number) to lowest priority. If a higher-priority rule sets the warehouse, a lower-priority rule with the same action will overwrite it.
Best practice: Put your most specific rules at the highest priority. For example:
- Priority 1 — Route Texas orders from Amazon → Dallas Warehouse
- Priority 2 — Route all Amazon orders → Atlanta Warehouse
This way, Texas orders get special treatment, and everything else from Amazon falls through to the general rule.
You can reorder rules by dragging them in the Automation Rules list, or by editing the priority number directly.
Conditions Available for Routing
You can route orders based on a wide range of conditions. Some of the most useful for warehouse routing include:
- Order Store — Which store the order came from
- Order Store Name — Match by store name (useful with text operators like "contains")
- Order Client — Which client the order belongs to (3PL)
- Order Customer State — Shipping address state/province
- Order Customer Country — Shipping address country
- Order Tags — Any tags on the order
- Order Shipping Method — The shipping method selected at checkout
- Order At Least One SKU — Whether the order contains a specific SKU
- Order Total Weight — Total weight of the order
- Order Subtotal — Order subtotal amount
Important Notes
- Set Warehouse will not override orders that are already in progress. If an order has moved to In Progress fulfillment status, the Set Warehouse action is silently skipped. This prevents warehouse changes from disrupting orders that are already being picked or packed.
- Rules run on order creation, not on update. If you need to re-route an order after it was created, use the manual trigger from the order's Actions menu.
- Orders without a matching rule stay on your Primary Warehouse. You only need to create rules for the exceptions — not for every warehouse.
- You can combine Set Warehouse with other actions. A single automation rule can set the warehouse, add a tag, set priority, and more — all in one rule.
Frequently Asked Questions
Why are all my orders going to the same warehouse?
If no automation rules are set up, all orders default to your organization's Primary Warehouse. Create an automation rule with the Order Created trigger and Set Warehouse action to route orders elsewhere. Check your Primary Warehouse setting under Settings > Organization to confirm which warehouse is currently the default.
Can I set a default warehouse per store?
There's no per-store default warehouse setting. Instead, create an automation rule with the Order Created trigger, add an Order Store condition for the store, and use the Set Warehouse action. This achieves the same result and gives you more flexibility — you can combine store conditions with other criteria like customer location or order tags.
Can I route orders based on which products are in the order?
Yes. Use the Order At Least One SKU condition to check if the order contains a specific product, and route accordingly.
What happens if two rules try to set different warehouses?
Rules execute in priority order. The last rule to run that sets a warehouse will win. Arrange your rule priorities so the most specific rules run last (lowest priority number = runs first, but a later rule can overwrite).
Can I fix orders that were already routed incorrectly?
Yes. Open the order, click the Actions menu, and select Run Automation Rules. This will re-evaluate all matching rules against the order. You can also manually change the warehouse on any order that is not yet in progress.
Do automation rules work for manually created orders?
Yes. The Order Created trigger fires for all orders, including manually created ones.