Courier Route
Planner
A route-planning and live-tracking module that runs inside WooCommerce — no more copying orders into a separate routing app. Couriers get one focused screen, customers get live updates, managers see every courier on the map.
Couriers had to plan their day in a separate routing tool and re-enter every order’s address and details manually — slow, error-prone, and invisible to the store and its customers.
Orders flow straight into an optimised route with traffic-aware ETAs. Every stop updates the order in real time, customers stay informed, and managers can follow each courier live.
Three people, one source of truth.
Logs in with the Courier role and sees only the Courier Route page. The admin bar is hidden, and every other admin page redirects back here.
Follows each courier’s live location and saved route from the Courier Tracking page.
Sees the order’s status change as the courier moves — planned, out for delivery, delivered — and gets WooCommerce’s completed-order email automatically.
Every button on the screen, in the order a day runs.
Pulls the newest 200 orders in Processing, Postponed or Planned status whose shipping address falls in that side’s districts. The list always starts at the Depot, taken from the depot address in settings.
Asks for a departure date and time. Route optimisation reorders the stops — start at the depot, end at the last stop, no return — then traffic-aware drive times give every stop an ETA.
Keeps the order as it is, sets the date and time and calculates ETAs. Every order moves to “Planned” and its ETA is saved on the order.
Pressed when the courier leaves. ETAs are recalculated with live traffic and every order becomes “Out for Delivery”.
Reorder or remove stops by hand. On save, ETAs are recalculated from the courier’s current location.
Clears the list and the route on the map.
On screen, “Bakırköy - Eyüpsultan - Sarıyer” lists the districts on the route, “Ends 13:49 · 11 stops” is the ETA at the last stop and the stop count, and every stop shows its own ETA.
Real traffic, plus time at the door.
Drive times are based on real-time traffic data.
Added for every delivery to cover time at the door.
Used when a leg’s drive time can’t be fetched.
Couriers tap one status; WooCommerce stays in sync.
Every change is logged on the order as “Courier status update: …”. When an order turns Completed, WooCommerce’s order-completed email to the customer is triggered too (if enabled).
Tap a stop to open it.
Customer details with a tap-to-call phone link.
Courier note.
Update coordinates — saves the courier’s current location as the address coordinate. Points outside Istanbul are rejected.
Every courier, on one map.
While the courier page is open, the phone’s location is watched continuously and saved to the server every 2 minutes.
On Courier Tracking, the admin picks couriers and hits “Show”: last position, saved route, stops, ETAs and statuses appear on the map, refreshing on their own.