Тёмный

Managing Subscriptions with Stripe - Bubble.io Tutorial 

Cranford Tech
Подписаться 2,6 тыс.
Просмотров 36 тыс.
50% 1

Be the first to hear about our latest tutorials, plugin releases, updates and more: www.cranfordtech.com/newsletter
In this video tutorial I demonstrate how to integrate Stripe with your Bubble app how to allow users to manage their subscription payments. We go through:
1) Setting up subscriptions
2) Enabling cancellations
3) Using webhooks to send data from Stripe to Bubble
3) Monthly vs. annual plans
4) Free trials
You'll need to install two plugins to be able to implement everything demonstrated in the tutorial:
1) Stripe plugin (built by Bubble): manual.bubble.io/core-resourc...
2) Stripe Customer Portal plugin (built by Cranford Tech): bubble.io/plugin/stripe-custo...
Please note that the Customer Portal plugin listed above is slightly different to the one shown in the video. The original one shown in the video has been deleted by the plugin author - the one I've listed above was created by me and works in almost exactly the same way.
💻 Hire me for Bubble Consulting/Freelancing
www.cranfordtech.com/agency
🎨 Check out our Templates and Plugins:
bubble.io/contributor/cranfor...
📧 Stripe Customer Portal plugin support: cranfordtech.com/contact
🤑 Get $15 off your first Bubble plan
bubble.io/?ref=jq28ggah
Timeline
00:00 - Introduction
00:33 - Structuring your database
02:11 - Adding a product in Stripe
02:46 - Configuring Stripe plugins in Bubble
03:38 - Subscribing a user to a plan
08:02 - Cancellations
09:01 - Creating a customer portal in Stripe
11:34 - Setting up webhooks to send data from Stripe to Bubble
20:28 - Offering annual vs. monthly plans
22:25 - Letting users manage subscription plans
25:53 - Free trials

Опубликовано:

 

