Testing Subscription Renewal Payments

Once you have WooCommerce Subscriptions active on your site, you may want to test an automatic subscription renewal payment using your preferred payment gateway. Here we explain how you can manually trigger the “Automatic” payment process, so you won’t have to wait for an entire subscription billing period to see whether or not your payment gateway’s automatic payments are functioning as expected.

Note: If you are using PayPal Standard or WorldPay, which don’t support payment date changes, and have minimum billing period lengths, this process will not work and you must wait until the payment gateway processes the renewal on the subscription product’s set schedule.

Purchase a Test Subscription

↑ Back to top

If you have not already purchased a subscription to test with, purchase a test subscription on your site using the payment gateway you wish to test. After completing the purchase, take note of the ID number assigned to the created subscription.

Trigger the Renewal

↑ Back to top

Now that you have a test subscription, you can trigger the renewal payment.

There are two options to carry this out:

  • The “Process renewal” action in the “Edit Subscription” screen, or;
  • Manually triggering the scheduled action that processes the scheduled subscription payment.

“Process Renewal” Admin Action

↑ Back to top

The “Process Renewal” action is the simplest method to test a renewal payment. You can take this action on the “edit subscription” screen.

When you process a renewal on a subscription using automatic payments, the subscription goes through the entire renewal process, including charging the assigned payment method and emailing the subscriber.

Note: The process renewal option only displays if:

  • The subscription has a status of active
  • The subscription uses a payment method that supports payment date changes

Subscription Payment Scheduled Action

↑ Back to top

A more technical option is to manually run the scheduled action that triggers the subscription payment. To do this:

  1. Visit your site’s administration dashboard.
  2. Go to: Tools > Scheduled Actions.
  3. In the search box, enter the ID of your test subscription.
  4. Find the row with the hook woocommerce_scheduled_subscription_payment and the status pending.
  5. Hover over the row and and click Run

Once you have successfully triggered the renewal payment, and it’s processed correctly with an automatic renewal method, you will see new pending woocommerce_scheduled_subscription_payment action created for the next payment.

Scheduled Actions admin screen pointing to the `woo_scheduled_subscription_payment` hook.

Troubleshooting Issues with Subscription Renewals

↑ Back to top

If there are subscriptions that appear to be active but display a renewal date in the past, it is likely due to a Cron issue on your site. These subscriptions will show a “Subscription payment overdue.” warning notice in the admin’s list view at WooCommerce > Subscriptions.

The warning notice appears when you hover your mouse over a red icon that is displayed in the admin view.
Warning in the admin area of overdue subscription payment.

Follow these steps to troubleshoot the problem:

  1. Verify that WP Cron is enabled. You can do this by accessing the status report in your WordPress admin area under WooCommerce > Status > Tools. If WP Cron is disabled, you will need to enable it.
WordPress cron status within the WooCommerce System Status Report
  1. After confirming cron is enabled try changing the next payment date ( if your payment gateway allows changes ) to one hour from now.
  2. This should trigger a new scheduled action to process a future renewal. If subscription renewals are not processing still, please consult the documentation titled “Complete Guide to Scheduled Events with Subscriptions” to troubleshoot WP Cron issues.

Questions and Support

↑ Back to top

Something missing from this documentation? Do you still have questions and need assistance?

  • Have a question about a specific extension or theme you’d like to purchase? Click here.
  • Already purchased and need some assistance? Get in touch with a Happiness Engineer via the WooCommerce.com Support page and choose this extension name from the “I need help with” dropdown