Overview
Introduction
Every package in MotionTools progresses through different statuses during its lifecycle. It’s critical to understand the meaning of each status, as available actions and features, as well as the visibility, are directly related to or restricted by its status.
A package doesn’t necessarily go through all available statuses. Some statuses may be skipped during transitions.
Statuses Overview
This is a short overview of all available statuses. Continue with the next section for more detailed explanations and available status transitions.
Status | Short Description |
Created | Package created |
Awaiting pickup | Package scheduled for pickup |
In transit | Package picked up by driver and in transit to hub |
At hub | Package delivered to hub or created directly 'At hub' |
Scheduled for delivery | Package scheduled for drop-off |
Out for delivery | Package picked up by driver and in transit to destination |
Delivered | Package dropped off at destination |
Ready for collection | Package collection from Hub was requested by customer |
Collected | Package collected from Hub by customer |
At customs | Package processed at customs |
Cancelled | Package delivery cancelled |
Failed | Package couldn't be picked up or dropped off |
Statuses in detail
If you are developing integration with MotionTools, note that the status names shown on the Dashboard may slightly differ from the names used in the API. To receive notifications for every status change, you can subscribe to the corresponding webhook event.
Created
created
A package was created with a customer’s Place as origin.
Available transitions | Transition name on API | Trigger |
Created |
| Package was scheduled for pickup |
Created |
| A Dispatcher/Admin relocated the package to a hub |
Created |
| A pickup or drop-off attempt failed right after creation (edge case) |
Created |
| Admin cancelled the package |
Awaiting pickup
awaiting_pickup
A package was scheduled for pickup
Available transitions | Transition name on API | Trigger |
Awaiting pickup |
| A driver picked up the package |
Awaiting pickup |
| A driver picked up the package |
Awaiting pickup |
| The tour was cancelled/force-ended or the package was removed from the tour after it had already reached a hub |
Awaiting pickup |
| The tour was cancelled/force-ended or the package was removed from the tour before pickup happened (package returns to initial state) |
Awaiting pickup |
| A pickup attempt failed (e.g., driver couldn’t pick up the package) |
In transit
in_transit
A package was picked up by a driver and is in transit to a hub now.
Available transitions | Transition name on API | Trigger |
In transit |
| The driver dropped off the package at the origin again (e.g., pickup was reverted) |
In transit |
| The driver dropped off the package at the hub (or the tour was force-ended after reaching the hub) |
In transit |
| The tour was force-ended and the package was marked as delivered |
In transit |
| A pickup/drop-off attempt failed or the tour was cancelled while the package was in transit |
At hub
at_hub
A package was delivered to a hub or was created directly 'At hub' by mentioning an admin’s Place.
Available transitions | Transition name on API | Trigger |
At hub |
| The package was relocated to another hub, or a tour was cancelled/force-ended while the package remained at a hub |
At hub |
| Package was scheduled for pickup from the hub |
At hub |
| Package was scheduled for drop-off |
At hub |
| A customer requested to collect the package from the hub |
At hub |
| A hub handover/pickup attempt failed |
At hub |
| A package delivery was cancelled |
At hub |
| A Dispatcher/Admin force-delivered the package (marked delivered manually) |
Scheduled for delivery
scheduled_for_delivery
A package was scheduled for drop-off.
Available transitions | Transition name on API | Trigger |
Scheduled for delivery → Out for delivery |
| A driver picked up the package at the hub to start the delivery tour |
Scheduled for delivery → Ready for collection |
| A customer requested hub collection instead of delivery |
Scheduled for delivery → At hub |
| The delivery tour was cancelled or the package was removed from the tour (package stays at the hub) |
Scheduled for delivery → Delivered |
| The delivery tour was force-ended and the package was marked as delivered |
Scheduled for delivery → Failed |
| A delivery attempt failed (e.g., driver couldn’t hand over the package) |
Out for delivery
out_for_delivery
A package was picked up by a driver and is in transit to the destination now.
Available transitions | Transition name on API | Trigger |
Out for delivery |
| The driver dropped off the package at the destination (or the tour was force-ended after drop-off) |
Out for delivery |
| A delivery attempt failed or the tour was cancelled while delivering |
Delivered
delivered
A package was dropped off at the destination.
Available transitions | Transition name on API | Trigger |
Delivered → Delivered |
| The tour was cancelled/force-ended after delivery (package remains delivered) |
Ready for collection
ready_for_collection
A package collection from a Hub was requested by a customer.
Available transitions | Transition name on API | Trigger |
Ready for collection |
| A collection-related tour assignment was removed (package remains ready for collection) |
Ready for collection |
| The package was relocated to another hub |
Ready for collection |
| The customer collected the package from the hub |
Ready for collection |
| The collection request was cancelled |
Ready for collection |
| A collection attempt failed (e.g., package couldn’t be handed over) |
Collected
collected
A package was collected from a Hub by a customer
Available transitions | Transition name on API | Trigger |
Collected |
| A post-collection issue was reported and the collection failed (edge case) |
At customs
at_customs
A package was announced to customs, and the clearance process started. You can find the customs-specific statuses in the Status model of Packages in customs article.
Available transitions | Transition name on API | Trigger |
At customs |
| The package was relocated while remaining in customs processing |
At customs |
| Customs clearance was approved (package released back to hub) |
At customs |
| Customs clearance failed or the package couldn’t be processed at customs |
Cancelled
cancelled
A package delivery was cancelled.
Available transitions | Transition name on API | Trigger |
Cancelled |
| A related tour was cancelled/force-ended after the package was already cancelled |
Failed
failed
A package couldn't be picked up or dropped off.
Available transitions | Transition name on API | Trigger |
Failed |
| A retry failed again, or the related tour was cancelled/force-ended while the package was already failed |
Failed |
| A Dispatcher/Admin cancelled the package after it had failed |
Failed |
| A Dispatcher/Admin force-delivered the package (marked delivered manually) |
Failed |
| A Dispatcher/Admin recovered the package back to its initial state |
Failed |
| A Dispatcher/Admin recovered the package back to a hub state |
