How To Pause WooCommerce Subscription Renewals


Synopsis

I wrote another free mini-plugin. This one allows a WooCommerce store to pause all WooCommerce Subscription renewals.

Use Cases

There are times when a WooCommerce store needs to temporarily pause all renewals, such as:

  • They need to catch up on a backlog of shipments before allowing more renewals to run
  • Supply chain has slowed down manufacturing, and new inventory won’t be in stock for another week
  • Fulfillment needs to be paused during a holiday

In these scenarios, it would be fairly safe to pause renewals temporarily, and unpause them after a certain period of time.

Details

  • This stops actions with the `woocommerce_scheduled_subscription_payment` and `woocommerce_scheduled_subscription_payment_retry` hooks from being claimed by action scheduler, effectively pausing them.
  • As soon as they are unpaused, any past-due actions will start to run.
  • This does not pause any other actions.
  • This doesn’t work for the old PayPal Standard subscriptions or the WC Pay subscriptions that aren’t associated with the WooCommerce Subscriptions plugin; it only works with subscriptions managed by WooCommerce Subscriptions.

Download

https://github.com/NickGreen/pause-renewal-actions

Click the green ‘code’ button, and the ‘Download Zip’ link. You can then upload that zip file to your WordPress site. Go to Tools > Pause Renewal Actions and toggle the option there to pause renewals.

Disclaimer

This plugin is provided with no support or guarantees. Testing/development is done for this, but I’d still recommend doing a quick test on a development site before loading on production, to be sure there aren’t any issues with a specific site. If you have an issue or suggestion, please submit an issue or PR in the repository on GitHub. Thanks for being part of the WordPress community!