# Discourse subscriptions - changing price during recurring subscription

**URL:** https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335
**Category:** Support
**Tags:** subscriptions
**Created:** [November 21, 2022, 9:01pm UTC](https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335 "2022-11-21T21:01:57Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)
#### Post date: [November 21, 2022, 9:01pm UTC](https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335/1 "2022-11-21T21:01:57Z")

</div>

Continuing the discussion from [Discourse Subscriptions](https://meta.discourse.org/t/discourse-subscriptions/140818):

> [@Discourse Subscriptions Plugin](https://meta.discourse.org/t/discourse-subscriptions-plugin/140818/1):
>
> Keep in mind that the pricing and billing intervals of plans cannot be changed once you create them. This is to avoid confusion around subscription management.

Let’s say I have a recurring annual subscription of £100, which runs from 21 Jan 2022 to 20 Jan 2023, but want to change this to £110 when it renews. I know from [Subscriptions: Change User's Plan - #2 by pfaffman](https://meta.discourse.org/t/subscriptions-change-users-plan/221927/2) that the answer is to cancel the current subscription and have use user resubscribe to the same product on a new plan. I can see the “x cancel” button on the `/admin/plugins/discourse-subscriptions/subscriptions` page.

I haven’t thought it through completely, but have some questions about this scenario:

1. What happens when I cancel the current subscription? I think that ends the subscription straight away and there is the option to refund the last payment in its entirety. That’s not what is needed.

2. Is there any way to keep the subscription going until its renewal date, and just cancel the auto-renewal?

3. Is the answer to diarise the renewal date for every subscriber and cancel the subscription the day before.

I guess in any case I would need personally to remind the subscriber about the cancellation and ask that renewal on the new plan be considered.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [November 21, 2022, 10:07pm UTC](https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335/2 "2022-11-21T22:07:02Z")

</div>

> [@Jonathan5](#):
>
> Let’s say I have a recurring annual subscription of £100, which runs from 21 Jan 2022 to 20 Jan 2023, but want to change this to £110 when it renews.

Let’s say that Stripe won’t let you.

> [@Jonathan5](#):
>
> What happens when I cancel the current subscription? I think that ends the subscription straight away and there is the option to refund the last payment in its entirety. That’s not what is needed.

You can do this on the stripe side of things and click something that says something like “cancel when it expires”.

You can do that and then hope that your subscribers will

1. notice that their subscription has expired
2. figure out how to renew it
3. not care that you’ve raised the price.

I think that if what you want to do is to make more money, then letting those subscriptions keep auto-renewing at the old price is going to yield lots more money than convincing them all to renew at a higher price. Knowing nothing about your community or product, I’d bet more people will auto-renew at $100 than would enter their credit card again to renew at $50.

Just create a new subscription at the new rate and hide the old one.

---

<div class="post-metadata">

### Author: ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)
#### Post date: [November 21, 2022, 10:24pm UTC](https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335/3 "2022-11-21T22:24:22Z")

</div>

> [@pfaffman](#):
>
> You can do this on the stripe side of things and click something that says something like “cancel when it expires”.

I found that option, thanks. It lets you set any expiry date, and give a prorata refund (which isn’t currently possible via Discourse). This is a side issue, but do you know how closely Discourse keeps tabs on this sort of thing? With my test user, Discourse knew the subscription had been cancelled, and hasn’t yet removed the user from the relevant group – but does Discourse know the new end date, and so when to remove the user from the group?

> [@pfaffman](#):
>
> I’d bet more people will auto-renew at $100 than would enter their credit card again to renew at $50.

I completely agree with this…

> [@pfaffman](#):
>
> Just create a new subscription at the new rate and hide the old one.

Do you mean untick “Active”? Presumably this doesn’t affect old people but new people would subscribe on the new plan.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [November 22, 2022, 12:14am UTC](https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335/4 "2022-11-22T00:14:09Z")

</div>

> [@Jonathan5](#):
>
> Do you mean untick “Active”?

I do, but I couldn’t remember the language

> [@Jonathan5](#):
>
> but does Discourse know the new end date, and so when to remove the user from the group?

I don’t know. I am not sure if it gets handled only by the webhook or if there’s also a job that checks on those. Maybe someone else does.

---

<div class="post-metadata">

### Author: ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)
#### Post date: [November 22, 2022, 11:39am UTC](https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335/5 "2022-11-22T11:39:03Z")

</div>

> [@pfaffman](#):
>
> You can do this on the stripe side of things and click something that says something like “cancel when it expires”.

I’ve created a feature request about this: [Discourse Subscriptions - clarify "Cancel at end of cycle"](https://meta.discourse.org/t/discourse-subscriptions-allow-cancel-at-end-of-cycle/246389) It doesn’t address the original point of changing the subscription, but would be useful nonetheless.

---

<div class="post-metadata">

### Author: ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)
#### Post date: [November 22, 2022, 12:11pm UTC](https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335/6 "2022-11-22T12:11:50Z")

</div>

> [@pfaffman](#):
>
> Let’s say that Stripe won’t let you.

Let’s say Stripe would let me 🙂 [Change the price of existing subscriptions | Stripe Documentation](https://stripe.com/docs/billing/subscriptions/upgrade-downgrade) Or at least, I’m not entirely sure but it looks like it would. I can see how this would be open to abuse, but I suppose that is what laws are for!

> #### Changing prices
> 
> Subscriptions can be changed by switching the price that a customer is charged or by changing the quantity. Normally the result qualifies as either upgrading or downgrading the subscription, depending upon the price difference between the two subscriptions.
> 
> Assuming a customer is currently subscribed to a basic-monthly subscription at 10 USD per month, the following code switches the customer to a pro-monthly subscription at 30 USD per month.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [November 22, 2022, 1:44pm UTC](https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335/7 "2022-11-22T13:44:48Z")

</div>

> [@Jonathan5](#):
>
> Let’s say Stripe would let me

OOh! I stand corrected. Thanks!

So if it _will_ let you change it without their permission, then I think that the easiest solution would be to do it on the Stripe side; I’m not sure how you’d get Discourse to find out about it, but it might just reload that information the next time it needs it (I think it probably does).

---

<div class="post-metadata">

### Author: ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)
#### Post date: [November 22, 2022, 10:14pm UTC](https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335/8 "2022-11-22T22:14:31Z")

</div>

> [@pfaffman](#):
>
> I think that the easiest solution would be to do it on the Stripe side; I’m not sure how you’d get Discourse to find out about it, but it might just reload that information the next time it needs it (I think it probably does).

It seems that the way to do it via the Stripe website is to go to an individual’s subscription, choose “Update subscription”, remove the current plan and add the new plan, and save. It’ll make a calculation for the next invoice on a pro rata basis (I didn’t check it for accuracy). When you go back to Discourse, as the user, it’ll show the new price per period, as if it had always been that way.

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [December 22, 2022, 10:15pm UTC](https://meta.discourse.org/t/discourse-subscriptions-changing-price-during-recurring-subscription/246335/9 "2022-12-22T22:15:04Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
