Order Workflow
A service order moves through five states. The current state is stored per product on the order (payment) meta key edd_order_status_<productid>, so a single order containing several service products tracks each one independently.
The five states
Section titled “The five states”- Waiting For Requirement (
edd_services_waiting_for_requirement). Set the moment a service is purchased. The buyer must submit the requirement form before work starts. - Work In Progress (
edd_services_work_in_progress). Set when the buyer submits requirements, and again on each ordinary conversation message. - Waiting For Approval (
edd_services_waiting_for_approval). Set when the seller submits a final delivery. - Waiting For Review (
edd_services_waiting_for_review). Set when the buyer accepts the final delivery. At this point the payment is marked complete. - Order Complete (
edd_services_order_complete). Set when the buyer submits a review.
What happens at checkout
Section titled “What happens at checkout”When an order containing a service product is inserted, the plugin sets each service line to Waiting For Requirement and records the order meta _is_ess_services_orders as yes. On the purchase receipt hook the payment status is set to processing so the order stays open until the service is delivered and accepted.
If the “Redirect to conversation page” setting is enabled, the buyer is sent to the single order screen right after ordering.
The delivery and approval loop
Section titled “The delivery and approval loop”- The seller sends a final delivery from the conversation box. The order moves to Waiting For Approval and the delivery message id is recorded.
- The buyer accepts. The order moves to Waiting For Review, the payment is set to publish and then completed.
- The buyer rejects. The recorded final delivery is cleared and the order returns to Work In Progress so the seller can deliver again.
Auto complete
Section titled “Auto complete”If the buyer never responds to a delivery, a daily task can auto complete the order. When an order has sat in Waiting For Approval longer than the “Auto complete service order” number of days (measured from the last final delivery message), the plugin records an acceptance and moves the order to Waiting For Review. See Notifications and Emails for the scheduled tasks.
Reminder to fill requirements
Section titled “Reminder to fill requirements”An hourly task emails buyers who purchased a service but have not yet submitted requirements, after the delay chosen in “Send customer notification” (12 or 24 hours). Each order is reminded once.

