Stripe Marketplace Express Plugin

Demo to preview the settings

Introduction

Creating a web app pretty much always requires an integration of a payment system. These systems might be rather simple or very complex, depending on your type of app. Stripe is one of the best software platforms for that, whether you’re creating a subscription service, an on-demand marketplace, an e-commerce store, or a crowdfunding platform. Stripe’s meticulously designed APIs and unmatched functionality help you create the best possible product for your users.
Right now the solutions regarding Stripe API that are offered for Bubble users are very limited and require additional development for the functionalities you want your platform to have. Not to mention that the existing solutions are not very well optimized when it comes to developing a more complex service.
This is where we decided to create a plugin that offers pretty much all the tools for setting up a medium to high-complexity payment system with optimization and high performance in mind. You won't need to install multiple plugins or develop additional basic functionalities that other plugins are lacking.
Also, we minimized the number of action calls to the minimum for achieving a faster performance and a more clean workflow. And if you still don't find what you need don't worry we are constantly updating the plugin with new functionalities.
Stripe Marketplace is SCA -Ready plugin that comes with the SCA element token to authenticate, the online payments flow requires the use of 3D Secure for card payments.

Prerequisites

You must have an account with Stripe to interact with the Stripe API. Create your development account at https://dashboard.stripe.com/

Tutorial

Stripe Marketplace Express Plugin Tutorial
Stripe Marketplace Express Plugin Tutorial

Setup requirements

First, you will need to go to stripe.com and register an account.
After you have successfully verified your email address and activated your account, under the Activate your account tab, you can start setting up stripe features you need.
Image without caption
After that, you will need to set up the keys for the plugin. To find the keys go to your stripe dashboard and find API keys under the Developers tab. You need to copy the Publishable and Secret keys both for live and development versions.
Make sure when adding the secret keys to the plugin to add text 'Bearer' before the key (do this just for the secret key) to use it in plugin settings.
Image without caption
Also, make sure you have enabled stripe Connect (Build a platform or marketplace).
Image without caption
Once you've got the keys from Stripe dashboard, for both Live and Development versions place them in Plugins Settings Tab for the Stripe Marketplace Plugin, which should look like this:
Image without caption

Plugin calls & elements

Elements

This plugin has 2 elements:
  • One is called Stripe Marketplace Token. It is used for creating a bank account or card token.
Image without caption
Note: You just have to place the Stripe Marketplace Token on the page and call it from within the workflow when you are trying to convert a form into the token.
Using the Stripe Marketplace Token you can create:
  • a credit card token
  • a bank account token
  • PII token
Image without caption
Note: To use the token you will have to add another workflow that will run when the token is created.
Create ID Number Token Use Create ID Number Token action to convert personally identifiable information (PII) into a single-use token for account identity verification.
Fields:
Title
Description
Type
Personal ID number
The personal ID number. Example: 123131185
text
There you can use the token to create a customer and assign him a credit card, create a stripe seller, or make a payment using the token you have created.
Image without caption
Also, you can add an additional workflow that will check for errors during the token creation thus giving you the option to set up a custom solution for the users.
  • Another element is called SCA. It is primarily used to meet Strong Customer Authentication requirements when setting up the payment process.
Image without caption
Note: To use the SCA actions you will need to place the SCA element on the page.
Using the SCA you can:
  • access a previously created Session which is related to pretty much all other SCA-related action calls

Stripe Marketplace Token Action Calls

All the calls that have multiple fields to be filled in were developed to contain all the necessary parameters stripe requires. Some of them might have a lot of fields but the idea is that you can choose what you want to be filled in while leaving the others blank. This way we maximized the performance of sending requests by having at maximum only 1 being sent while still giving you to option to choose what your request will contain. Also when using an action call, check the documentation for each field it has, for a better understanding of how it works.

Create express/standard/custom account

Connect express/standard account (Deprecated)

Complete express/standard account connection

Create a seller - Individual

Update a seller - Individual

Create a seller - Company

Update a seller - Company

Create a person

Update a person

Delete a seller

Create a file

Create a customer

Update a customer

Create a card

Delete a card

Delete a bank account

Platform charge a customer (Create a charge)

Create a refund

Seller charge a customer

Link a customer to a seller

Retrieve a customer

Retrieve a seller

Retrieve all charges

Retrieve all payouts

Retrieve a seller's balance

Create a subscription

Update a subscription

