Passing User Data to Stripe for Two-Tier Subscriptions model

I am building a subscription service and have encountered an issue when trying to pass the current user’s data to Stripe during the sign-up process.

My product has a slightly unique pricing structure with two tiers: a sign-up fee and an ongoing monthly subscription cost. I thought this method of pricing was quite common, but it appears that a single Stripe product doesn’t cater for this scenario.

To address this, I created a payment link that combines two Stripe products: Product 1 is the sign-up fee and Product 2 is the subscription fee.

When building the subscription workflow in Bubble, you would typically “subscribe the user to a plan” by selecting the plan ID. However, this isn’t possible in my case as my subscription is made up of two products.

I have managed to get the process to work by navigating the user to an external address, which in this instance is the Stripe payment link. This, however, means that I can’t relate the current user to the Stripe checkout process.

Is there a specific way to pass the current user’s data to Stripe in this scenario? Any guidance on how to achieve this would be greatly appreciated.

1 Like

To set this up you need to follow these steps
When the user signs up and pays the initial fee.
You need to store the users data from stripe

  1. Customer ID
  2. Payment type
  3. Payment date
  4. Amount
  5. Subscription ID (If the product has a subscription id)
    The most important is the customer id. If you’re using the stripe plugin

When running the subscription (monthly) you will use subscribe the user to a plan and then send the customer id to stripe for it to ask for monthly payment

I hope this helps

I would recommend using the stripe plugin for initial payments and then use the stripe webhook to GET changes in the stripe account for the current user

Thank you for responding.

I tried following that process, but my subscription product is split into two plan IDs: one for the sign-up fee and one for the ongoing monthly subscription. Stripe doesn’t allow adding a sign-up fee to a monthly subscription, but a payment link can be created.

Using payment links sends the user to an external source, so customer data isn’t passed to Stripe. I think I may need to create a checkout process in Bubble, then pass the relevant info to Stripe when processing the payment and use webhooks to pass data back to Bubble.

It looks like there is a Stripe Checkout plugin that could help, but I might also be able to achieve this using the API builder.

1 Like

You can use the stripe plugin to charge eg. a 5$ signup fee. then make changes to user to get result of the workflow action and get consumer id. Frequencies etc.

My experience with this was always very simple. If you can send screen shots I can help more with this

Hi, thanks.

I was able to do this by firstly creating an invoice item for the sign up fee and then subscribing the user to a plan, which collated each item into a single checkout. I had to first gather the customers credit card information.

It feels a little clunky, but it achieves what I want.

Thank you again for your input.

This topic was automatically closed after 70 days. New replies are no longer allowed.