Change someone’s subscription Answered

Post author
Ben Tossell

What’s the best way to change someone’s subscription? If they are on a paid tier and want to switch to a different paid tier

Comments

15 comments

  • Comment author
    Evgenii Tilipman

    Hey Ben!

    Thanks for asking.

    The best way would be to go back to have the client go back to pricing and choose a different plan there.

    For that to happen when adding the pricing plans to your price button, you would have to add data-ms-price:update instead of data-ms-price:add.

    Let me know if that helps 😁

    0
  • Comment author
    Duncan from Memberstack

    Ben Tossell This article should help if you are changing their plans manually https://docs.memberstack.com/hc/en-us/articles/7421781379099-How-to-Change-a-Member-s-Plan

    0
  • Comment author
    DUY

    Evgenii Tilipman do we have to use data-ms-form:signup ?

    So we have one plan and within the plan, there are multiple prices. for a member with a plan at price x, we want to allow them to “upgrade” (in the same plan) to price y

    0
  • Comment author
    Evgenii Tilipman

    In that case, what you really need is set the attribute on a pricing button data-ms-price:update="{{AddYourPricingPointAttributeValueHere}}"

    {{AddYourPricingPointAttributeValueHere}} is an action step. Let me fetch a screenshot where to find that value

    go to your plans > individual paid plan > prices > click on price > attribute value

    0
  • Comment author
    DUY

    oh great so i don’t even need to nest it inside of a form?

    what did i do wrong?

    Staging URLs: https://sanil-ui.webflow.io/member/additional-membership

    Preview URL - https://preview.webflow.com/preview/sanil-ui?utm_medium=preview_link&utm_source=design[…]&pageId=660f2bb408f359f915b8509c&locale=en&workflow=preview

    0
  • Comment author
    Evgenii Tilipman

    Thanks for sending this in. So, the form submission button has an attribute. Nothing else has an attribute here, so naturally this is not working. You need to add appropriate attributes to your radio inputs (it's a test as I always did it in a manner where attribute is added to the link/button and not a form element). Let me know once that's done and let's see if we can get you set 😁🚀

    0
  • Comment author
    DUY

    okay. do i need to set a custom attribute on the form element?

    0
  • Comment author
    Evgenii Tilipman

    You can take a look at this video. It shows all the basics on memberstack. There's a bit on paid plans and stripe. Basically all the payment attributes should be on the payment links as per the resource (From 10:00).

    You can also watch this video as an additional resource with a working example to get more familiar with setting up pricings (from 5:32)

    0
  • Comment author
    DUY

    hi Evgenii Tilipman thanks for the help here. i’m still not getting the intended effect. even with the update attribute, i get taken to stripe and even then, i just see a separate plan, but ideally i’d like to see all the prices within the test plan

    Evgenii Tilipman Duncan Hamra any ideas here?

    preview link: https://preview.webflow.com/preview/sanil-ui?utm_medium=preview_link&utm_source=design[…]&pageId=660f2bb408f359f915b8509c&locale=en&workflow=preview

    0
  • Comment author
    Duncan from Memberstack

    DUY I'm afraid the functionality you're looking for is not possible. Stripe will only display the price/plan that is associated with the price:id they click on. There is no way to get Stripe to display all of the other pricing options

    0
  • Comment author
    Evgenii Tilipman

    Hey thanks for that!

    Missed these messages today 😁

    I actually talked about this specific case with a few people and to have the functionality you intended, you'd have to code to trigger the stripe on click of update membership over on click of the radio button.

    I'd say that the logic could be the following:

    1. Give radio buttons values same as the attribute values of your pricing plan
    2. give the attribute data-ms-price:update with an empty value to the button "Update membership"
    3. On click of radio button, prevent default events (Not sure if this is the exact mechanic at hand here... Duncan from Memberstack what do you think?)
    4. On click of radio button, take the radio's choice value (the plan value), and set it as a value into the "Update Membership" button's "data-ms-price:update" attribute

    In this way, once you select the radio, the attribute of the update membership button will be updated, hence the update button should work as intended. Not too straightforward, but a potential workaround. Needs to be tested for feasibility though 🥳

    Hope that helps

    0
  • Comment author
    DUY

    thanks for the type evgenii! i did do something similar. swapping the price id works via radio buttons, but the system is limited.

    it seems that it will only let me update to a different plan, not a different price
    https://preview.webflow.com/preview/sanil-ui?utm_medium=preview_link&utm_source=design[…]&pageId=660f2bb408f359f915b8509c&locale=en&workflow=preview

    should i use ms-code-select-price? i don’t see that as an attribute in your documentation

    0
  • Comment author
    Duncan from Memberstack

    I like it! I would just use a custom attribute for step 2 so you don't have to fight with members. Something like ms-code-select-price="price_ID"

    0
  • Comment author
    Raquel Lopez

    If I understood the issue correctly, you wanted to show more than 2 plans in the customer portal when upgrading, right? With a bit of custom code I think you might obtain that functionality DUY

    Memberstack provides a function to redirect to customer billing portal. You can pass a parameter a list of the specific price ids you want to show, and when users click upgrade plan button they will see all the plans you passed on

    await memberstack.launchStripeCustomerPortal({
    priceIds: ['pln_1', 'pln_2', 'pln_3', ...],
    })

    https://developers.memberstack.com/docs/dom-front-end-package#launch-stripe-customer-billing-portal

    You could bound different events to different buttons that shows different plans combinations

    0
  • Comment author
    DUY

    Raquel Lopez I’m so sorry! I thought I replied to this. Thank you so so so so much for your response! It wasn’t the thing we ultimately implemented, but put us on the right track. Thank you again!

    0

Please sign in to leave a comment.