Retrieve a subscription

Create dashboard link (for express accounts only!)

Retrieve all invoices

Creating separate charges and transfers

Calculate tax

Create a tax transaction from a calculation

Retrieve a tax transaction

Cancel a refund

Update a bank account

Create an account link

SCA Actions

Create a session (SCA related)

Creating destination charges (SCA related)

Go to checkout (SCA related)

Clone a customer's payment method (SCA related)

Attach a payment method to a customer (SCA related)

Detach a payment method from a customer (SCA related)

Create a payment intent (SCA related)

Confirm a payment intent (SCA related)

Capture a payment intent (SCA related)

Retrieve a session (SCA related)

Retrieve a setup intent (SCA related)

Retrieve a customer's payment methods (SCA related)

Retrieve all payment intents (SCA related)

Create a billing portal session (SCA related)

Data Calls

Retrieve a seller

Retrieve a customer

Retrieve all charges

Retrieve all payouts

Retrieve a setup intent

Retrieve all payment intents

Retrieve a session

Retrieve a seller's balance

Retrieve all invoices

Retrieve a customer's sources

Retrieve a customer's payment methods

Retrieve a payment intent

Retrieve all coupons

Retrieve a price/plan

Retrieve all prices

Retrieve a refund

Events

Title
Description
Card Token Created
When card token was created
Bank Account Token Created
When Bank Account Token Created was created
ID Number Token created
When ID Number Token was created
Error
When Error

States

Title
Description
Card Token
The created card token.
Bank Account Token
The created bank account token
Status code
Error Code
Error Message
The Error Message.
Error Type
Card ID
The created card id.
Client IP
IP address of the client that generated the token.
Created
Time at which the object was created. Measured in seconds since the Unix epoch.
PII Token
Creates a single-use token that represents the details of personally identifiable information (PII). This token can be used in place of an id_number in Account or Person Update API methods. A PII token can be used only once.
Livemode
Has the value true if the object exists in live mode or the value false if the object exists in test mode.
Used
Whether this token has already been used (tokens can be used only once).

Changelogs

Update 30/10/20 -

  • Added the retrieve of invoices functionality, improved capture of payment intents, and creation of a session action calls

Update 09/02/21-

  • Improvement calls with PII Token

Update 06/04/21 -

  • Added separate calls for retrieving customers’ cards & payment methods.

Update 04/10/21 - Version: 1.42.0.

  • Added the option to use coupons when creating a session in payment mode & other minor fixes

Update 28/07/22 - Version: 1.47.0.

  • "Fixed Error event"

Update 13.11.22 - Version: 1.55.0.

  • Fixed the "Create a transfer" action

Update 19.12.22 - Version: 1.56.0.

  • Added "Creating destination charges" action

Update 03.01.23 - Version: 1.57.0

  • Fixed "Creating destination charges" action

Update 10.01.23 - Version: 1.58.0

  • Fixed "Creating destination charges", and "Go to checkout" actions

Update 20.01.23 - Version: 1.59.0

  • Fixed "Connect express/standard account" action

Update 23.01.23 - Version: 1.61.0

  • Fixed "Creating destination charges" action

Update 23.01.23 - Version: 1.62.0

  • minor edits

Update 1.02.23 - Version: 1.63.0

  • minor fixes

Update 12.04.23 - Version 1.68.0

  • Updated "Go to checkout" action

Update 10.08.23 - Version 1.78.0

  • Added a "Stripe-Account" field for the "Create a customer" action.

Update 17.08.23 - Version 1.80.0

  • Added "Retrieve a refund", and "Cancel a refund" acton calls and minor fixes

Update 05.09.23 - Version 1.81.0

  • Added "Currency" field in "Create Card Token" action

Update 14.09.23 - Version 1.84.0

  • Added "Owners provided" field in the "Update a seller - Company" action.

Update 22.10.23 - Version 1.91.0

  • Fixed "Create a card" action call

Update 11.01.24 - Version 1.96.0

  • Fixed the "Create a session" action and some API calls

Update 24.01.24 - Version 1.99.0

  • Fixed "Send an invoice" action

Update 02.02.24 - Version 1.100.0

  • Fixed the "Update a customer" action

Update 27.03.24 - Version 1.101.0

  • Added “Create express/standard/custom account” action

Update 16.05.24 - Version 1.103.0

  • Added "Payment method types" field in "Create a session" action
Share
Content