I’m using the Bubble provided Stripe plugin and it’s working for one off purchases and subscriptions.
Now it’s time to create the webhook so I know when a subscription charge fails.
Per this example in the Bubble manual on how to do that, I should have/know the Stripe Customer ID, which I don’t, as the Bubble Stripe plugin action of Subscribe the user to a plan doesn’t seem to return it. https://manual.bubble.io/using-the-bubble-api/examples
Also, this Bubble forum thread confirms the Bubble Stripe plugin action of Subscribe the user to a plan doesn’t seem to return it.
My preference is to use the Bubble provided Stripe plugin so that if anything doesn’t work in the future I have one vendor/entity to deal with for troubleshooting problems, but in order to implement this webhook, I need this piece of data.
What @J805 told you is that the Stripe Customer ID field, for the user data type, is a built-in field provided by Bubble, and this field contains the Customer ID for Stripe, once the “subscribe user to a plan” action has been called successfully.
So remove your CustID field which will never be set, and use the built-in field provided by Bubble. And in this case, in your “Make change to User” action, you don’ t need to set the Stripe Customer ID as this field and its value are already available for the user
I get it now. Thank you. By creating a field User:Stripe Cust ID, I was negating the built in variable. I resolved this issue by moving that field from the User record to the LogPaymentSubscription record (a record where I simply capture the data returned by the action Subscribe user to a plan) and then capturing that detail in step 8 of the workflow above, rather than trying to capture that detail in step 9. The built in variable is not intuitive, at least it wasn’t to me, but I get it now. Thank you.
In addition, I would say that if you need to display to your users additional info regarding their subscriptions, you can also make use of some great plugins available in the Bubble Marketplace, I would recommand Stripe.js or Stripe Marketplace. You can use some calls they provide based on the built-in information provided by Bubble regarding the subscriptions (Stripe customer ID and Stripe Subscription ID). Based on this 2 piece of information, you can manage to get all necessary info for your users.
And it’s not so difficult. So Bubble as-is to manage users’ subscriptions, and plugins to get additionnal info
I forget the Stripe Self Service Portal plugin : an AWESOME plugin that really avoid to manage subscription management and credit card details in your app ! All this stuff is externalized to Stripe itself. Really cool ! (and more secure !)
I just started creating the Workflow for when the Current User’s Stripe Customer subscription’s Status is… whatever a failed payment will set the status to, and I’ve discovered I don’t know what the various values of Stripe Customer subscription’s Status might be.
Here is where I’m at, and I’m not certain how to proceed, and what documents I’ve found doesn’t help.
is there a way to update or edit the built-in Stripe customer id? I deleted a user on Stripe (test mode) and now Bubble cant find the customer anymore and i can’t find a way to relink bubble user and stripe user