Proper way to implement CB Subs with upgrade options

6 years 11 months ago #293951 by cpaschen
OK ... I think then the problem is in 'terminology'.

I DO want them to be able to 'upgrade' from internal to A (in the way your using 'upgrade'). AND also to be able to ADD D to their current subscriptions as well. So they can have both A and D active at the same time.

What I don't want is if they have A, and then 'upgrade' to D, that A remains in effect and no prorating - which is working.

However, If they have A and D as current subscriptions and then want to 'upgrade' to C, then the remaining subscription left on A should be discounted on the cost of C AND then A is removed from their current subscriptions while C is added to their current subscriptions. (But D remains current).

How do I ensure that if a user has plan A and 'upgrades' to plan C that C replaces (and gets a prorated discount) for plan A?

Please Log in to join the conversation.

6 years 11 months ago #293953 by krileon

How do I ensure that if a user has plan A and 'upgrades' to plan C that C replaces (and gets a prorated discount) for plan A?

Set both to Exclusive and to allow upgrades then under Pricing tab enabled prorating. If a plan is exclusive it can not be subscribed at same time as another exclusive plan within the same parent.

Sorry, but your setup seams to be very confusing to follow. If you need addon plans I suggest just making them child plans and making them non-exclusive. Even if the addon plan for Plan A and Plan B would be the same it's fine just copy them. Example as follows

Plan A (exclusive, allow upgrades, prorate)
- Plan A1 (non-exclusive, allow upgrades)
Plan B (exclusive, allow upgrades, prorate)
- Plan B1 (non-exclusive, allow upgrades)
Plan C (exclusive, allow upgrades, prorate)
- Plan C1 (non-exclusive, allow upgrades)
Plan D (exclusive, allow upgrades, prorate) <- this is basically a standalone of the addon plan


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 to join the conversation.

6 years 11 months ago #293986 by cpaschen
Well, that didn't do exactly what I needed, but VERY close now.

The problem with setting those all 'exclusive' (at the top level) doesn't allow a user to subscribe to A and D (which has been indicated is a requirement for this site).

I just changed your settings to set all the top level ones as non-exclusive (but used workflows to 'hide' then when they shouldn't be seen - with static and dynamic settings). And everything works fine with just two exceptions/problems.

Although you can now 'upgrade' from A to A1 ...

1) The A1 subscription does not 'replace' the A subscription, it is just a 'sub - subscription' within A. (When a plan is properly 'upgraded' it shows (on the admin view) that it was upgraded on a certain date. [This is not 'critical' but makes it very confusing]

2) The prices for A1 is not 'discounted' by the prorated amount left from the subscription to A

Please Log in to join the conversation.

6 years 11 months ago #293992 by krileon
You can't upgrade from a non-exclusive to another non-exclusive. This is because you can have both at the same time. If both plans are exclusive it'd be an upgrade and prorating would take affect.


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 to join the conversation.

6 years 11 months ago #293997 by cpaschen
I think I have it functionally working. Here's what I had to do:

PLAN-ABC (non-exclusive; Price:0; allow upgrades;prorate)
- PLAN A (exclusive, allow upgrades, prorate)*
- PLAN B (exclusive, allow upgrades, prorate)*
- PLAN C (exclusive, allow upgrades, prorate)*
PLAN-D (non-exclusive; allow upgrades; prorate)

This allows the combination of subscription options previously mentioned.

The only thing is that I want, in effect, for the PLAN-ABC items to be 'invisible' as much as possible. The user should only see the sub-plans under ABC (and not the 'container' or parent plan).

I've 'hidden' the price by changing the Display|Price display of plan to "&nbsp;
However, I need to also at least hide the buttons from that 'container'/parent subscription when it is displayed.

I'm guessing the best way to do that is just to create a custom template that doesn't show those items, then apply to that ABC 'container'/parent subscription. I'm trying to locate where the CB templates (like the 'rounded' one) get installed but can't find it.

IS that the only way to hide these other items?
Where would I find those templates once installed?

Please Log in to join the conversation.

6 years 11 months ago #294000 by krileon
CBSubs templates are just CBSubs integrations They're installed to the below location.

/components/com_comprofiler/plugin/user/plug_cbpaidsubscriptions/templates

It's unlikely you'll be able to do this through the template without adding code specific to that plan id otherwise all top level plans would likely have their display broken. You should be able to set the plan name and price to _UE_BLANK or any other language key with blank text to suppress their display.

My proposal above avoids this though. See the below again.

Plan A (exclusive, allow upgrades, prorate)
- Plan A1 (non-exclusive, allow upgrades)
Plan B (exclusive, allow upgrades, prorate)
- Plan B1 (non-exclusive, allow upgrades)
Plan C (exclusive, allow upgrades, prorate)
- Plan C1 (non-exclusive, allow upgrades)
Plan D (exclusive, allow upgrades, prorate) <- this is basically a standalone of the addon plan

Plans A1, B1, and C1, are just copies of Plan D and made set as child plans to A, B, and C. This allows them to be addon plans and have the same benefits as if subscribed to say Plan A and Plan D. You can set child plans to be hidden by default so they only display if the parent is selected for an even cleaner look. All the top level plans are exclusive as well so they can only ever be subscribed to A, B, C, or D.


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 to join the conversation.

Moderators: beatnantkrileon
Time to create page: 0.195 seconds

Facebook Twitter LinkedIn