Route orders to the right bridge
Not every order goes to the same place. Some ship from your East Coast warehouse, some from the West. High-value orders need white-glove fulfillment. International orders route to a different 3PL. Dispatchers evaluate conditions on every order and automatically route it to the correct destination bridge — no manual sorting, no mistakes.
Think of them as if/then rules for your entire fulfillment network.
Manual order routing doesn't scale
When you have one warehouse, routing is simple — everything goes there. But the moment you add a second fulfillment center, a freight carrier for heavy orders, or a different 3PL for international shipments, someone has to decide where each order goes. That someone is usually copying and pasting between tabs.
Manual sorting
Someone on your team eyeballs each order and decides which warehouse or carrier should handle it. Slow, error-prone, and impossible to audit.
Hard-coded logic
A developer writes if/else rules in your codebase. Works until business rules change — then it's a deploy cycle every time you need to adjust.
Platform limitations
Your e-commerce platform might let you set simple shipping rules, but it can't route based on order value, customer tags, or destination ZIP codes.
Rules you write, routing that runs
Every dispatcher has a source bridge, conditions to evaluate, and a destination bridge. When an order arrives, dispatchers run in priority order and route it to the first matching destination.
Order arrives
An order syncs in through a source bridge — Shopify, a marketplace, or any connected platform.
Conditions evaluate
The dispatcher checks order fields: state, zip, total, tags, SKU, customer info — 24 fields across 6 categories.
Match mode applied
AND mode requires all conditions to match. OR mode matches if any condition is true. You pick per-dispatcher.
Order dispatched
Matching orders are assigned to the destination bridge — ShipStation, your 3PL, or any connected integration. Non-matching orders continue to the next dispatcher.
17 operators, 24 fields, zero code
The condition builder gives you fine-grained control over which orders match. Filter by any order field — shipping address, totals, customer info, tags, or custom fields — using operators from simple equality to regex patterns.
Rich operator set
Equals, contains, starts with, regex, greater than, in list, in set, exists — 17 operators that cover every routing scenario.
Condition sets for large lists
Need to match against 70,000 ZIP codes? Condition sets store large value lists efficiently. Use "in_set" and "not_in_set" operators to check membership without bloating your rules.
Priority-based evaluation
Dispatchers run in priority order (0-1000). Higher priority evaluates first. When a dispatcher matches, the order is assigned — lower-priority dispatchers become fallbacks.
Four trigger types
Run dispatchers on order_created, order_updated, shipment_created, or manual trigger only. Control exactly when routing evaluation happens.
Match against thousands of values instantly
Dispatcher conditions work great for simple rules — but what happens when you need to match against 70,000 ZIP codes, 500 SKUs, or a list of VIP customer emails? Condition sets solve this by storing large value lists as reusable, named collections with O(1) hash-based lookup.
Named, reusable collections
Create a condition set once and reference it from any dispatcher. Update the ZIP code list in one place and every dispatcher that uses it picks up the change instantly.
O(1) membership testing
Values are stored as hash sets. Whether your list has 10 entries or 100,000, lookup time is constant. No linear scans, no performance degradation.
in_set & not_in_set operators
Two dedicated operators for condition sets. Use "in_set" to match orders where a field value exists in the set, or "not_in_set" to exclude them. Combine with other conditions using AND/OR logic.
Bulk import & API management
Upload a CSV of ZIP codes, paste a list of SKUs, or manage sets programmatically via the API. Changes take effect immediately — no redeploy, no restart.
Routing rules teams actually use
Regional warehouse routing
Route orders to the nearest fulfillment center based on ZIP code using condition sets. Load 70,000 ZIP codes into a set and match instantly — no performance penalty.
High-value order handling
Route orders above a dollar threshold to your white-glove fulfillment partner. Signature required, insurance included, tracking notifications.
International shipping
Automatically route international orders to a carrier or 3PL that handles customs, duties, and cross-border logistics.
Hazmat / fragile items
Match orders containing fragile or hazardous materials by tag or SKU pattern and route them to carriers certified for special handling.
Subscription fulfillment
Route recurring subscription orders to a separate fulfillment flow with different packing slips, inserts, and shipping preferences.
SKU-based routing
Load your cold-chain SKUs into a condition set. Any order containing a temperature-sensitive product routes to your cold-storage fulfillment partner automatically.
One order in, multiple orders out
Not every line item in an order ships from the same place. Some SKUs live in your East Coast warehouse, others in the West. Some items need cold storage, others don't. Order splitting automatically breaks a parent order into child orders based on rules you define — so each child routes to the right fulfillment destination.
Split rules evaluate on every incoming order. The first matching rule wins, creating child orders that inherit the parent's customer and shipping info while carrying only their assigned line items.
Condition-based splitting
Define condition groups that match line items by SKU, quantity, price, weight, or any product field. Each group becomes a labeled child order. Items that don't match any group stay with the parent.
Field grouping
Group line items by a field value — SKU prefix, warehouse code, variant title, or any custom property. Each unique value becomes its own child order. The largest group stays with the parent.
Bridge-specific rules
Scope split rules to a specific source bridge, or apply them to all bridges. A Shopify-only rule won't interfere with your marketplace orders.
Priority-based evaluation
Split rules run in priority order (0–1000). The first rule that matches wins — lower-priority rules become fallbacks. No stacking, no conflicts.
Split first, then dispatch
Order splitting and dispatching work together in the order processing pipeline. Split rules break multi-warehouse orders into focused child orders, then dispatchers route each child to the correct fulfillment bridge. The result: every line item ends up at the right destination without manual intervention.
Order arrives
A multi-item order syncs in through a source bridge with line items destined for different warehouses.
Split rules evaluate
The first matching split rule breaks the order into child orders — by condition groups or field values.
Dispatchers route
Each child order is evaluated by dispatchers independently. Cold-storage items route to one bridge, standard items to another.
Fulfilled separately
Each child is fulfilled by its destination bridge. Tracking numbers consolidate back to the parent order automatically.
The routing layer your ops team is missing
Dispatchers sit between order ingestion and fulfillment — the critical decision point that determines where an order actually goes. Without them, that decision is manual, inconsistent, and invisible.