[Plugin Announcement] Stripe Plugin v3

Hello Everyone!

We are excited to announce we have updated the Bubble Stripe Plugin v3 to the latest version of Stripe Checkout and added a variety of features to match v2 functionality. Most notably, we’ve added the following missing actions to v3:

  • “Collect the user’s CC information”
  • “Charge a user using saved cc”
  • “Make a card new default”
  • “Delete a credit card”

We also added the following new functionality to v3:

  • Collect coupon codes when charging a user or subscribing a user to a plan
  • Specify tax rates when charging a user or subscribing a user to a plan

In addition, we made several important backend updates to the plugin to support Stripe’s new API for handling saved payment methods so that we are fully SCA compliant.

To update your Stripe plugin to the latest version, simply select v3 in the version dropdown in the Plugin settings tab, and deploy to live.

Note: If you are using a Tax percentage in v2 “Subscribe the user to a plan”, you will need to create a Tax rate object in your Stripe dashboard and specify that tax rate id instead. See our docs for more details.

If you are already on v3, you should already have access to the new functionality listed above.

Because V3 supports everything V2 supported (and more) and Stripe is recommending to use the new Stripe Checkout, Bubble will not be officially supporting V2 updates going forward so it is a “use at your own risk” version.

We hope you enjoy the new updates. Please let us know if you have any questions or concerns, thanks!


Awesome work as usual. Looking forward to whatever other new stuff you guys have cooking.

This is fantastic! @Bubble

Yessss!!! Thank you @tj-bubble!!!

Can we use this in backend workflows? If this requires another 3D secure flow, how is that handled?


A couple of things here. If you’re asking about Collecting the user’s CC information in a backend workflow, I don’t believe that’s possible as it requires a user to type this information in.

To the other question, regarding if charging a saved card when the user is off-session and it requires user input, you can see the details here on how that is handled (TL;DR you can set it up so that emails can be sent when SCA is required): SCA migration guide for Billing (stripe.com). If the user is on-session (entering their card) and it requires 3D secure, Stripe automatically handles it and has the user provide the auth in the checkout screen.

There are test cards that have 3d secure flow, such as 4000 0027 6000 3184 or 4000 0000 0000 3220 (described on the Stripe testing page), using this in test mode with our Stripe plugin is a good way to demonstrate how it works.


Does that mean you’ve switched from the Charges API to working with PaymentIntents and PaymentMethods instead of Charges and Cards?

That’s exactly right


@tj-bubble Does this mean that moving forward the Stripe plugin will only support Stripe-hosted checkout UIs? Also, would it be possible to alert those affected directly? I have a large number of past clients whose apps use these flows who are unlikely to be checking the forum regularly

@austin3 Yes, that’s right, we are moving in the same direction as Stripe and phasing out the legacy checkout in favor of the stripe-hosted checkout UI. We are contacting Stripe to further confirm the exact expected behavior past the May 21st date for the older style Checkout and will report back out findings. We’re also planning on sending an email (that points back to this forum post) to affected Bubble apps soon.

1 Like

@tj-bubble How can we send the user email to the stripe checkout form? I don´t see the option and it´s kind of a pain for user´s having to enter their email. Also this could run into mistakes if the user needs to input the email again and again.


@ryanck thanks for pointing this out, can you confirm which action you’re seeing this behavior on? I am noticing that for a new user trying to “Subscribe the user to” it is missing the email address, but on “Collect the user’s CC information” the email address is there, so I just want to make sure I’m addressing the exact action in your case.

1 Like

Great stuff @tj-bubble thanks!

Does this plugin enable its actions for Stripe Connect Express? … or only for Connect Standard?

  1. In other words … if I complement the plugin’s functionality with other direct api calls to Connect Express will I be able to use info collected via the plugin? … like … being able to charge a user using a saved cc with no problems eventhough I will be using a Connect Express account with Stripe?

  2. Please advice what API does the plugin connects to. The Stripe Charges Api? … or the Payments Intent Api?

@nocodeventure Could you please chip in with some guidance? … I understand you also have a great Stripe plugin. In essence, I would like to know if Stripe needs ALL calls made under the account type chosen with them (Connect Express or Connect Standard).


As you said it’s missing in the subscribe action.

I’m not totally sure the exact use case here for the best answer… If the payee is another user (using Stripe Connect), maybe this documentation is helpful: Stripe - Bubble Docs - The payee of this transaction is another user

V2 (Legacy) was using the charges API and V3 uses Payment Intents API.

I should have a fix for this pushed out by tomorrow morning, thanks again for pointing it out! (One reason for this post is to get feedback for people upgrading to V3 having issues)

1 Like

Hey @austin3 , good questions.

We contacted Stripe to get clarity on what the May 21, 2021 date means exactly, and they said that Legacy Checkout (which our V2 plugin is based on) should still function after this date, so we can relax Bubble’s stance a bit from what we thought originally (which was it would be a breaking API change).

However, because V3 has achieved feature parity, has more features and because Stripe recommends moving off the Legacy Checkout feature, we are going to discontinue supporting/enhancing the V2 plugin (continue using at your own risk)


Got it. So customers can continue to use the legacy UI, they just won’t have access to any actions that use the charges API on stripe’s end?

I may be misunderstanding, but I believe he’s referring to Stripe Connect Express vs. Standard. That’s actually a good question - Will the updated v3 flows support passing in an Express account as the payee?

The plugin should support both Standard & Express Connect accounts.

When a user registers as a seller, they will be brought through a Stripe-hosted onboarding flow where the connect account holder will select the type of account they would like to create. At the end of the day, it is up to the parent account (i.e. the marketplace) to specify what types of accounts they want their connected accounts to have access to. These options are set in the Settings > Connect Settings tab of the Stripe Dashboard.

I hope this answers your question!