When an order changes driver
Before every assignment attempt, the dispatcher checks whether an order already assigned to one driver should instead go to a different one — but only on driver priority, never on how urgent or important the order itself is.
When a reassignment is allowed
| Situation | Result |
|---|---|
| Order has no driver yet | Assign freely |
| Previously assigned driver is no longer available | Assign freely |
| Same driver being considered again | No change needed |
| New driver has better priority | Reassign |
| Current driver has equal or better priority | Keep as-is |
Priority is defined in Driver classification and priority.
Common scenarios
| Current driver | Candidate driver | Outcome |
|---|---|---|
| External driver | Internal driver | Reassigned — better type |
| Idle, at store | Idle, at store | No change — both equally good |
| Idle, away from store | Idle, at store | Reassigned — better location |
| Waiting, at store | Idle, away from store | No change — current is still better |
| External, away from store | External, away from store | No change — no real improvement |
Passing the priority check is not a delivery guarantee
Passing it only means the dispatcher will attempt the assignment. It still has to verify the new driver can actually deliver on time:
| Driver situation | Delivery time checked? |
|---|---|
| Idle, at store | No — always the fastest possible option |
| Idle, away from store | Yes |
| Waiting (already has orders) | Yes — must be able to deliver everything |
| On The Way | Yes — the full route is recalculated |
If the delivery-time check fails, the assignment is reverted and the order stays available for the next driver in line. It isn't lost.
Rules that never change
- Orders already out for delivery — the driver has left the store — are never reassigned.
- Manually assigned orders, assigned by an employee rather than the dispatcher, are completely locked from automatic reassignment.
- Internal drivers can take an order away from an external driver. The reverse is never allowed.