Skip to main content
A dispatch strategy is a reusable bundle of rules you attach to a job (delivery) that controls how it’s fulfilled — which providers can take it, how Nash selects one, what it’s allowed to cost, when it dispatches, and how it recovers if a provider falls through. Attach a strategy and Nash applies all of that automatically, instead of you wiring the logic into your own system.
Dispatch strategies are also called options groups in parts of the API and Portal — the two terms refer to the same thing.

When to use this

Reach for a dispatch strategy when:
  • You want Nash to select and dispatch a provider automatically as soon as an order is created.
  • You want to limit a job to a specific set of providers — for example, your own fleet first and third-party providers as backup.
  • You want selection to follow a consistent rule: the cheapest quote, a ranked preference, the most reliable provider, or a real-time balance of all three.
  • You want guardrails on cost, timing, or vehicle type applied the same way every time.
  • You want a job to reassign to another provider — or escalate to a different strategy — automatically if the first attempt stalls.
You don’t need one when you present live quotes and prices to a customer and let them choose at checkout. In that case, dispatch the selected quote manually — though you can still use a strategy to scope which providers appear.

How a job gets a provider

There are three ways a job is matched to a provider:
  1. Attach a strategy directly. Set dispatchStrategyId when you create the order. Nash applies that strategy to the job.
  2. Let an automation choose. Account-level rules map each incoming job to a strategy based on its attributes. This is the recommended path — it keeps the decision logic in the Portal instead of your codebase. See Automations.
  3. Pick a provider by hand. Select a returned quote with the Select quote endpoint. No strategy required.

What a dispatch strategy controls

A strategy is more than a provider filter. A single strategy can set all of the following.

Provider scope

allowedProviders limits the pool of providers a job can use — add or remove any provider enabled for your account, and only those show availability for the delivery. You can also require specific package handling or a minimum vehicle size, so only providers that can actually carry the order are considered.

Provider selection

When Nash auto-dispatches a job, it chooses among the allowed providers using one selection strategy:
StrategyHow Nash selectsBest for
Lowest priceThe cheapest quote among available providersCost-sensitive, non-urgent deliveries
Preferred orderYour priority-ordered list of providers, falling back to the next when one isn’t availablePreferred partnerships and contracted volume
ReliabilityA reliability score computed from completion rate, cancellation rate, and on-time rateProtecting on-time performance
Dynamic DispatchA real-time balance of cost, reliability, and speed, evaluated per deliveryMixed order profiles, or letting Nash optimize each job — see below
You can also distribute volume across providers by configured shares (allocation). Selection strategies are configured in the Nash Portal; the create and update dispatch-strategy API endpoints currently accept lowest_price and preferred_order.

Dynamic Dispatch

Where the other strategies apply one fixed rule, Dynamic Dispatch evaluates every delivery on its own and weighs cost, reliability, and speed together to choose the best provider for that specific job. Because it decides per delivery instead of committing to a single rule, it adapts to a mixed order book — routine drops alongside time-critical, high-value orders — without you maintaining a separate strategy for each. The core of it is a real-time trade-off between cost and reliability. When two providers look similarly reliable for a delivery, Dynamic Dispatch takes the cheaper quote; when a more expensive provider is meaningfully more likely to pick up and arrive on time, it pays for the more reliable option instead. You can tune how far it leans toward reliability versus cost to match your priorities — work with your Nash team to set the balance for your account. It’s a strong default when you want Nash to optimize each delivery automatically rather than committing to one static rule, and it works with failover and reassignment so a job still recovers if the chosen provider falls through.

Cost controls

A strategy can keep spend inside your limits:
  • Maximum delivery fee — never dispatch a job above a fee cap you set.
  • Order and route limits — a minimum order amount, a maximum delivery radius, and a maximum delivery ETA scope which deliveries the strategy will take.
  • Cost split — divide the delivery fee between you and your customer, capping your share as a fixed amount or a percentage.

Dispatch timing

A strategy decides when a job dispatches, not just to whom:
  • On creation — select and dispatch a provider the moment the order is created.
  • Relative to pickup — hold the job and dispatch it a set number of minutes before pickup time.
  • On confirmation — leave auto-dispatch off and trigger the strategy later with the Autodispatch order endpoint, once you’ve confirmed the price or your customer has committed.

Failover and reassignment

A strategy can keep a job moving without manual oversight:
  • Reassign on failure — if the assigned provider cancels or never accepts, Nash fetches fresh quotes from the remaining allowed providers and dispatches the next best option.
  • Reassign on time risk — reassign when a job is running late against creation, pickup, or dropoff time thresholds.
  • Escalate to another strategy — on failure, fall back to a different dispatch strategy entirely — for example, from your own fleet to a third-party pool.
Nash keeps tracking the new attempt after every reassignment.

Auto-dispatch: on or off

Turn auto-dispatch on when:
  • You want a single call to create and dispatch a job — set it and forget it.
  • You offer free or fixed-price delivery and don’t surface dynamic options or prices to your customers.
  • You always want the delivery to happen at the lowest price and would rather not write that logic yourself. Set a maximum fee to cap cost. This is popular with restaurants.
Keep auto-dispatch off when:
  • You let a customer choose their own delivery option, like provider or price, calculated by Nash.
  • You need to know what a delivery will cost before committing — for yourself or to show a customer. This is common in checkout workflows.

Assign strategies automatically

Instead of attaching a dispatchStrategyId to every order, you can let Automations apply the right strategy to each incoming job. An automation is a set of IF / ELIF / ELSE rules: if a job matches a rule’s conditions, Nash applies that rule’s strategy; otherwise it falls back to your default. Rules evaluate job attributes including package value, pickup and dropoff location, item count, driving distance, minutes until pickup, and any tags you set in jobMetadata. For example: jobs over $200 use a white-glove strategy, catering-tagged jobs use a long-range fleet, and everything else uses your default. Automations apply only to jobs that don’t already have a strategy assigned, and are configured in the Nash Portal. See Automations for the full property list and setup.

Set it up

1

Create a strategy

Create a dispatch strategy in the Nash Portal, or with the Create dispatch strategy endpoint. The Portal exposes the full set of selection strategies and controls; the API covers the most common ones.
2

Configure providers, selection, and guardrails

Set the allowed providers and how Nash selects among them, then add any cost caps, dispatch timing, and failover rules you want applied every time.
3

Attach it to jobs

Set dispatchStrategyId on the order when you create it, or let an automation apply the strategy for you.
To attach a strategy directly, set dispatchStrategyId on the order — and autoDispatch if you want Nash to dispatch immediately:
{
  "externalId": "order-1024",
  "dispatchStrategyId": "your-dispatch-strategy-id",
  "autoDispatch": true
}
Send these alongside the rest of the order payload — pickup, dropoff, package, and timing — documented on Create order.

Delivery orchestration

How Nash selects, dispatches, tracks, and recovers deliveries across your provider network.

Dispatch Strategies API

Create, list, and update dispatch strategies through the API.

Automations

Apply strategies dynamically with rule-based automations.

Delivery status

Track a job through its lifecycle after it’s dispatched.