Skip to content

Order Statuses

Every service order follows a defined status flow from purchase to completion. Understanding these statuses helps vendors and customers track progress.

Purchase
└→ Waiting For Requirement
└→ Work In Progress
└→ Waiting For Approval
├→ Waiting For Review (delivery accepted) → Order Complete (review submitted)
└→ Work In Progress (delivery rejected, loop back)
Status Internal Key Who Acts What Happens
Waiting For Requirement wbcom_wss_waiting_for_requirement Customer Customer must fill out the requirement form
Work In Progress wbcom_wss_work_in_progress Vendor Vendor is working on the service
Waiting For Approval wbcom_wss_waiting_for_approval Customer Vendor submitted a delivery, customer reviews it
Waiting For Review wbcom_wss_waiting_for_review Both Delivery accepted, review period open
Order Complete wbcom_wss_order_complete Review submitted, order fully complete
Order Delayed wbcom_wss_order_delay Informational status when delivery date has passed

These are the 6 statuses registered by the plugin. The “Order Delayed” status is registered but used as an informational indicator — the is_wss_delayed_order() helper checks if the expected delivery date has passed.

From To Trigger
(new order) Waiting For Requirement Customer purchases a service product
Waiting For Requirement Work In Progress Customer submits the requirement form
Work In Progress Waiting For Approval Vendor submits a final delivery
Waiting For Approval Waiting For Review Customer accepts the delivery
Waiting For Approval Work In Progress Customer rejects the delivery
Waiting For Review Order Complete Either party submits a review

When a customer accepts a delivery, the WooCommerce order-level status is also set to completed.

If configured in settings, orders automatically move to Waiting For Review a set number of days after the vendor submits the final delivery. This prevents orders from staying in Waiting For Approval indefinitely when a customer does not respond.

Configure this at WP Admin > Woo Sell Services > General Settings > Auto Complete After Final Delivery.

Each status transition can trigger:

  • Email notifications — sent to the relevant party (vendor or customer)
  • Live notifications — displayed in the My Account notifications tab
  • Webhooks — sent to configured external URLs

Customers see their service orders at My Account > Service Orders.

Vendors see orders in their respective dashboards:

  • WP Admin > WooCommerce > Orders (single vendor / admin)
  • Dokan Dashboard > Orders
  • WCFM Dashboard > Orders
  • WC Vendors Dashboard > Orders

Admins can view and change order statuses from the WooCommerce order edit screen using the service status meta box.

When a customer submits requirements, the plugin calculates an estimated delivery date based on the product’s estimate time setting. This date is stored as order item meta and can be updated by the vendor via the delivery date update feature. The is_wss_delayed_order() function compares the current date against this estimated date.