WooCommerce Subscriptions Integration: Triggers, Actions, and Automation Examples
Krom Automation Pro connects to WooCommerce Subscriptions, the official subscription add-on for WooCommerce. It gives you nine triggers covering every meaningful subscription lifecycle event — from creation and renewal through cancellation, expiry, payment failures, and trial endings — plus two actions for managing subscription status programmatically.
No API key or configuration is required. Krom Automation detects WooCommerce Subscriptions automatically when the plugin is active.
Requirements #
- Krom Automation Pro installed and activated
- WooCommerce installed and active
- WooCommerce Subscriptions installed and active
Available triggers #
Subscription Created
Fires when a new WooCommerce Subscription is created at checkout. This fires when the customer completes the purchase that sets up the subscription, not on each renewal.
| Data field | Description |
|---|---|
subscription_id | The subscription ID |
status | Subscription status at creation (usually active or pending) |
product_name | Name of the subscription product |
recurring_amount | The recurring charge amount |
billing_period | Billing period (month, year, etc.) |
start_date | Subscription start date |
customer_email | Customer email address |
Common use: Sending a welcome email the moment a subscription starts, adding the customer to a subscriber-specific Mailchimp audience, or posting a new subscriber notification to Slack.
Subscription Renewed
Fires when a subscription renewal payment completes successfully.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
renewal_order_id | The order ID of this specific renewal |
product_name | Subscription product name |
amount | Amount charged for this renewal |
customer_email | Customer email address |
Common use: Sending a renewal receipt to the customer, logging renewals to Google Sheets for revenue tracking, or notifying the team of successful recurring revenue.
Subscription Cancelled
Fires when a subscription status changes to cancelled. This fires whether the cancellation was requested by the customer or triggered administratively.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
product_name | Subscription product name |
customer_email | Customer email address |
cancel_date | Date of cancellation |
Common use: Triggering a win-back campaign immediately after cancellation, notifying the customer success team, or removing the customer from an active-subscribers email list.
Subscription Expired
Fires when a subscription reaches its end date and expires naturally. This is distinct from cancellation — expiry happens when the subscription’s scheduled end date arrives.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
product_name | Subscription product name |
customer_email | Customer email address |
expiry_date | The date the subscription expired |
Common use: Sending a renewal offer to the customer after expiry, removing access to subscriber-only content, or logging expired subscriptions for churn reporting.
Subscription On Hold
Fires when a subscription is paused and moved to on-hold status. This typically happens after a failed payment when WooCommerce Subscriptions sets the subscription to on-hold while awaiting retry.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
product_name | Subscription product name |
customer_email | Customer email address |
Common use: Notifying the customer that their subscription has been paused, alerting the team to follow up, or starting a dunning sequence if the hold was caused by a payment failure.
Subscription Reactivated
Fires when a subscription returns to active status from on-hold or cancelled.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
product_name | Subscription product name |
customer_email | Customer email address |
Common use: Sending a re-activation welcome back email, notifying the team that a previously cancelled customer has returned, or re-adding the customer to an active-subscriber audience in your email marketing platform.
Subscription Payment Failed
Fires when a scheduled subscription renewal payment fails. This is one of the most important triggers for subscription businesses — catching payment failures quickly and recovering them is directly tied to revenue retention.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
product_name | Subscription product name |
customer_email | Customer email address |
amount | The amount that failed to charge |
Common use: Triggering a multi-step dunning sequence — an immediate payment failure email, a follow-up 2 days later, and a final notice 5 days later before cancellation.
Subscription Trial Ending
Fires when a subscription trial period ends. Use this to contact customers before their trial converts to a paid subscription, giving them a chance to review their plan or take action.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
product_name | Subscription product name |
customer_email | Customer email address |
trial_end_date | The date the trial period ends |
Common use: Sending a “your trial is ending soon” reminder email a few days before the trial converts, prompting the customer to update payment details or upgrade to a higher plan.
Subscription Status Changed
Fires on any subscription status transition. This is the broadest subscription trigger — it catches every status change across all subscriptions. Use conditions on old_status and new_status to target specific transitions.
| Data field | Description |
|---|---|
subscription_id | Subscription ID |
old_status | Status before the change |
new_status | Status after the change |
customer_email | Customer email address |
Common use: When you need to respond to a specific transition that doesn’t have a dedicated trigger — for example, acting when a subscription moves from on-hold back to pending rather than directly to active.
Available actions #
Cancel WCS Subscription
Cancels a WooCommerce Subscription. By default, this sets the subscription to pending-cancel, which means the customer retains access until the current billing period ends. Set the immediate flag to cancel instantly.
| Field | Description |
|---|---|
subscription_id | The subscription ID to cancel. Use {{subscription_id}} from the trigger. |
immediate | Toggle. When enabled, cancels the subscription immediately rather than at the end of the billing period. |
Common use: Automatically cancelling a subscription after a set number of failed payment retries, or cancelling programmatically based on a condition such as a membership status change.
Change WCS Subscription Status
Sets a WooCommerce Subscription to any valid status without going through the cancellation flow.
| Field | Description |
|---|---|
subscription_id | The subscription ID. Use {{subscription_id}} from the trigger. |
new_status | The target status: active, on-hold, cancelled, pending-cancel, expired, or pending. |
Common use: Reactivating an on-hold subscription programmatically after a payment issue is resolved, or pausing a subscription based on an external event received via webhook.
Setting up a WooCommerce Subscriptions workflow #
- Go to Krom Automation > Workflows and click Add New Workflow.
- Click Add Trigger and select the relevant subscription trigger from the WooCommerce Subscriptions category.
- For the Subscription Status Changed trigger, add a Condition node with
old_statusandnew_statusto target the specific transition you want. - Add your actions. Use
{{subscription_id}},{{customer_email}},{{product_name}}, and{{recurring_amount}}as merge tags. - Simulate and activate.
Screenshot: Subscription Payment Failed trigger on the canvas with a Send Email action and a delay node for a follow-up dunning email.
Screenshot: Subscription Cancelled trigger connected to a Mailchimp Remove Tag action and a Send Email win-back action.
Real-world automation examples #
New subscription welcome email Trigger: Subscription Created Action: Send Email to {{customer_email}} with a welcome message, subscription details using {{product_name}} and {{recurring_amount}}, and links to getting started resources.
Multi-step payment failure dunning sequence Trigger: Subscription Payment Failed Action 1: Send Email (immediate) — payment failure notice with retry instructions Action 2: (2-day delay) Send Email — second notice with direct link to update payment method Action 3: (5-day delay) Send Email — final notice before subscription is placed on hold
Win-back campaign on cancellation Trigger: Subscription Cancelled Action 1: Send Email — acknowledge cancellation and offer a return discount Action 2 (7-day delay): Send Email — follow-up with a special reactivation offer Action 3: Mailchimp Remove Tag (active subscriber) and Add Tag (churned)
Trial ending reminder Trigger: Subscription Trial Ending Action: Send Email to {{customer_email}} 3 days before {{trial_end_date}} reminding them the trial converts soon and highlighting the subscription benefits.
Renewal receipt Trigger: Subscription Renewed Action: Send Email to {{customer_email}} with a renewal confirmation showing {{product_name}}, {{amount}}, and {{renewal_order_id}}.
Sync cancellations to FluentCRM Trigger: Subscription Cancelled Action 1: FluentCRM Remove Tags from Contact (active subscriber tag) Action 2: FluentCRM Add Tags to Contact (cancelled subscriber tag)
Pre-built templates #
Install these from Krom Automation > Templates:
| Template | What it does |
|---|---|
wcs-new-subscription-welcome | Welcome email when a new WooCommerce Subscription starts |
wcs-payment-failed-dunning | Multi-step dunning sequence for failed subscription payments |
wcs-subscription-cancelled-winback | Win-back campaign after subscription cancellation |
wcs-subscription-renewed-receipt | Renewal confirmation email on successful renewal |
wcs-trial-ending-reminder | Reminder email as a subscription trial approaches end |
Troubleshooting on WooCommerce subscriptions integration #
WooCommerce Subscriptions triggers aren’t appearing
Confirm WooCommerce Subscriptions is installed and active, not just WooCommerce. The subscription triggers only appear when both plugins are present and active.
Subscription Payment Failed is firing, but I also see Subscription On Hold firing
This is expected behaviour. When a payment fails, WooCommerce Subscriptions puts the subscription on hold. Both triggers fire. If you only want to respond to the payment failure specifically, use the Subscription Payment Failed trigger. If you want to respond to the hold regardless of its cause, use Subscription On Hold.
The Cancel WCS Subscription action isn’t cancelling immediately
By default the action sets the subscription to pending-cancel, which delays cancellation to the end of the billing period. Enable the immediate toggle if you need instant cancellation.