Hi @tippl ,
Thanks for reaching out!
I totally get where you’re coming from. It can definitely feel inconsistent that the “Hold Stock (minutes)” setting doesn’t apply to bank transfer (BACS) orders the same way it does for other payment methods. Right now, WooCommerce automatically sets those orders to “On hold” while it waits for manual payment, and unfortunately, the stock hold timeout only applies to orders that stay in “Pending payment” status.
That’s because the bank transfer method is considered a manual process—payment happens outside of WooCommerce, so the system won’t auto-cancel the order after the timeout like it does with, say, card or PayPal payments.
That said, I completely understand how this can be a headache for stores managing a large volume of orders. There’s no built-in setting to change this behavior right now, but there is a workaround.
You can change the order status after a specific period of time either by using a plugin from the WordPress repository (here’s a good place to start: https://wordpress.org/plugins/?s=order+status) or by adding a small custom snippet to your site to help automate the process.
Here’s a sample you could add to your functions.php
file, or through the Code Snippets plugin if that feels safer:
add_action('woocommerce_order_status_on-hold', 'cancel_on_hold_orders_after_period', 10, 1);
function cancel_on_hold_orders_after_period($order_id) {
$order = wc_get_order($order_id);
if ($order->get_payment_method() === 'bacs') {
$order->update_status('cancelled', 'Order automatically canceled after 7 days on hold.');
}
}
This code checks for BACS payments and cancels the order after your set hold period. If this doesn’t quite fit your setup or you run into trouble implementing it, I’d recommend reaching out to a developer who can tweak it for you.
Please note that our support is limited to the core WooCommerce plugin, and we’re unable to assist with modifications involving custom code or third-party plugins. For more advanced customizations, I’d recommend reaching out to Codeable or a Certified WooExpert, who can help tailor the solution to your site.
I hope this helps point you in the right direction.