wcs-renewal-scheduler
Installation
SKILL.md
WooCommerce Subscriptions: renewal scheduler
Use this when code touches renewal timing, scheduled payments, renewal order creation, or retry behavior. The key rule: change subscription dates/status through WC_Subscription methods, not by writing schedule meta or Action Scheduler rows directly.
Misconception this skill corrects
"To reschedule a subscription, update
_schedule_next_paymentor callas_schedule_single_action()."
That bypasses WCS validation and the scheduler's cleanup/reschedule behavior. WCS_Scheduler listens to woocommerce_subscription_date_updated, woocommerce_subscription_date_deleted, and woocommerce_subscription_status_updated. Those fire when you use WC_Subscription::update_dates(), delete_date(), or update_status().
When to use this skill
Trigger when ANY of the following is true:
- The user wants to change
next_payment,trial_end,end,payment_retry, or renewal timing. - Code contains
_schedule_next_payment,_schedule_payment_retry,as_schedule_single_action,woocommerce_scheduled_subscription_payment,WCS_Action_Scheduler,wcs_create_renewal_order, orWCS_Retry_Manager. - A gateway or integration needs to charge recurring payments, create renewal orders, react after a renewal succeeded, or handle failed renewal retries.