How to handle multiple Stripe subscriptions in one Memberstack checkout for new sign-ups with add-ons?
Hi Memberstack team,
We’d love your help with an add-on workflow we’re building.
Here’s what’s already working:
- If a paid member is logged in and wants to purchase an add-on, we send them to the add-on’s price ID in Stripe Checkout.
- They complete the purchase, and as a result, they now have two plans (two Stripe subscriptions) linked to their Memberstack account. This works perfectly.
Here’s what we’re trying to achieve:
- Allow a new visitor (not yet a member) to sign up for a main plan and select an add-on at the same time.
- Ideally, this would be handled in a single Stripe Checkout flow, instead of requiring two separate checkouts.
A key constraint:
- We have many different plans, so adding an additional price (main + addon) for each one is not a viable option.
- The add-on needs to function as a true second plan for the user.
Could you advise if this is possible within Memberstack’s current setup?
Comments
3 comments
Thanks so much for reaching out and for explaining your workflow clearly — that helps a lot.
At the moment, Memberstack doesn’t support purchasing a main plan and an add-on in a single Stripe Checkout flow. Each plan (including add-ons) needs to be purchased through its own checkout session, which is why your current two-step setup works.
Since you have multiple main plans, creating combined products in Stripe (main + add-on) isn’t scalable, and unfortunately there isn’t a way to link two separate plans to a member in one checkout right now.
Current options:
I hope this helps
Hey Vladimir Babic,
I believe currently this kind of setup is not possible, a user would be able to purchase only one plan at a time via the checkout and not two different plans. You could create a wishlist explaining your project use-case and how such feature could help to get notification if there are any future updates on it. But currently the in-built way is to have the separate checkouts.
Chukwudi that actually helps.
We'll try something like this
Please sign in to leave a comment.