šŸ’° Stripe Connect - Marketplace Payments Plugin (includes detailed tutorial!)

This plugin makes it easy to process marketplace payments (like Airnbnb, Etsy, Uber etc.) in your bubble app using Stripe Connect.

Iā€™ve created a detailed video tutorial on how to use the plugin

Thereā€™s also a comprehensive demo page (with the editor public) that includes a mini-Etsy app to show how you might implement the plugin in your own app

Screenshot 2022-09-15 at 19.06.26

Features you can implement with the plugin:

  • Allow users (merchants) to take payments for goods/services sold on your platform and take a % of the payment (like Airbnb, Etsy, Uber etc.)
  • Let merchants set up their own Stripe Connect Express account
  • Give merchants access to their own Stripe Express Dashboard
  • Allow merchants to set their own payout schedule (daily, weekly, monthly)

The plugin allows you to use the following workflows actions:

  • Create Express Account
  • Create Onboarding Link
  • Create Express Dashboard Link
  • Create Checkout Session

And the following data calls:

  • Retrieve Account Details
  • Retrieve Connected Account Balance
  • Get Payment Details

Any questions just let me know :slight_smile:

2 Likes

@alexcooney5 :wave:
Thanks a lot :+1:

I was stuck on this topic since few daysā€¦

1 Like

No problem!

If you have any questions on how the plugin works just let me know.

1 Like

Thanks @alexcooney5 :+1:

1 Like

Just a note to say Iā€™ve updated the plugin to allow for marketplace subscription payments (like Substack).

Detailed video tutorial on how to do so is here:

Just added the ability to refund payments (can be done by either the merchant or a platform admin).

Instructions on how to do this available on the demo app :slight_smile:

2023-07-20 11.36.15

August-2023 Updates

  • Refunds can now be processed with the plugin
  • Payment details can be authorized at one point in time, with the payment captured at a later stage (for up to 7 days). This can be used for service-based marketplaces like Upwork/Fiverr where the service needs to be completed before the payment is captured.

I demonstrate how to add both of these features in the below tutorial. The section dealing with refunds is at 43:25 and the payment authorization/capture is at 49:44 :slight_smile:

New tutorial on how to put payments on hold (separate authorization and capture) just released!

1 Like

This is a phenomenal plugin, thank you!

1 Like

Thanks @mac2, really appreciate that :slightly_smiling_face:

New tutorial just released on how to create Express accounts with Stripe Connect.

October-23 Update

Released a tutorial on how to implement a delayed payment flow (like Upwork/Fiverr) with the plugin:

A common question on the Bubble forum is how to implement ā€œescrowā€ style payments with Stripe. Stripe does not support escrow payments. However, the ā€œSeparate Charge & Transferā€ method detailed in the tutorial is an effective workaround - funds can be held on the platform account until you want to transfer them to the merchant/seller.

Other updates

  • Added an action that allows you to delete Connected accounts

Added the ability to delete Connected accounts via the API

1 Like

January-24 updates

I have just released detailed documentation on how to use the Stripe Connect - Marketplace plugin.

It contains everything you need to know on how to get up and running with the plugin and how to integrate payments into your marketplace app.

This is in addition to our demo app and playlist of tutorial videos.

1 Like

(more) January-24 updates

Recently released a 2-hour tutorial that shows you loads of different ways you can use the Stripe Connect - Marketplace plugin to manage the payments side of your marketplace app.

Recommend starting here if youā€™ve never used the plugin before :slight_smile:

(more) January-24 updates
Recently released a new feature that allows you to embed Stripe payment forms directly into your Bubble app.

You no longer have to navigate to a Stripe-hosted page if you donā€™t want to!

2024-01-26 15.02.47

You can see an example of how to do this in the pluginā€™s demo app (relevant section is the ā€˜Embedding Checkout Sessions in your appā€™ section)

There are also detailed instructions available in the plugin documentation.

Any questions just let me know :slight_smile:

(more) January-24 updates
Iā€™ve just released a new version of the plugin (2.4.0) that allows you to add free trials when creating Checkout Sessions for subscriptions. You can set the length of the free trial period using the ā€˜Days for Free Trialā€™ field.

For example, if you set it to ā€˜30ā€™:

You user will be given a 30-day free subscription when they initially subscribe:

February-24 Update
Released a tutorial video that shows how to process refunds with the plugin.

Hey @alexcooney5 , thanks again for a great plugin and supporting documentation. Quick question for the refund capability - what happens if the connected account does not have any funds left in the account (if the money has already been transferred from their stripe account to their bank account) and they perform the refund action?

My apologies if this question is covered somewhere already

2 Likes

Hi @gpdmop, thank you for the kind words :slight_smile:

This is a good question and one that I had not previously documented.

When a refund occurs, Stripe will first try to recover the funds from either the Connected accountā€™s Stripe balance or their linked bank account.

If this fails (because there are not sufficient funds in either), Stripe will take the funds from the platform account*.

So ultimately, it is the platform that is responsible for ensuring customers are made whole.

You can read more about it at this link.

Hope that helps and if youā€™ve any other questions just let me know.

*Please note this only applies to Express and Custom Stripe accounts (not standard accounts). The Stripe Connect - Marketplace plugin is currently built around Express accounts, although I may add other account types in the future.

1 Like

Got it, thank you for sharing @alexcooney5! Tough one for me to understand/justify here. Feels odd that the platform would be liable in this case when the express accounts are the ones actually selling the product/service. Makes me wonder if a different account type would be more ideal; when looking at the others though it seems express accounts have many benefits with just this one drawback.

Do you know if Stripe has taken product feedback in the past? Wondering if it could be possible to make the ā€œwhere the refund comes from when the express account doesnā€™t have sufficient fundsā€ configurable (I.e. not sent at all OR pulled from the express accounts connected payout method). Maybe an alternative to this would be them providing a response if the connected account has insufficient funds so that we can inform the end user they need to transfer money back to the express account from their bank account (if this is even possible on the stripe side).