I’m using https://woocommerce.com/products/woocommerce-subscriptions/ plugin.
I have 2 virtual simple subscription products setup with the following names and info:
Silver pass
3 months trial for $10.00 signup fee, then $5.00 a monthGold pass
12 months trial for $30.00 signup fee, then $5.00 a month
The trial period and signup fees are only available and charged once. Meaning:
Resubscribe case:
If a user cancels the subscription and then resubscribes, they won’t be able to use the trial period again, they won’t be charged the signup fee again and will be charged $5.00 per month straight away.
Auto-renewal case:
Also, when the initial subscription finishes (after 3 or 12 months) and an auto-renewal is generated, the user is charged $5.00 per month.
That’s all well and good and works out of the box. However, the issue here, is that I only would like to have the Silver pass/Gold pass
product name in a subscription for the initial subscription only.
I’ve noticed for the auto-renewals and resubscriptions, all the products are copied over i.e. it also says Silver pass/Gold pass
. Actually, after the initial subscription, business-wise it’s just a Premium pass
for $5.00 a month, there is no difference in subscriptions after the trial period is over. The only difference between the Silver pass/Gold pass
subscriptions is in the trial period length and signup fee.
I’d like any subsequent subscriptions (after the initial one) to use the Premium pass
product name everywhere in the system, email, checkout form, etc.
I have created another virtual simple subscription product with the following name and info:
Premium pass
0 months trial for $0 signup fee, $5.00 a month
The question is: when after the initial subscription (i.e. the Silver pass/Gold pass
with a different trial and signup fee) is being resubscribed to or being auto-renewed what is the best approach to change the subscription so that the product in it is a Premium pass
instead of original Silver pass/Gold pass
product?
-
Can I remove the line item in a subscription before the checkout process for such cases?
-
Do I need to cancel/switch subscriptions programmatically somehow?
I feel that "switching subscriptions" might be a good approach but can’t quite figure it out. I’ve added all products to the group, so the switch functionality works.
I also would like a button clicking which goes directly to checkout and have all new switch subscription info already in the cart.
I hope it makes sense what I’m trying to achieve.
I’m a bit lost in figuring out the correct approach for this and the action where best to hook into. I’d appreciate any help with this 🙂
Thank you.
2
Answers
could you use a Variable Subscription? It does sound like you ultimately have 1 subscription product
Premium Pass
but two different onboarding pathsGold and Silver
which eventually turn into aPremium pass
subscription.Full disclosure: I’ve not used WooCommerce Subscriptions in 8 years, but Variable Subscription sounds like the out of the box solution and you could maybe call the variations
Gold
andSilver
respectively.:fingers_crossed:
As Tarei mentioned, variable subscription may fit but you must code a bit:
Pass
with three variations:Gold pass
,Silver pass
andPremium pass
Premium pass
cannot be purchasable from the store, so it must not be avaliable as a variation for users. This requirement must probably be achieved by coding.Switch subscription
changes the subscription order item line with the selected variation so the renewal proccess takes that variation (you can take a look toWC_Subscriptions_Switcher::subscription_switch_handler
to find more details).In my case, I’m trying to figure out how to allow users to resubscribe to a different variation without removing the limit of one subscription at any status, since switching is only avaliable for active subscriptions and resubscription does not allow to change the variation.