Processing orders are automatically sent as soon as payment has been successful. I’m not sure of a way to stop that.
You can mark an order as ‘completed’ when you’ve shipped it, which will send a shipment email to the customer. You can customise the wording of these emails.
If emails aren’t being received, try the Mandrill plugin. We use this because no emails from WC were being received, but this quickly and easily fixed the problem.
Hi, michfm. When an order is placed what is its first status? Is it ‘on-hold’? Is it ‘pending’?
By default, WooCommerce only sends the processing order e-mail, automatically, in two situations:
When the order status goes from ‘pending’ to ‘processing’ and ‘pending’ to ‘on-hold’.
That means if you want to send an e-mail, automatically, when the order goes from ‘on-hold’ to ‘processing’ you will have to do some coding or install a plugin that does that.
The code below did not work for you?
/**
* Disable action that sends e-mail to customer warning that his/her order is processing,
* as this is not true, because when the status changes from pending to on-hold,
* the order is not processing yet.
*
* @return void
*/
function woocommerce_email_sending($email_class){
remove_action('woocommerce_order_status_pending_to_on-hold_notification', array($email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger'));
add_action('woocommerce_order_status_on-hold_to_processing_notification', array($email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger'));
}
add_action('woocommerce_email', 'woocommerce_email_sending');
Thread Starter
michfm
(@michfm)
Hi, Filipe. Thank you for your response! The first status when someone placed an order is on-hold, but WooCommerce sends out an email that their order is processing even though I haven’t processed it yet. The code you provided works! The complete order email is also working now. Thanks for your help! 🙂