Skip to main content
Version: 1.0.0

Order Status Flow

status flow

Order status (status)

StatusSub StatusDescriptionIs end status
IDLEScheduled order confirmed, the supplier will see the order in driver app by the time specified
ASSIGNINGFinding a supplier
ACCEPTEDBOARDEDOnce supplier accepts the order, the order status will be changed to ACCEPTED
IN PROCESSCOMPLETINGWhen the supplier collects the package at the pickup location, he will click “Pick up” and the order status will be changed to IN PROCESS
COMPLETEDIN_RETURN
RETURNED
When the supplier completes the order, the order status will be changed to COMPLETED (It does not mean the package is delivered. Check the delivery status description below)Yes
CANCELLED- If the supplier cancels the order, the order status will be changed to CANCELLED, cancel_by_user is set to False
- If the user cancels the order, the order status will be changed to CANCELLED, cancel_by_user is set to True
- If there is no suppliers accepting order after a certain period of time (depending on service type), the order status will be changed to CANCELLED, cancel_by_user is set to False, and cancel_comment is set to “Auto cancel, no driver accepted”
Yes

Delivery Status (path[i].status (i>0))

  • COMPLETED: When the supplier gives the order to recipient and completes payment, he will choose Complete and the according stop point status will be changed to COMPLETED.
  • FAILED: When the supplier arrives at the recipient point, but the recipient does not show up or due to various reasons, he will choose Fail and the according stop point status will be changed to FAILED

    Check the list of failed and cancelled reason in Fail/Cancel Comment

Sub Status (sub_status)

  • BOARDED: When the supplier is close to the pickup location, our system will rely on the supplier's app location and will return sub_status BOARDED
  • COMPLETING: When the supplier is close to the drop-off location, our system will rely on the supplier's app location and will return sub_status COMPLETING
  • IN_RETURN: After the supplier confirms the failed delivery and start to return the failed package to the sender , our system will return sub_status IN_RETURN
  • RETURNED: When the supplier returned the failed package to the sender successfully, our system will set sub_status of the order to RETURNED

(*) Rebroadcast

When the supplier cancels the order which has been accepted, our system will run a rebroadcast process. When this happens, the order status will revert from ACCEPTED to ASSIGNING to find another supplier. If an order has been cancelled for the [x] times in rebroadcast duration or broadcast timeout, the order status will change to CANCELLED

Depending on the type of service, the rebroadcast duration and the [x] times of each service will be different

Order timeline

order timeline

Order timelime status

orderorder.pathDescriptionOrder Status
create_timeWhen User create orderIDLE or ASSIGNING
order_timeWhen order appear on supplier’s app
- If user create an instant delivery order then order_time = create_time
- If user create a scheduled order then order_time > create_time
ASSIGNING
accept_timeWhen supplier accepts the orderACCEPTED
board_timeWhen supplier is close to the pickup locationACCEPTED
cancel_time
(exceed the [x] times)
When supplier cancels order after accepting, rebroadcast process will start and when the number of cancellation > [x] timesCANCELLED
cancel_time
(auto cancel)
When no suppliers accepted order until the broadcast timeout in rebroadcast processCANCELLED
pickup_timeWhen supplier submits collect package at pickup locationIN PROCESS
complete_time
(path[i],i>0)
When supplier confirm successfully deliveryCOMPLETED
(path_status)
fail_time
(path[i],i>0)
When supplier confirm failed deliveryFAILED
(path_status)
complete_timeAs soon as supplier done all confirm (both successful or failed delivery)COMPLETED
return_timeWhen supplier return the package to pickup location in case failed deliveryRETURNED
(order.sub_status)