Skip to Content Skip to Menu

Handling "A La Carte" Plan Upgrades/Changes with CBSubs Options & Family Plans

1 month 2 weeks ago #343505 by okp-medezide
Thank you for the detailed explanation. I will try this out, and see if I can make that work.

Please Log in or Create an account to join the conversation.

1 month 1 week ago #343537 by okp-medezide
Thanks for the advice so far! I’ve decided to stick with the ACL logic in my
Code:
helper.php
for now—it's technically working and easier to manage than dozens of Auto Actions at this stage.

Regarding the 'off-boarding' process: I've noticed that when a plan expires, the
Code:
cb_category_access
field is wiped. I’d like to avoid leaving users in a 'plan-less' state and instead have them automatically fall back to a 'Freemium' plan (lifetime) the moment their paid plan expires or is deactivated.Where and how exactly can I configure this fallback? I have been searching through the plan settings for a 'downgrade on expiration' toggle but I'm not sure if I'm looking in the right tab or if it's a global setting.A specific follow-up regarding the logic: If a user is automatically moved to the Freemium plan upon expiration, will the CB Fields integration of that Freemium plan be triggered? My goal is to have the
Code:
cb_category_access
field immediately re-populated with the 'Free' category values via the Freemium plan's configuration as soon as the fallback occurs.Does this fallback logic handle both natural expiration and a manual unsubscription that leads to deactivation?

I want to ensure that all registered users always has a 'Freemium' status as a landing pad for our ACL.

Please Log in or Create an account to join the conversation.

  • krileon
  • krileon
  • ONLINE
  • Posts: 50385
  • Thanks: 8624
  • Karma: 1472
1 month 1 week ago #343539 by krileon
It doesn't sound like you need a freemium plan, but just want the field value to downgrade to "Free". In that case you can just use the "Value on plan deactivation" parameter. Yes whether they expire or deactivate manually that parameter will be applied. Basically any state other than Active will cause that parameter to apply.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.

Please Log in or Create an account to join the conversation.

1 month 5 days ago #343547 by okp-medezide
I hear what you say, and you are right about me being able to assign the correct cb_category_access values with the "Value on plan deactivation" parameter.

But that would still leave the user in a expired-plan state. If you look at the first attached image, you can see how we are offering a Freemium Plan for users to register to.

I would prefer to have all the non-paying users assigned to that plan, instead of having the non-paying users spread across the freemium plan and multiple expired plans. (It just makes it more difficult to have a clear overview over our users).

I would also prefer to move the expired-plan users to the freemium plan, to be able to better display their current plan/access in cb-profile page.

If you look at my second attached image, where we are looking at "Your Current Subscription" - I don't think we provide a very good UX by displaying the expired plan in this section, instead of displaying what the actual current state is: "freemium".
What i mean is, if I use the "Value on plan deactivation" method to apply freemium categories, This will not be visible to the user. They will only see what they had before expiration, instead of what they currently have.

I hope this makes sense, it's not too easy to explain.
Attachments:

Please Log in or Create an account to join the conversation.

  • krileon
  • krileon
  • ONLINE
  • Posts: 50385
  • Thanks: 8624
  • Karma: 1472
1 month 4 days ago #343552 by krileon
We have no functionality to auto downgrade someone into a different plan on expiration. Generally you just let the user do that themselves if they choose to not renew. It's possible to automate this with CB Auto Actions though. You'd use the same plan expiration logic I provided earlier.

Plan Expired
Global
Triggers: onCPayUserStateChange
User: Automatic
Access: Everybody
Conditions
Condition 1
Field: Custom > Value
Custom Value: [var3]
Operator: Equal To
Value: PLAN_ID_HERE
Condition 2
Field: Custom > Value
Custom Value: [var2]
Operator: Not Equal To
Value: A

The above will work with any auto action type. So if you want to subscribe them into a new plan for example set the Type to CB Paid Subscriptions and configure the Action tab accordingly to your needs.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.
The following user(s) said Thank You: okp-medezide

Please Log in or Create an account to join the conversation.

Moderators: beatnantkrileon
Powered by Kunena Forum