User membership/Stripe subscription/Webhook help

So I’m still struggling with my user membership management and stripe subscription webhooks.

Going to try and give an overview of what I’m trying to do and where I’m struggling so I can figure this out.

I have a database thing for user and membership. They both have a 1:1 relationship. When a new user is created they have a default free membership created and assigned to them.

Everything works fine with that…

I have a button for a subscription purchase. I’m using bubbles stripe plugin with SCA v3 checkout, as well as the self service portal so users can manage their own stuff.

This is the workflow for the subscription purchase:

So this is where I kind of get stuck, not only with the webhook API not working but maybe my logic for how to do this.

When the user purchased this subscription. I want to update the membership on my side once the payment has gone through. Now I know there is a bunch of webhooks specifically to deal with the charges but for now I just want to setup customer.subscription.create, customer.subscription.updated, customer.subscription.deleted.

The purchase works and the subscription works on stripes end. I created the products inside stripe and the product ids self populate in bubble in the workflow to purchase.

I turned on the API in settings.

I created an API for the webhook only for customer.subscription.created as follows:

I’m using this guide from bubble as reference.
https://manual.bubble.io/using-the-bubble-api/examples

In the API it says stripe send an event ID. So I set a param to capture this as the guide says.

In the work flow for this webhook, when the webhook is called and a user goes through the purchase and then a subscription is created, i want to add the customer id, plan id, and subscription ID to the membership so I used the event ID and stripes get data from external API as follows:

The stripe end point is setup the same in the guide as follows:

It should be working but its throwing this error. I’m not sure if this is even the best way to do this but I’m kind of lost, any help would be appreciated!

Make your API endpoint “request data” instead of manual definition. Bubble will provide you a URL to give to Stripe to send the first test webhook. Send a test webhook through Stripe and you’ll then see the data in bubble. You might want to check out our Stripe Webhooks tutorial at nocodify.com for more help.

Tal

After experimenting and testing I’ve got both ways to work in terms of calling the webhook and capturing data.

In a production or live environment, are people running this ignoring privacy and authentication or is there another step to authenticate correctly?

1 Like

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