Forum Academy Marketplace Showcase Pricing Features

Building Stripe Checkout for one time charge

Hello guys, I’m building a simple shopping site/marketplace where users no need to register their info to shop on my platform. My question is actually nearly the same question as eddie in the link below asked, but I’m still not be able to figure this out.

It seems the “charge the current user” action requires the Payer Email and I need to set up a form(in my case popup) for unregistered users to fill in their email addresses BEFORE navigating them to Stripe Checkout page but, this is nonsense UX-wise as I want to get rid of that popup form and make the Checkout page’s email form editable by the users. Can this be achievable?

One more question is that I cannot reset/clear email on the Stripe that’s used on the last payment with the route that I just explained above. How can I clear the email last time used?

I’m still a newbie on Bubble but I figured out the basics of the Stripe payment its just getting fun and I’d really appreciate your help.

Hi @ambivalent.corp,

Regarding wanting to get rid of the pop-up: have you updated your Stripe plugin to v3? The newer version of the plugin does away with the pop-up, and takes the user to a hosted checkout page. It’s a different UI/UX (and nicer, IMHO), and may give you at least part of what you’re looking for.

Good luck!

Thanks for you reply launchable, Yes I’m using the newer version of plugin/v3 but I’m not talking about the “popup” as the older version of UI.

I have to make a form(which I’m making it a popup) to fill the user email and send it to Stripe in the “Charge the current user” action. I’m 100% sure that this can be filled in the Checkout page by the user on the stripe side but Bubble seems not allowing us to do so because of the “Charge the current user” action.

Is there a way to achieve “one time charge” using the Stripe Checkout?

When you call “Charge the current user”, in the Payer email field, are you passing something like “Input A’s value”, or “Input Email’s value”, as dynamic data?

YES, and without filling the field Stripe Checkout won’t be triggered.

I have the same problem. Did you solve your problem?

Yes, I figured this out.
It actually depends on what you want to achieve. My way is to add Tempo Email on the USER (user is still not logged in) on DB and when user fill out their info (if you are selling items on your app you need this anyways) and passing the Tempo Email for the Charge Current User.

and for the user to receive an ordered info(receipt) you can set random numbers using Calculate RandomString option as an order id and assign the random string to current user DB.

So the whole flow goes like

User fill Email > Store it to Current User’s DB(Tempo Email) > Make Random String as an order ID > Charge Current User using Tempo Email > Create Order Info and assign the order id to it > and send email to the Email with the order id.

I hope this helps.

1 Like