Cancel "on hold" orders after a certain number of days or by hours
WooCommerce Cancel Abandoned Order allows you to add a small option that will take care of dealing with "abandoned" commands.
If you have check or transfer type orders for example, you will be able to set a maximum number of days or by hours to receive the payment.
WooCommerce Cancel Abandoned Order, will take care of checking this and change the status of the order to "Cancel" if you have not received payment on time.
This section describes how to install the plugin and get it working.
- Upload the plugin files to the
/wp-content/plugins/woo-cancel-abandoned-order
directory, or install the plugin through the WordPress plugins screen directly. - Activate the plugin through the 'Plugins' screen in WordPress
- By default you can control the orders on the payment gateways: Check and BACS. Go to the options of the payment pages on WooCommerce.
To add another payment gateway, simply use the woo_cao_gateways filters, more information on the Wiki
- PHP minimal: 7.0
- WordPress minimal: 4.0
- WooCommerce minimal : 2.2
Action
- woo_cao_cancel_order ($order_id) : After cancel order.
Filters
- woo_cao_gateways : Adds a payment gateway for the control.
- woo_cao_before_cancel_order : Before canceling the order, send the order_id and the WC_Order if you do not want to cancel this order. Expect an exact return of true.
- woo_cao_message_cancel_order : Allows you to modify the note when canceling the order. Handy if you use the 'woo_cao_before_cancel_order' filter.
- woo_cao_date_order ($old_date, $gateway, $mode) : Change the calculation date for pending orders.
- woo_cao_default_hours : Default value of the number of hours for order processing.
- woo_cao_default_days : Default value of the number of days for order processing.
- woo_cao_statustocancel ($status) : Allows you to add or change which WooCommerce order status the plugin should cancel.
Yes we have started the migration to Action Scheduler (recurring action) since version 1.9.0
Depending on the options defined in the payment gateway options page, the system will cancel orders whose payments have not been received.
You can cancel orders in hours or days. For example, if I put the mode "Hourly", I can cancel orders pending after 2 hours. Another example, in mode "Daily", I can cancel orders that I have not received payment within 7 days.
The execution of the cleaning is done like this: Mode "hourly": every hour to 00 minutes Mode "Daily": every day at 0:00
Since version 1.9.0, the action is no longer executed at XXh00. Refer to the "Scheduled Actions" tab of the "Status" page of WooCommerce.
Follow the tutorial here to change the status of orders to cancel. By default the "wc-on-hold" commands are canceled.