Subscriptions/Variants - Upgrade/Downgrade - Discounts on Renewal date

  • Posts: 364
  • Thank you received: 25
2 years 5 months ago #315928

-- HikaShop version -- : 4.2.2
-- HikaSerial version -- : 3.0.1
-- Joomla version -- : 3.9.15
-- PHP version -- : 7.3.14
-- Browser(s) name and version -- : Chrome 80

Hi guys,
I'm setting a portal that will manage 4 types of parent Registered Subscribed users:
- Registered A - free registration
-- Registered B - paid B subscription 10
--- Registered C - paid C subscription 30
---- Registered D - paid D subscription 50

When a Registered User buy a Subscription (B, C, D) he has added to that Joomla User Group for the Subscription time.
Now, I have for you three questions:

1 - From your point of view, Would be better to set a Product for each Subcription type or to have 1 Product with 3 Charateristics Variants ?
(Where I can assign a different Subscription type for each Variant)

2 - I'm asking it also thinking if there is a way to "upgrade" / "downgrade" from one Subscription to other Subscription.
I mean, I am a Paid C Subscriptor and I want to upgrade to Paid D, or the reverse I am a Paid D Subscriptor and I want to downgrade to Paid B,
Please, Can HikaSubscription calculate the residual value of the existing Subscription to transform it into time (downgrade) or discount (upgrade) ? How ? Do you have any tips for it ?

3 - I'd like to add discounts, different prices, depending on the renewal date.
I mean, I have a valid Subscription B till th 30 june 2020. If 'll renew before the 30 april I'll pay 5, from 01 may to 31 may I'll pay 6 and from 01 june to 30 june 7 (then I'll cannot renew and I'll have to buy it again at 10).
As far as I know on "Prices" tab I can only enter prices from date/to date, nothing related to the subscription expiration date.
Please, Do you have any tips for it ?

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

  • Posts: 25389
  • Thank you received: 3933
  • MODERATOR
2 years 5 months ago #315933

Hello,

1 - Both are possible and it's really up to you and how you want to propose the subscriptions in your website.
If you do prefer to have one product page or several.

