Skip to main content

Routes

Admin

Routes let you group multiple delivery orders into an organized sequence for a driver to complete in a single trip. Rather than dispatching orders one at a time, you batch them into a route, assign a driver, and send the route to the driver's mobile device.

Delivery Routes

Feature flag required

Routes require Enable Local Delivery to be enabled in your store settings.


How Routes Work

  1. Delivery orders come in and land in the Unrouted Orders queue.
  2. An admin or manager creates a route and adds orders to it.
  3. A driver is assigned to the route.
  4. The driver receives the route on their mobile PWA.
  5. The driver completes deliveries in sequence, marking each one as delivered.
  6. The route is marked as complete when all orders are delivered.

Accessing Routes

  1. Log in to the Admin Panel.
  2. Navigate to /admin/delivery_routes (this page is accessible by direct URL when local delivery is enabled).
  3. The routes page loads showing existing routes and controls for creating new ones.

Viewing Active Routes

The active routes list shows all routes that are currently in progress or pending departure:

ColumnDescription
Route IDAuto-generated identifier.
DriverThe assigned driver (driver is required at creation — routes cannot be unassigned).
OrdersNumber of orders in the route.
StatusPending, In Progress, or Completed.
CreatedWhen the route was created.
Estimated TimeEstimated total delivery time.

Creating a New Route

Step 1: Review Unrouted Orders

  1. On the Routes page, click the Unrouted Orders tab.
  2. Review the pending delivery orders. Each order shows:
    • Customer name and address
    • Postal code and delivery zone
    • Order total
    • Time the order was placed

Step 2: Create the Route

  1. Click New Route.
  2. Fill in the route details:
    • Driver -- Select a driver from the dropdown (requireddriver_id is non-nullable, so you must assign a driver at creation time). Only users with the Driver role appear.
    • Delivery Date -- The date for this route (required).
    • Time Slot -- The time window for deliveries (morning, afternoon, evening, or all day).
    • Notes -- Optional notes about the route.
  3. Add delivery orders to the route.
  4. Click Save.
  5. The route status is set to Pending.
  6. The assigned driver receives the route on their mobile device.
Zone-based grouping

Select orders from the same delivery zone to create efficient routes. Mixing orders from distant zones increases drive time and fuel costs.


Managing an Active Route

Viewing Route Details

Click a route in the active routes list to see:

  • All orders in the route with delivery sequence.
  • Driver information and contact details.
  • Status of each individual delivery (Pending, In Transit, Delivered).

Adding Orders to an Existing Route

  1. Open the route.
  2. Click Add Orders.
  3. Select from the unrouted orders queue.
  4. Position the new orders in the sequence.
  5. Save.

Removing Orders from a Route

  1. Open the route.
  2. Click the remove icon next to the order you want to remove.
  3. Confirm. The order returns to the unrouted queue.

Route Statuses

StatusMeaning
PendingRoute is created but the driver has not started. Editable.
In ProgressDriver has started the route. Deliveries are being made.
CompletedAll deliveries in the route are marked as delivered.
CancelledRoute was cancelled. See note below about cancel behavior.

Reassigning a Driver

If a driver becomes unavailable:

  1. Open the route.
  2. Click Change Driver.
  3. Select a different driver.
  4. The new driver receives the route on their mobile device.
  5. The original driver's route is cleared.

Completing a Route

Routes are completed automatically when the driver marks the last delivery as delivered on their mobile device. You can also manually complete a route:

  1. Open the route.
  2. Click Mark Complete.
  3. Confirm that all deliveries have been made.

Cancelling vs. Destroying a Route

There is an important distinction between cancelling and destroying (deleting) a route:

  • Cancel -- Updates the route status to Cancelled but does NOT return orders to the unrouted queue. Use cancel when orders should not be re-dispatched.
  • Destroy (Delete) -- Deletes the route and unassigns orders back to the unrouted queue. Use destroy when you want to re-route the orders to a different driver or route.

Route History

To view completed and cancelled routes:

  1. On the Routes page, click the History tab.
  2. Filter by date range, driver, or status.
  3. Click a route to view its full details, including delivery timestamps.

Best Practices

  • Batch by zone -- Group orders from the same delivery zone for efficient routing.
  • Limit route size -- Keep routes to 5-8 orders to maintain delivery time estimates. Large routes lead to long wait times for later customers.
  • Assign early -- Assign drivers as soon as routes are ready so they can prepare.
  • Monitor in real time -- Check the active routes view periodically to identify bottlenecks or delays.
  • Review completed routes -- Use route history to identify patterns and improve future routing.
  • Communicate delays -- If a route is running behind, contact affected customers proactively.

What's Next?