27 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 229   
@PracticalAIbyRamsri
@PracticalAIbyRamsri 2 года назад
This is pure gold! Tried very hard to find a comprehensive tutorial for the last few months on Stripe. Everyone explained the subscribing part but not many details on other areas. This one is great and actually aimed to deliver value to the viewers. Thanks !
@CranfordTech
@CranfordTech 2 года назад
Thanks Ramsri! Really appreciate the kind words
@thinkjon
@thinkjon 2 года назад
This is one of the MOST informative tutorial on such a needed subject. It's amazing so much information is demonstrated within 30 minutes. I'm sure once I dig into the details questions will pop up (lol). Thanks for sharing your knowledge! I have a feeling this will be one, if not the most popular video on your channel : ) Thanks again!
@CranfordTech
@CranfordTech 2 года назад
Thanks for the kind words Jon!
@GlytchArt
@GlytchArt Год назад
I'm not sure, but it seems the part that speaks on how to interface with Stripes Customer Portal has now changed. I'm currently trying to work with their one stop link setup. Would love a quick tutorial on how to finalize this with the new stripe settings. Great Tutorial btw - Thank you!
@aharnisch3
@aharnisch3 Год назад
It's very similar but instead of adding that second workflow step from the plugins, you just use bubble's own way of opening an external URL in the Navigation section.
@clayraterman
@clayraterman 2 года назад
Incredible video!! What an amazing walk-through from start to finish. Channel is going to blow up
@CranfordTech
@CranfordTech 2 года назад
My wisest subscriber! 😀
@ayodejieluyemi6845
@ayodejieluyemi6845 Год назад
This video is really amazing, I rarely post comments on videos but this video deserves one. It's really good and it's well detailed. Thanks so much.
@CranfordTech
@CranfordTech Год назад
Thank you - I really appreciate the kind words!
@trainpackapp869
@trainpackapp869 Год назад
Just skimming through this and looks like you have covered everything I need - seriously impressive tutorial! I had found a hodge-dodge of other tutorials that sort of covered the various sections but this one is brill. Looking forward to getting stuck in. Thanks man! And hello from Killaloe ;-) Steve.
@CranfordTech
@CranfordTech Год назад
Never thought my bubble tutorials would make it out to Killaloe I must say haha Thanks for the kind words Steve - really appreciate it.
@user-ft2md2gd4s
@user-ft2md2gd4s 2 года назад
Incredible tutorial!! This is an important topic and you covered all the key points. Excelent.
@CranfordTech
@CranfordTech 2 года назад
Thank you! Appreciate the kind words
@prioritizen
@prioritizen 2 года назад
This video is amazing. Exactly what I was looking for after SOOO much googling.
@CranfordTech
@CranfordTech 2 года назад
Thanks Eric - glad it was helpful!
@gravelessForever
@gravelessForever Год назад
some tips: When adding the plan into stripe, it may take a while for bubble to be updated that it exists. Also, make sure that stripe is set to version 3 (recommended) and not version 2 (Legacy) this option is a dropdown inside of the plugins page for stripe
@CranfordTech
@CranfordTech Год назад
Thanks for this - 2 very helpful tips!
@SkoczekLPP
@SkoczekLPP Год назад
Thanks for the tip with Version 3. I was wondering why I see the legacy checkout.
@borjafat
@borjafat Год назад
Thank you! How long should I wait? It's been 24 hours and it's still not picking up on my payment plan.
@yigitulken7872
@yigitulken7872 Год назад
@@borjafat hi there! can you solve the problem? bcs it's been more than 30 hours for me also :D
@hypercopy
@hypercopy 11 месяцев назад
@@yigitulken7872 is your problem already solved? I'm also having problems with live version product plan to update..
@SilentMiniTravel
@SilentMiniTravel Год назад
Thank you for making this. You sir are the MAN. Keep doing you and I hope you succeed in life!
@guyblueoceans9072
@guyblueoceans9072 Год назад
good video. Loved the tip about changing webhook data from a Bubble number field to a Bubble date-UNIX data field 👏
@CranfordTech
@CranfordTech Год назад
Thank you!
@carlosrocha2591
@carlosrocha2591 Год назад
Thank you very much! I was not aware of all this conditions and had not thinking to call all the Stripe data to my app, know I'm going to be able to add a lot of monetization options over time, one more time, thank you sir!
@CranfordTech
@CranfordTech Год назад
Hey Carlos, thanks for the kind words and glad you found it helpful!
@RecklessRush
@RecklessRush Год назад
I don’t usually comment at all, but you did a phenomenal job at explaining all the steps here, really impressed!
@CranfordTech
@CranfordTech Год назад
Thank you! Really appreciate that
@RecklessRush
@RecklessRush Год назад
@@CranfordTech please continue making more tutorials, it is only a matter of time before your channel blows up. Happy to be one of the first here.
@CranfordTech
@CranfordTech Год назад
@@RecklessRush thank you! I hope you're right
@adish5248
@adish5248 2 года назад
Amazing video, this is what I was looking for.
@CranfordTech
@CranfordTech 2 года назад
Glad to hear Adish!
@CranfordTech
@CranfordTech Год назад
MAY-23 UPDATE: Since I created this video, the Stripe Customer Portal plugin used in the tutorial seems to have been deleted. I've released my own version of the plugin which you can find at this link: bubble.io/plugin/stripe-customer-portal-1682267928095x968520962536636400 It works in pretty much the same way as the Customer Portal plugin shown in the video. I've also built a demo app showcasing the plugin; you can find it here: customer-portal-demo.bubbleapps.io/version-test
@t.m.5004
@t.m.5004 7 месяцев назад
hi, i just purchased your plugin. After setting it up when i want the user to click on manage plan button, after "self service portal" workflow, there is no option that says "Open Portal in a new tab". I am currently stuck. How can i proceed?
@CranfordTech
@CranfordTech 7 месяцев назад
Hi @@t.m.5004, Bubble have changed their naming conventions since this tutorial was released. You can use the 'Open an external website' action to achieve the same thing. I recommend watching this tutorial video for more up-to-date instructions: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-6F5qV9O1Akg.html
@t.m.5004
@t.m.5004 7 месяцев назад
@@CranfordTech thanks for your prompt reply. I was able to proceed however it is now failing to send webhook attempt, even after i carefully followed all your instructions. I am currently on a free plan. I will have a look at your other video cheers.
@t.m.5004
@t.m.5004 7 месяцев назад
update: just upgraded to paid plan and now it's all good 😀 thanks for your plugin and your tutorials.
@CranfordTech
@CranfordTech 7 месяцев назад
@t.m.5004 great to hear! Appreciate the kind words 🙂
@luminrabbit9488
@luminrabbit9488 2 года назад
This was an absolutely fantastic tutorial! Thank you so much for putting this together!
@CranfordTech
@CranfordTech 2 года назад
Thank you for the kind words :)
@lukerynnecullen7727
@lukerynnecullen7727 2 года назад
Great video! One area to expand in perhaps another video is the best way to scale pricing, i.e usage-based when they add new users, create new profiles, have x number of contacts or use a certain amount of storage.
@CranfordTech
@CranfordTech 2 года назад
Nice idea Luke. Will have to look into that for a future video.
@joshdavey3766
@joshdavey3766 Год назад
Agree!
@GameITapp
@GameITapp 2 года назад
Great tutorial :) Thank you!
@CranfordTech
@CranfordTech 2 года назад
Glad you liked it!
@yaquilb.4642
@yaquilb.4642 Год назад
Excellent content!
@CranfordTech
@CranfordTech Год назад
Thank you! Glad you liked it
@richdelgado3405
@richdelgado3405 Год назад
This is one of the VERY few instructional videos I have found on RU-vid that I would gladly pay for just because it was just so dang helpful!
@CranfordTech
@CranfordTech Год назад
Very generous of you Rich! Thanks for the kind words
@harmonyjackson
@harmonyjackson 2 года назад
FINALLY! This is the video I’ve been looking for. I could cry!! However, even though I followed everything, when a user cancels in Stripe it doesn’t update in my bubble site… but I can see that the live webhook is working, and the users subscription status is successfully updated when they sign up so I’m not sure what I’m missing.
@CranfordTech
@CranfordTech 2 года назад
Hmmm sounds like you’ve already done quite a bit of troubleshooting. You have the subscription.cancelled event set up for the webhook? If so and it’s still not working feel free to send a video of your setup to nocodebuilds@gmail.com. No guarantee I’ll be able to figure it out, but I’ll certainly take a look 😀
@harmonyjackson
@harmonyjackson 2 года назад
I do! I’m going to give everything another look and I’ll email if I can’t figure it out. Thank you so much!
@Purposebasedconsulting
@Purposebasedconsulting Год назад
@@harmonyjackson That really confused me well. Looks like part of the video got cut. I found by looking at video segments 17:47 and 24:34 - I could see all the fields that need to be changed - so the integration worked.
@Purposebasedconsulting
@Purposebasedconsulting Год назад
What an education! Nice to know there are true bubble experts out there!
@CranfordTech
@CranfordTech Год назад
Thank you!
@andreyyu620
@andreyyu620 Год назад
God bless you for this video!
@CranfordTech
@CranfordTech Год назад
Glad you liked it!
@F4ATAL1US1GUESS
@F4ATAL1US1GUESS 2 года назад
i am having a problem when you set the webhook, when you create the "update_subscription" workflow, and change for the detect data, bubble show and error that states "we were unable to parse the type for this backend api. please re-initialize the detected fields", i dont know what to do, can someone help me ?
@bestbubbledev
@bestbubbledev Год назад
Awesome video! ❤ 1 thing I don't understand is why do you use "customer.subscription.deleted" and not "subscription_schedule.canceled". Does it have to do anything with how Stripe Plugin is set up? 🙏
@hereforthelol
@hereforthelol Год назад
Great video, thank you! If cancel is set to cancel at the end of the subscription instead of immediate...I'm assuming Stripe will hit the webhook with the cancel when it happens later at the end of the current paid period? Similar...if setup for auto monthly recurring...Stripe will hit the webhook when the auto recurring happens? Then based on those two we can add to the workflow "if status is canceled" do whatever canceled things you want to do in your app and "if status is active" do whatever active things you want to do in your app if any. ...I added the following to capture these later scheduled events "customer.subscription.updated"
@AhmedKhodir-novyPro
@AhmedKhodir-novyPro 2 года назад
What if the user want to have two type of subscription? for my app they will have the Developers and Hiring manager at the same time, how to achieve that ?
@ScottSchlimmer
@ScottSchlimmer Год назад
5:33 I'm not seeing "Stripe Customer ID" as an option. All the other fields are available. Is this video now outdated? Or why isn't this approach working for me?
@user-wr7hb8jf2t
@user-wr7hb8jf2t 9 месяцев назад
Is it possible to have the customer select their own start date of the subscription and when they cancel the subscription that it cancels at the end of the next billing cycle instead of at the end of the current one?
@somfplease
@somfplease 2 года назад
great tutorial. the only issue I have is that it starts with a current user. which means you need to create the account, then send them to payment. i'd rather create the account after payment has been made. this way the user information will be the highest quality.
@akispapas7463
@akispapas7463 Год назад
Awesome buddy, well done. Just one problem for me. I don't get the Stripe_Unique_ID value and I don't seem to find what's the reason. Was wondering if someone else had a similar issue
@f_ba
@f_ba 2 года назад
Amazing tutorial. I followed each steps and it's just beautiful. Thank you for sharing! Quick question : I have a pop up instead of the checkout page open when the user subscribed the first time using the workflow you suggested. Any idea on how to get rid of the pop up and instead redirect the customer to the checkout page of stripe?
@paulgutch1919
@paulgutch1919 Год назад
Change to V3 in the plugin settings
@mikevannelli
@mikevannelli Год назад
Love the tutorial. I had a quick question, should I remove the "version-test" in the endpoint URL in Stripe? This other plugin I was using wasn't working correctly until I removed that from the endpoint URL. I just wanted to check to see if I should (before I break anything). Thanks!
@CranfordTech
@CranfordTech Год назад
Thanks Mike! You should remove the "version-test" from the endpoint URL in Stripe IF you're implementing this in production mode. If you're still testing it in test-mode, you should leave it in :) Hope that helps
@othonrodrigues2188
@othonrodrigues2188 Год назад
I was struggling with that...But i realize how to solve --> After initialize the API in "version-test" in dev-mode ---> you make the DEPLOY. , and after the DEPLOY ---> you have to remove the "initialize" as he said, and ALSO the "version-test". --> And just then make another SUBSCRIPTION/CANCEL flow, with a brand new user in live mode. OBS: After deploy you can notice on CONFIG -API , that the pattern of the API changes.
@PracticalAIbyRamsri
@PracticalAIbyRamsri 2 года назад
Hi Nocode builds, A quick question! The webhook that you have, does it get triggered after every monthly billing? Because if I choose the monthly renewal plan, there should be a way to update the "Subscription End" date to next month's end date right? How is that handled?
@CranfordTech
@CranfordTech 2 года назад
The “customer.subscription.updated” event will handle this 😀
@PracticalAIbyRamsri
@PracticalAIbyRamsri 2 года назад
@@CranfordTech Thanks :)
@rheamozo3023
@rheamozo3023 2 года назад
Sorry I had another quick question! When enabling your API for stripe - I noticed that the api URL has 'version-test' if we were to deploy this on the live version, does something else need to happen to make it live? or is it already live? Hope that makes sense!
@CranfordTech
@CranfordTech 2 года назад
Hi Rhea, you would need to set up a new webhook for the live version of your app (i.e. drop the "version-test" part of the url and use live mode rather than test mode in Stripe)
@gman00
@gman00 Год назад
@@CranfordTech To clarify. 1 webhook for test and 1 for live in Bubble + 1 webhook in Test mode in Stripe (with full bubble URL) and 1 webhook in Live mode in Stirpe (with Bubble URL, removing the "version-test/"). Correct? Thanks, this is awesome 👏
@ChrisPodcasting
@ChrisPodcasting Год назад
Can we do this process without the webhooks? i keep getting the "We are unable to parse the type for the backend API. Please re-initlaize the detected fields."
@Triqualprogramming
@Triqualprogramming 8 месяцев назад
Hi! When I try to pick a plan @ 3:42 it doesnt list any plans while I did put in my api keys and have subscription plans in my stripe account. What could be the issue?
@hashcash3818
@hashcash3818 2 года назад
Thank you very much! In order to set it live is the same procedure bust just using the live environment?
@CranfordTech
@CranfordTech 2 года назад
Yep pretty much the same setup, you just need to make sure: - your put in your live API keys - set the subscription in live mode in Stripe - make sure the webhooks are connected to the live URL
@sache37
@sache37 Год назад
Amazing, thank you for that tutorial. Do you happen to know how to achieve the same result using a metered product? It seems that the Stripe plugin doesn't support that yet.
@CranfordTech
@CranfordTech Год назад
Thanks for the kind words Saumuel! Metered products are something I've been meaning to look into but haven't gotten around to yet - may do a tutorial video one day but afraid I don't have any advice to offer for now.
@khloe2770
@khloe2770 2 года назад
Exactly what i needed. Thank u very much =D . Just one question. Any ideas why i cant select any stripe plan name? do i need to manually add it in the bubble data base? i created the products in stripe ... and added my stripe api in the pluggin section but i cant select any stripe plan. did i forget something? Thanks!
@CranfordTech
@CranfordTech 2 года назад
Thanks Khloé! Hmmm one thing is you might have a mismatch between your API keys and your Stripe environment. Have you put in both your live and development API keys? If you create a plan in the test environment in Stripe you'll need to have your test keys configured, but if you create a live plan you'll need the live keys configured in the bubble stripe plugin.
@LifeInspireConnect
@LifeInspireConnect 11 месяцев назад
Wonderful tutorial! I do have a question, when I follow all the steps, everything from Stripe's customer info is showing in my data except the customer id. Any ideas on what I might be doing wrong? I do have the privacy rule checked for social network as I had read somewhere and used stripe customer ID = Current User's Stripe Customer ID. Thanks!
@CranfordTech
@CranfordTech 11 месяцев назад
I suspect you're saving down the wrong ID - scroll further down the dynamic data dropdown to "Stripe Customer ID" (no "-") and see if that works.
@passportbrosalliance
@passportbrosalliance 7 месяцев назад
is it better to use "not_activated or canceled" or current user stripe status is not "active"
@coconutsforeverybody
@coconutsforeverybody 2 года назад
Does the backend workflow work also when deployed live or should I recapture the Data? Thanks for the tutorial!
@CranfordTech
@CranfordTech 2 года назад
When you say "backend workflow" are you referring to the webhook action? If so, you'll need to redo the steps I outlined and use the live product rather than the test mode product. You'll also need to remove the "version-test" from the webhook URL. Hope that helps!
@user-op8lx2yc1n
@user-op8lx2yc1n Год назад
thank you so much
@CranfordTech
@CranfordTech Год назад
No problem, glad you liked it!
@pranavshirole1
@pranavshirole1 Год назад
Hi, thanks for the amazing educational video! One question I had is that while this video shows the process in Test mode, how would it be different for the Live mode?
@CranfordTech
@CranfordTech Год назад
Thanks Pranav! A couple of things you'd need to differently: 1. Make sure your "live" API keys are configured in the plugins section 2. Set up a new webhook for the live version of your app
@othonrodrigues2188
@othonrodrigues2188 Год назад
@@CranfordTech I did the deploy, but when i go to backend workflow , and try to "detect data", the end point that appears is the same that i was using in the version test... The strange thing is that when i go to Config-> API , the end point that is showed up is the correct one, with my domain and stuff... I tryed a couple times to do the "detect data" with the end point suggested in the workflow, but didnt work... After changing the domain, and deploying the app...should the Endpoint suggested when click in "detect data" still the same ? or it should be refreshed ? can anyone help me? :)
@amlo50
@amlo50 2 года назад
Hi this a great tutorial, the most straight forward and clear example so far, that I have seen. Do you think this will pass for ios submission
@CranfordTech
@CranfordTech 2 года назад
Thanks Alex! Afraid I haven't ever submitted an app to the app store before so can't comment on this. Would be interested to hear how you get on if you do submit it!
@jonathanchippindall6966
@jonathanchippindall6966 Год назад
Thanks for making this. Do things change much if you want it to end their access at the end of the period they've paid for?
@CranfordTech
@CranfordTech Год назад
Thanks for the kind words Jonathan! You would likely want to set up a backend workflow to cancel their subscription and change their "status" so they no longer have access. Hope that helps!
@B13e
@B13e Год назад
When I press subscribe, it says "must be logged in" or something. Do I need a login page for this? Is there a video on how to set up the login page?
@CarlosMartinez17
@CarlosMartinez17 Год назад
Great tutorial. One question. When creating the workflow to subscribe user to a plan I only see test products ... how (when) do I set up the live products ?
@CranfordTech
@CranfordTech Год назад
Thanks for the kind words Carlos! You'll need to do 2 things: 1. Create products in "live" mode in your Stripe dashboard (so not "test" mode") 2. Put in your live Stripe API keys in the plugin section
@CarlosMartinez17
@CarlosMartinez17 Год назад
@@CranfordTech yes but then the product id is different to the one in thr workflow .. should i change that too ?
@Oluwa-toki
@Oluwa-toki 2 года назад
This video just saved me, I was trying to integrate ACH payment webhook and since you canceled subscription manually, I had to refund manually. Was stuck here for days😭😭
@CranfordTech
@CranfordTech 2 года назад
Glad it was helpful Allen - thanks for the kind words!
@louisstroudh7415
@louisstroudh7415 Год назад
Nice vid. Based on your tutorial, Stripe automatically updates Bubble field 'Status' to active, cancelled or not_active, and that's how you're identifying in Bubble if a user has paid a subscription. How would I set up the Bubble database and/or stripe if I have different types of subscription products in Stripe, say a premium and a premium+, or an individual and a team account? Would I just need two fields, for instance, Status Pro and Status ProPlus? What about changing between plans?
@pranavshirole1
@pranavshirole1 Год назад
Hey did you figure this out?
@cornhub576
@cornhub576 Год назад
I have an issue when I subscribe a user, stripe creates a new customer on their database, how can I solve this issue?
@TheEcomBull
@TheEcomBull Год назад
Awesome tutorial THANK YOU!!! For some reason the Stripe_Customer_ID doesn't get updated. Everything else gets filled up on the database, but not the Customer ID. Maybe I am missing something?
@jean-marc.seigneur
@jean-marc.seigneur Год назад
I have the same issue. In the video, it uses the Current User ID but it is empty so I'm not sure why it worked on his side.
@brucewhite7260
@brucewhite7260 11 месяцев назад
Yes, I had same issue but now fixed
@rheamozo3023
@rheamozo3023 2 года назад
Amazing Video! Just wondering Customer ID is not working for me, are you able to explain how it collates data from 'Current User'
@CranfordTech
@CranfordTech 2 года назад
I suspect I know the problem here. I use a custom field called customer ID in the tutorial, but there is also a bubble field called customer ID - are you using the correct one? Poor naming conventions from me 😀
@rheamozo3023
@rheamozo3023 2 года назад
@@CranfordTech Amazing! That was literally the problem, thank you so much!
@chrismiller3591
@chrismiller3591 2 года назад
I echo what others have said. This is great stuff! Thank you for the comprehensive tutorial! I do have one question. When you subscribed the user to a plan at the beginning of the tutorial, you left the checkbox to "update an existing subscription." Why did you leave that checked? I understood the user to be brand new with no prior subscriptions. Thanks!
@CranfordTech
@CranfordTech 2 года назад
Thanks for the kind words Chris! To be perfectly honest I didn't give that checkbox a lot of thought and probably should have unchecked it. Leaving it checked may cause issues down the road if you have users with multiple subscriptions - great spot on your part!
@chrismiller3591
@chrismiller3591 2 года назад
@@CranfordTech Got it. Thanks! I built my own integration to Stripe. I was rethinking it when I ran across your excellent tutorial. As I was testing it out, I realized that Bubble still hasn't incorporated Stripe's auto-tax functionality into its plug-in yet. Of course, it supports static tax codes, but I really like Stripe's managed tax service that takes care of everything for me. Of course, this means that I have to stick with my custom integration for now. Thanks again! I subscribed to your channel. Keep up the good work!
@jean-marc.seigneur
@jean-marc.seigneur Год назад
Thanks for this great tutorial! A few of us in the comments have the same issue of not getting the Stripe_Customer_ID. In the video, it uses the Current User ID but it is empty by default so I'm not sure why it worked on your side. Did you get the Stripe Customer ID before?
@frazerfindlater5356
@frazerfindlater5356 Год назад
Hi there, I had the same problem. If you search for 'Stripe Customer ID' you'll see there is "Stripe _Customer_ID" (with underscores) and "Stripe Customer ID" (with spaces). Use the one with spaces and then that should work.
@CranfordTech
@CranfordTech Год назад
Thanks Jean-Marc! I suspect I know the problem here. I created a CUSTOM field called customer ID in the tutorial, but there is also a DEFAULT bubble field called customer ID - are you using the correct one? Poor naming conventions from me causing a bit of confusion 😀
@ViajologoExistooficial
@ViajologoExistooficial Год назад
@@CranfordTech thanks guys - I was stuck on it .... Just went to Current User options and down the scroll there was "Stripe Customer ID" - hope this bit of extra info helps
@therealdoy99
@therealdoy99 Год назад
How does this get transferred to live mode?
@kevlc
@kevlc 9 месяцев назад
i got the plugin and everything is working fine until 8:23 when i search for OPEN PORTAL IN NEW TAB , i dont have this option, it's because of the update in the plugin?
@CranfordTech
@CranfordTech 9 месяцев назад
Hi Kevin, Bubble have updated their editor since this tutorial was recorded. You can use "Open an external website" under the "Navigation" section of the workflow actions to achieve the same thing 🙂
@betterisms
@betterisms 10 месяцев назад
Hi Cranford. It seems you updated the plugin and now there is no "open portal in new tab" anymore. Any recommendation? thanks! Edit: I guess it is the return URL. Right?
@speedracer7022
@speedracer7022 5 месяцев назад
for step 1 Self Service Portal - Stripe Portal: I used "this URL" as return url. For Step 2 I used bubble's "Open an external website", same "results of step 1's URL".
@128superluke
@128superluke 2 года назад
Thanks for the video! Been trying to set up webhooks and keep running into an error... I have data detection live, however, when resending the webhook it continues to state "error".. any advice? thanks!
@CranfordTech
@CranfordTech 2 года назад
Hmm there could be a number of issues here: 1) Have you kept "initialised" in the webhook URL when setting it up and then removed it after? 2) Have you configured your Stripe API keys for the plugins?
@128superluke
@128superluke 2 года назад
@@CranfordTech I figured it out.. I'm still using the free plan, I guess you have to upgrade to a paid subscription for that to work. Received this error message: "Please upgrade your Bubble subscription for your API calls to run".
@CranfordTech
@CranfordTech 2 года назад
@@128superluke Ah that would be it alright. Unfortunately you do have to pay to access some of the more advanced features.
@oweningerson8430
@oweningerson8430 Год назад
Amazing video! For some reason when I subscribe a user none of their user data changes, even though stripe recognizes the subscription creation and has the necessary data, I am pretty certain I followed the workflow exactly. Appreciate any tips!
@CranfordTech
@CranfordTech Год назад
Thanks Owen! Hard for me to say what's going wrong without seeing the editor. I've put together a demo app that is quite similar to what's in the video - may be useful to check out the workflows and ensure they match your own: customer-portal-demo.bubbleapps.io/version-test
@oweningerson8430
@oweningerson8430 Год назад
@@CranfordTech thanks so much, I will check that out now. Weirdly enough after a few hours all the data updated as intended, besides subscription_id… which im guessing will update after their trial is over… we shall see, thanks regardless!
@brucewhite7260
@brucewhite7260 11 месяцев назад
This is great but can you format the customer portal so that it matches the style of my app.
@CranfordTech
@CranfordTech 11 месяцев назад
Thanks Bruce! You can change the format of your Billing Portal in the Settings section of your Stripe dashboard.
@user-kz3qx8ho2t
@user-kz3qx8ho2t Год назад
The Stripe Customer Portal plugin has been taken down. Anyone figured out an alternative to this?
@CranfordTech
@CranfordTech Год назад
Thanks for bringing this to my attention Conan. If you're comfortable with the API Connector you could use this to replicate the functionality of the Customer Portal plugin. Alternatively I'm working on my own Stripe - Subscriptions plugin. If you'd like to be notified of when I release this plugin, you can go to www.cranfordtech.com/contact and let me know via the message field that you're interested in the plugin.
@parrisgjerde9212
@parrisgjerde9212 2 года назад
Great video. Question: The subscription process brings you back to the app. The customer portal creates a new tab. Any way for the customer portal to bring you back to the app?
@CranfordTech
@CranfordTech 2 года назад
Well noticed Parris. I don't think it's possible to open the customer tab in the same tab as your bubble app IF you use the plugin I do in the video. It IS possible to go from your bubble app to the Stripe customer portal and stay within the same tab if you connect to Stripe via the API connector. I wanted to keep things simple in this video given the wide range of topics covered, but may do a tutorial on connecting to Stripe via the API Connector in the future.
@parrisgjerde9212
@parrisgjerde9212 2 года назад
I’m currently using the billflow plugin for checkout/plan selection and customer portal. The billflow plugin will be turned of soon due to billflow being acquired by stripe. Therefore, my app will require a little retooling. The billflow plug-in provides a customer portal element which keeps all that info in the app. I may need to look at the API. Thanks for your quick reply.
@guyblueoceans9072
@guyblueoceans9072 Год назад
@@parrisgjerde9212 Not sure where you're at but make sure you review this video. The founder of Billflow is now at Stripe & he shows some similar functionality for creating portal sessions (I believe ~25min mark) step by step using API connector ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-HGFVnTf7kMg.html
@tm_kh
@tm_kh 2 года назад
To go live - we add the products in "live mode" on stripe and then enter the live keys and follow the tutorial the same (set up the subscription to be to one of the new live products)? Thank you for this!
@CranfordTech
@CranfordTech 2 года назад
That's it exactly Kevin! You'll also need to remove the "version-test" from the webhook URL. Hope it goes smoothly and let me know if you've any other questions!
@tm_kh
@tm_kh 2 года назад
@@CranfordTech Thank you so much, new question - if I wanted to allow a user to sign up to a plan, but keep it on a free trial until a certain condition happened in my bubble app (in our case, their first paid deal comes through the platform) is there a way to do this?
@hammerthrow123
@hammerthrow123 Год назад
Do you know how I can add the ability to add a promotion code / coupon code to the Stripe Checkout screen? This was possible via BillFlow but I do not see that as an option with the new Stripe Billing. I can create a coupon code but there does not seem to be an option to add a coupon code at checkout. Any help would be greatly appreciated!
@kevlc
@kevlc 9 месяцев назад
This might come a bit late but I had the same question and ive just found the solution. In the workflow, in the window of SUBSCRIBE THE USER TO A PLAN , there's a checkbox "Allow promotion box" that must be checked..
@afcerfofque
@afcerfofque 2 года назад
This was an awesome video and best one out there yet! I am pretty sure I followed all the steps. Once the Free trial ended, The subscription status didn't change from Trialing to Active. Any thoughts? Thank you!
@CranfordTech
@CranfordTech 2 года назад
Thanks for the kind words! Did the subscription status update on your Stripe dashboard? If so and the status didn't change in your bubble database, it suggests your webhooks aren't setup properly.
@afcerfofque
@afcerfofque 2 года назад
@@CranfordTech ok! So I went through and looked at what was wrong. The live stripe section had the development test version link of bubble. So I went into the live mode of bubble and got the api workflow link there and just replaced it in stripe with updatesubscription at the end. Now it works! Thank you for this video honestly and your speedy response!
@CranfordTech
@CranfordTech 2 года назад
@@afcerfofque no problem! Glad you were able to figure it out
@nca-nocodeagency
@nca-nocodeagency Год назад
hi! your wideo and module looks great, but I don't undestand the part with the "Stripe_Customer_ID". You take it form the user's data, but it is empty..? I followed your steps, but this field stays blank.. so when I want to redirect the customer to his portal, it fails as this id is empty.. do you have any clue of what could be wrong?
@CranfordTech
@CranfordTech Год назад
I suspect you're saving down the wrong ID - scroll further down the dynamic data dropdown to "Stripe Customer ID" (no "-") and see if that works.
@nca-nocodeagency
@nca-nocodeagency Год назад
@@CranfordTech thanks! That's it :)
@nca-nocodeagency
@nca-nocodeagency Год назад
@@CranfordTech I have another issue. nothing happens when I use the portal action from your plugin. I don't have the action "go to the portal"
@CranfordTech
@CranfordTech Год назад
@@nca-nocodeagency can I confirm you have set a Return URL in the Return URL field? 🙂
@nca-nocodeagency
@nca-nocodeagency Год назад
@@CranfordTech I got the solution from your other video : ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-6F5qV9O1Akg.html it looks more recent
@RoniBliss
@RoniBliss 2 месяца назад
Should you create products instead of Subscriptions if you have a subscription model? Is there a benefit there?
@CranfordTech
@CranfordTech 2 месяца назад
I usually create products and give them a recurring price so that they are subscriptions
@sahilchawla1991
@sahilchawla1991 Год назад
Hi Customer portal is not opening showing error 400
@annak4227
@annak4227 Год назад
I’m a bit confused about dev/prod environments. Am I right that you can’t connect Bubble dev to stripe test and Bubble prod to Stripe prod at the same time? When you use dev Bubble key, you can select dev plans, dev webhooks, and live version is view only, so you can see live plans but cannot select them. Test plans are not working in prod if prod key set for prod. When Bubble dev set with prod Stripe keys you can’t test it because it’s live. How can dev environment set with a dev key, webhooks, plans and prod with prod key, prod plans etc at the same time?
@alonso1151
@alonso1151 Год назад
Hello, Anna! I'm having the same problem. Have you been able to find a solution?
@yoelfdz8682
@yoelfdz8682 Год назад
@@alonso1151 Hey there, having the same issue. Could anyone share a solution for this?
@TheFrenchMonkey
@TheFrenchMonkey Год назад
to fix the issue you'll have to copy the live api keys to the .dev keys inputs, that way you will draw your live products/prices/webhooks into your development app and live app at the same time.
@TheSwingSavvy
@TheSwingSavvy 6 месяцев назад
Thank you for this video - Does anyone know if you need to change the webhook url when setting this up in your Live environment? I noticed the url that you copy from Bubble is not the custom domain that my website runs off of. It also includes "version-test" within the url.
@CranfordTech
@CranfordTech 6 месяцев назад
Hi there, I have a more recent tutorial on this very subject - you can see it here: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-6F5qV9O1Akg.html The relevant section is from 17:20 on 🙂
@TheSwingSavvy
@TheSwingSavvy 6 месяцев назад
@@CranfordTech Thank you, I will check it out. One other question I ran into is when adding the action "Subscribe the user to price xyz..." the plugin only picks up the prices from my testing environment in Stripe. I noticed in the Bubble documentation, they mention "Since the app has two versions, Development and Live, you need to have both versions of your account in Stripe to have the same plans with the same IDs." I don't know how to ensure they both have the same price ID between environments. Thoughts on this?
@CranfordTech
@CranfordTech 6 месяцев назад
Good question@@TheSwingSavvy! This is also covered in the video I linked to above 🙂
@TheSwingSavvy
@TheSwingSavvy 6 месяцев назад
@@CranfordTech Thanks just watched and looks to have answered my questions. However, if I'm using a custom domain, does the webhook need to be changed at all or does Bubble take care of all of that?
@CranfordTech
@CranfordTech 6 месяцев назад
Another good question@@TheSwingSavvy and I'm actually not sure of the answer 🙂 Should be easy enough to test out though - my guess is that you'll be ok without changing the webhook URL to your custom domain, but I could well be wrong on that. Let me know how you get on!
@ChrisPodcasting
@ChrisPodcasting Год назад
This is a great video. My only question is how do I make this live? I'm ready to get paid but when people are trying to purchase, I get an error saying that a development key was used. Can you help with this?
@Lichcrafter
@Lichcrafter Год назад
Go to your Stripe dashboard -> developers (upper right) -> API Keys. Find the toggle for Test mode (upper right), and turn it off. The page should now show the live keys. The Publishable key should start with pk_live_ in live mode instead of pk_test_
@Yayitssen
@Yayitssen Год назад
So for cancellations, open portal in new tab only works with version 10.6, how would this work with the newer versions where this option was removed? Great video!
@salvatorepercival
@salvatorepercival Год назад
any luck with this?
@speedracer7022
@speedracer7022 5 месяцев назад
​@@salvatorepercival for step 1 Self Service Portal - Stripe Portal: I used "this URL" as return url. For Step 2 I used bubble's "Open an external website", same "results of step 1's URL".
@dano5913
@dano5913 Год назад
Thank you for making this video! I have been stuck for months, unable to return data from Stripe to my Bubble App. Your video provides a simplified process with a deep understanding of how it works. After a subscription has been cancelled, can the user restore or resume their account using the same email address? Once again, thank you for this video!
@CranfordTech
@CranfordTech Год назад
Thanks for the kind words Dan! I'll be honest I have not tested out a user restoring/resuming their subscription with the same email, but I see no reason why that would not work.
@dano5913
@dano5913 Год назад
Thank you for getting back to me, Alex. Everything you have taught works perfectly, and they have been very helpful. I noticed the following after cancelling a subscription and retrying to subscribe using the same email: 1. When I click the Subscribe button, it no longer works. That is, no action takes place. 2. When I click the Manage_Billing button, it takes me to the stripe customer portal. However, the buttons (Update plan and Cancel plan) disappear; therefore, I cannot make any changes to the account. I may be doing something wrong; please let me know. Thank you.
@CranfordTech
@CranfordTech Год назад
@@dano5913 hmmm that suggests that the user in your app cannot re-subscribe using the workflow you've created. I'm afraid this isn't something I've looked into deeply so can't offer much advice. However, I've no doubt that this is possible, it may just take some tweaking of the workflows.
@MarioCantin
@MarioCantin 9 месяцев назад
Hi, I followed the instructions carefully, but the stripe customer ID is not being saved in the database. Have you heard of this issue before? Thanks.
@CranfordTech
@CranfordTech 9 месяцев назад
Hi @MarioCantin, I suspect you're choosing the wrong "Stripe Customer ID" field from the dynamic dropdown menu. Try scrolling down towards the bottom of the dropdown and you should see "Stripe Customer ID" (no "-") - will do the trick.
@pixel.hustler
@pixel.hustler Год назад
Fantastic thank you! Is the customer_id necessary? How do you retrieve it?
@CranfordTech
@CranfordTech Год назад
Yes, the customer ID is necessary to manage subscriptions via the Stripe Billing Portal. If you're following the steps in the video and it's still not working, you may be pulling in the wrong field - scroll down towards the bottom of the dynamic data dropdown and you should see "Stripe Customer ID" (no dashes). Hope that helps 🙂
@pixel.hustler
@pixel.hustler Год назад
​ OMG... um... I totally didn't catch that. Thank you so much for the response and wonderful product. Great work!
@CranfordTech
@CranfordTech Год назад
@@pixel.hustler no problem 🙂
@wheres_bears1378
@wheres_bears1378 2 года назад
Do we need a bubble paid plan to do this?
@CranfordTech
@CranfordTech 2 года назад
Yes I'm afraid you will. You won't be able to access the backend workflows without being on a paid plan.
@wheres_bears1378
@wheres_bears1378 Год назад
What if the user has multiple subscriptions
@salvatorepercival
@salvatorepercival Год назад
Hey there - I have just purchased your stripe customer portal however the option to open portal in new tab is not available via plugin workflow - any guidance on what the new step to complete this step to pop open the portal is?
@CranfordTech
@CranfordTech Год назад
You can use the "Navigate to an external website" action 🙂
@salvatorepercival
@salvatorepercival Год назад
@@CranfordTech thanks!
@salvatorepercival
@salvatorepercival Год назад
Hey sorry to bug you - but when I choose result of step 1's url - it is returning empty (seeing it in the debugger). Have I configured it incorrectly? The customer stripe ID is coming through fine
@CranfordTech
@CranfordTech Год назад
@@salvatorepercival sounds like it's an issue with your api key setup. If you make your bubble editor public and send me a link to it (alex@cranfordtech.com) I'll take a look at it.
@salvatorepercival
@salvatorepercival Год назад
@@CranfordTech Sent thanks!
@joshdavey3766
@joshdavey3766 Год назад
Ahh stuck at 8:30 - the 'Stripe Customer Portal' plugin removed the 'Open Portal in New Tab' workflow in version 10.7.0, is there a workaround for that step? :(
@xavierabraham8328
@xavierabraham8328 Год назад
Hey Josh - I had to downgrade the plugin to 10.6. and the "open portal in new tab" was available. It worked for me :) and it's a nice solution for now. Interested to see/hear a workaround for version 10.7 if you solved it.
@joshdavey3766
@joshdavey3766 Год назад
Hi ​@@xavierabraham8328, yeah I did the same in the end. Works for now. If someone can find an alternative approach for v10.7 and beyond then I'm also interested in hearing it!
@xavierabraham8328
@xavierabraham8328 Год назад
@@joshdavey3766 I think the workaround would be “open external website in new tab” and then included “Results of Step 1’s url”…I’ll give it a try tomorrow and circle back here with the results.
@publictrades4428
@publictrades4428 Год назад
I am having this same problem as well, even downgraded to 10.6 as suggested below, but getting "No such customer" error. I know that the customer was created and test transaction was successful. Did you solve this error, how?
@joshdavey3766
@joshdavey3766 Год назад
@@publictrades4428 I'm not sure sorry, I just found that worked for me in 10.6.
@brucewhite7260
@brucewhite7260 11 месяцев назад
Plug-in looks different now. On the stripe customer portal they give a URL link, which I copied into my work flow under run external website. When I run this, it asks for my email in order to send a link ? This works okay. However if I try to add any new accounts using different emails, it states that it is not recognised by Stripe, despite having an individual customer ID number? Any body experiencing similar issues ?
@CranfordTech
@CranfordTech 11 месяцев назад
Hi Bruce, the plugin I used in the video no longer exists (was deleted by author). The new plugin you're using was built by me. This updated video should explain how to use use it 😀 ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-6F5qV9O1Akg.html
@brucewhite7260
@brucewhite7260 11 месяцев назад
@@CranfordTech thanks :))
@CranfordTech
@CranfordTech 11 месяцев назад
@@brucewhite7260 no problem!
@brucewhite7260
@brucewhite7260 11 месяцев назад
⁠@@CranfordTech on my non live version, everything worked fine, able to cancel or amend payment plans, When I changed to the live version, stripe seems to work well but i am having difficulties with the customer portal - a long error message comes up “ stripe portal error….No auth mechanism defined… error : outer error…….” I changed the api key to my live key in bubbles plug in? Is there something else that I am missing
@CranfordTech
@CranfordTech 11 месяцев назад
@@brucewhite7260 Hi Bruce, take a look at the logs section in the Developer part of your Stripe dashboard - that should give you some clue to the problem. If that doesn't work, can you make your bubble app public and shoot me an email (alex@cranfordtech.com) with a link to your bubble editor? I can dig in and try and solve the problem 🙂
@julianboth7121
@julianboth7121 Год назад
Great video! However it seems once a user signs up and subscribes with Stripe, my data base doesn't receive a Stripe_Customer_ID, anyone may know why?
@philoryx
@philoryx Год назад
I have the same issue - have you been able to fix it?
@brucewhite7260
@brucewhite7260 11 месяцев назад
@@philoryxyes
@user-kt6eb5zc7x
@user-kt6eb5zc7x 5 месяцев назад
Lemon squeezy same as stripe?
@CranfordTech
@CranfordTech 5 месяцев назад
Hi there, I haven't looked into Lemonsqueezy as an alternative, but you likely need to follow the same principles alright.
@betterisms
@betterisms 10 месяцев назад
My subscription plan is still now showing up in bubble. Do you know any hack to make this possible?
@CranfordTech
@CranfordTech 10 месяцев назад
Hi there, things have changed a bit since this tutorial was originally recorded. If you watch the below updated tutorial, it should help with your issues 🙂 ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-6F5qV9O1Akg.html
@betterisms
@betterisms 10 месяцев назад
@@CranfordTech thanks a lot, I am going to check it now!!
@devilonstudio7587
@devilonstudio7587 Год назад
Will the subscribe deducted automatically every month?
@CranfordTech
@CranfordTech Год назад
Yes!
@devilonstudio7587
@devilonstudio7587 Год назад
@@CranfordTech I don’t know why but when I click on manage billing , I get “no such customer” error here
@CranfordTech
@CranfordTech Год назад
@@devilonstudio7587 Sounds like you're not saving down the Customer ID correctly. If you make your bubble editor public and send me a link to it (alex@cranfordtech.com) I'm happy to take a look and see what the issue is :)
@devilonstudio7587
@devilonstudio7587 Год назад
@@CranfordTech I have sent my bubble editor to you . Thank you 🙏
@DesignerAdvocate
@DesignerAdvocate Год назад
I sent you a email. Very good video BTW I have some questions.
@othonrodrigues2188
@othonrodrigues2188 Год назад
Great video! Thank you! I have a question, if anyone could help me: 1 -> If I create a button for Monthly and another for Yearly. Where each button has a paralel workflow. Still need to create a second Event to update on the Backend worflow? Would not the Update Workflow be enough to update the Frequency and Period?
@samedgurses5295
@samedgurses5295 Год назад
insanely informative tutorial, one of the few with good explanations! I do have a question: you turn off all privacy rules and authentication in the API workflow for the Stripe webhook, isn't this dangerous in terms of privacy and security?
@CranfordTech
@CranfordTech Год назад
This is a very valid point. I did not spend any time on privacy rules as that could easily be another 1 hour tutorial by itself. But yes, in general you should absolutely consider the privacy rules when using webhooks. Appreciate the feedback and something I'll look to incorporate in future tutorials.
Далее
Webhook Security in Bubble
50:46
Просмотров 2,2 тыс.
Я ВЕРНУЛСЯ 🔴 | WICSUR #shorts
00:57
Просмотров 2,3 млн
Каха заблудился в горах
00:57
Просмотров 981 тыс.
Получилось у Миланы?😂
00:13
Просмотров 1,1 млн
Stripe Webhooks - Bubble.io Tutorial
24:06
Просмотров 5 тыс.
Create a User Invite Feature in Bubble.io
30:37
Просмотров 3,4 тыс.
Я ВЕРНУЛСЯ 🔴 | WICSUR #shorts
00:57
Просмотров 2,3 млн