2 - There is an upgrade feature in HikaSubscription ; it allows to move from a subscription plan to another.
We did not get a lot of feedback or wishes regarding the upgrade system.
So the way the upgrade is working is, for the moment, similar on how HikaShop is handling it.
From the subscription listing, the customer will be able to perform an "upgrade" and the subscription end date will be proceed depending the current end date and the duration that the upgrade is offering.
(Please note that upgrades requires to cancel the recurring transaction if you're using Paypal recurring)

3 - Indeed, the date of prices is something "fixed" and it is a feature provided by the HikaShop core.
In order to have such kind of dynamic price, it would require a custom plugin which would override the product price depending external rules.
It would require some research to see how such kind of configuration interface should be made, and if some modifications in the HikaShop core would be required.
But it could be something more like a "discount" depending the expiration date ; thus it would not require to add new settings in the HikaShop product but to configure the "discount rules" for renewal subscription products.

Regards,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

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

  • Posts: 364
  • Thank you received: 25
2 years 5 months ago #315943

Hi Jerome,
in first of all many thanks for the quick and detailed answer. Then:

1 - Can be any difference from a Statistics point of view ?
I'd glad to know opinion based on your experience to evaluate the pros and cons.

2 - You are speaking only abot "Upgrade" and not "Downgrade", Am I right ?
"...the customer will be able to perform an "upgrade" and the subscription end date will be proceed depending the current end date and the duration that the upgrade is offering..." = I'm not sure I have understand. Please, Can you do a mathematical example (with numbers) ?

3 - Okay, thanks.
The only workaround I can think here is (for example) to set an outgoing renewal email 60 days before the subscription expiration date attaching to it a Coupon discount, based on user, with % discount and a 15 days expiration.
What do you think ? Any ideas ?

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

  • Posts: 25389
  • Thank you received: 3933
  • MODERATOR
2 years 5 months ago #315946

Hello,

1 - HikaShop statistics will be easier with separate products if you want to generate graphs or else in HikaShop.

2 - HikaSubscription do not make the difference between upgrade and downgrade.
It is called "upgrade" but it's a product which allow to "migrate" a subscription from a plan "A" to a plan "B" for a specific price and a duration.
The subscription expiration date will be the best date between "now + upgrade duration" and "current expiration".
It means that the upgrade duration do not extend the subscription expiration date by its duration.

3 - Yes, it is one workaround but you need to make it automatic.
In a way, it might be easier to implement but it will require to create a lot of coupons which might not be use at all.
And you cannot create too generic coupons because some users could use it outside the rules.

Regards,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

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

  • Posts: 364
  • Thank you received: 25
2 years 5 months ago #316033

Hi Jerome,

1 - thanks

2 - "...allow to "migrate" a subscription from a plan "A" to a plan "B" for a specific price and a duration.
The subscription expiration date will be the best date between "now + upgrade duration" and "current expiration".
It means that the upgrade duration do not extend the subscription expiration date by its duration."
I'm testing, but I'm not understanding. Please, Can you help me doing two examples, "upgrade" and a "downgrade", using numbers ?

3 - thanks

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

  • Posts: 25389
  • Thank you received: 3933
  • MODERATOR
2 years 5 months ago #316053

Hello,

2 - I'm sorry but I don't understand what you want ; nor what "example" I can give you since there is no difference between "upgrade" and "downgrade" in HikaSubscription.

Regards,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

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

  • Posts: 364
  • Thank you received: 25
2 years 5 months ago #316060

Hi Jerome,
sorry for my English. Simply I'm not understanding How should run the "Migration" feature you gently explained me.

Looking for "Subscription - Upgrade/Downgrade" into documentation I can only find this empty article .

So, I'm just asking you two examples (upgrade case / downgrade case).
Looking to understand if it can fit my customer needs.


From my point of view an Upgrade / Downgrade process should be really simple. Example:
- Registered A - free registration
-- Registered B - paid B subscription 10/month
--- Registered C - paid C subscription 30/month
---- Registered D - paid D subscription 50/month

Relation Type "Upgrade" + Duration 1 day
- Variant BC Price: from B (10) to C (30) = (20 / 30 to have back the price per day) 0.67
- Variant BD Price: from B (10) to D (50) = (40 / 30 to have back the price per day) 1.33
- Variant CD Price: from C (30) to D (50) = (20 / 30 to have back the price per day) 0.67
The Upgrade relation type should keep fixed the expiration date (user cannot manage "quantity") and calculate the total price:
- Days (from today to the expiration date) x Variation Price = Total cost of the upgrade
And sure delete the "Upgrade from" user user group (old Plan action) and add the user to the new "Plan" user group

Relation Type "Downgrade" + "Duration 1 day"
- Variant DC "Price": from D (50) / to C (30) = (-20 / 30 to have back the price per day) 1.66
- Variant DB "Price": from D (50) to B (10) = (-40 / 30 to have back the price per day) 5
- Variant CB "Price": from C (30) to B (10) = (-20 / 30 to have back the price per day) 3
The Downgrade relation type should keep fixed the total price to 0 (user cannot manage quantity) and calculate the new expiration date:
- Days (from today to the expiration date) x Variation "Price" = days to the New expiration date
And sure delete the "Upgrade from" user user group (old Plan action) and add the user to the new "Plan" user group

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

  • Posts: 25389
  • Thank you received: 3933
  • MODERATOR
2 years 5 months ago #316089

Hello,

There is no documentation on it for the reason we explained before :

There is an upgrade feature in HikaSubscription ; it allows to move from a subscription plan to another.
We did not get a lot of feedback or wishes regarding the upgrade system.
So the way the upgrade is working is, for the moment, similar on how HikaShop is handling it.
From the subscription listing, the customer will be able to perform an "upgrade" and the subscription end date will be proceed depending the current end date and the duration that the upgrade is offering.

I can't give you any example ; the system do not answer to your need since it is doing only what I have described previously.
And since we need feedback to improve it, right now I can't provide a schedule or information for future improvements.

I take notes from your usecase and I hope that we will have other feedback/usecase to be able to provide an implementation of a "upgrade/downgrade" feature in the future.

Regards


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.
Last edit: 2 years 5 months ago by Jerome. Reason: typo

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

  • Posts: 364
  • Thank you received: 25
2 years 5 months ago #316120

Jerome wrote: ...I take notes from your usecase and I hope that we will have other feedback/usecase to be able to provide an implementation of a "upgrade/downgrade" feature in the future...

Thanks, I'll stay tuned and report here if I find tips and/or workarounds to have back it in the simplest, most efficient and most compatible system possible for everyone...

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

Moderators: Obsidev
Time to create page: 0.070 seconds
Powered by Kunena Forum