Last updated
Last updated
The Stripe Plugin charges credit cards and handles subscriptions for users. Strong Customer Authentication (SCA) is supported and can be enabled from the plugin menu by selecting “Checkout v3” in the dropdown.
See for more information.
This action charges the current user and prompts them to enter their credit card information. The response from Stripe, e.g., the Stripe charge ID, amount, confirmation, etc., can be accessed in the subsequent actions as 'Result of previous step.' In a failed transaction, the workflow will stop running. See for more details.
Define the email of the user to charge. Often, it will be 'Current user's email.'
Enter the amount to be charged. It can be dynamic using the 'Insert dynamic data' button.
Enter the product name that will appear in the checkout flow and in the email users receive from Stripe.
Enter the description that will appear in the checkout flow and in the email users receive from Stripe.
The image that will appear in the checkout flow.
Enter the currency of the transaction. If the currency is not in the list you can type it.
This is the caption for the button on the Stripe Checkout form. The amount will be added to the caption in Live mode.
Optional, use this to change how this payment will show up on the customer's statement. What you enter will be appended to the "shortened descriptor set in your Stripe account, in the manner of "YOUR-APP*DESCRIPTOR". This overall string has a character limit of 21; anything past that will be truncated. In Stripe's v3 checkout, this field will comprise the entirety of the statement descriptor.
This determines whether to immediately capture the charge. When checked, the charge issues an authorization and will need to be captured later. Uncaptured charges expire in 7 days. You can then capture the charge in your Stripe dashboard.
In the case of a marketplace, define who gets the payment. This is likely the 'Current list thing's creator.' This user must register as a seller for the transaction to process.
You can charge a fee on transactions, but it must a currency amount and not a percentage.You can, however, compute the value in the field using the Composer.
This dropdown element allows you to input your tax rate IDs as static choices or dynamic data from the application database or Option set. In this dropdown menu, choose between Static IDs or Dynamic IDs.
This static input allows you to paste in your Stripe tax rate ID or list of tax rate IDs by separating each entry with a new line. All tax rates entered here will be applied to the user checkout session.
This dynamic input allows you to select a list of tax rate ids dynamically from your application, whether from the database, option set, or other datasource. This selection must evaluate to a list of texts.
By default, Bubble displays an alert informing the user when the action is successful. Deactivate this behavior by deselecting this box if you want to display a custom message instead of the default Bubble message.
This action prompts the user to enter their credit card information without actually charging the card. Use this to delay the payment, for instance, if you are building a crowdfunding-based system. If the user fails to enter their card information, the workflow will stop running.
If you check this box, the current user’s default credit card, if any, will be updated. However, the original credit card will still exist in the current user’s full list of credit cards unless it is explicitly deleted in a separate workflow action. If the box is not checked, the new credit card will be added to the current user’s full list of credit cards, but their default credit card will not change.
By default, Bubble displays an alert informing the user when the action is successful. Deactivate this behavior by deselecting this box if you want to display a custom message instead of the default Bubble message.
This action charges a user who has already entered their credit card information. It does not have to be the current user in this case. If no credit card information is available, the action will fail. The response from Stripe, e.g., the Stripe charge ID, amount, confirmation, etc., can be accessed in the subsequent actions as 'Result of previous step.' In a failed transaction, the workflow will stop running.
Define the user to charge. This user must be signed up already because we need to have their saved credit card information. The user does not need to be logged in for the transaction to happen.
Enter the amount to charge. It can be dynamic using the 'Insert dynamic data' button.
Enter the currency of the transaction. If the currency is not in the list you can type it.
Enter the product name that will appear in the checkout flow and in the email users receive from Stripe.
Enter the description that will appear in the checkout flow and in the email users receive from Stripe.
The image that will appear in the checkout flow.
In the case of a marketplace, define who gets the payment. This is likely the 'Current list thing's creator.' This user must register as a seller for the transaction to process.
You can charge a fee on transactions, but it must a currency amount and not a percentage.You can, however, compute the value in the field using the Composer.
You can optionally specific a card ID to charge. If this field is not filled, the default card of the user will be used.
By default, Bubble displays an alert informing the user when the action is successful. Deactivate this behavior by deselecting this box if you want to display a custom message instead of the default Bubble message.
This action lets you capture a charge that has already been authorized by Stripe. Note that uncaptured charges expire after 7 days, per Stripe's documentation.
Charge ID of the charge you want to capture.
By default, Bubble displays an alert informing the user when the action is successful. Deactivate this behavior by deselecting this box if you want to display a custom message instead of the default Bubble message.
This action creates a draft invoice for the user. It contains all pending invoice items on that user. The drafted invoice cannot be paid or sent until it is finalized.
Define the user to charge. If the user does not have a credit card on file, the action will fail.
If no Subscription ID is given, all pending invoice items for the charged user will be included in the created invoice. Otherwise, the created invoice will include both pending invoice items for that subscription and pending invoice items not associated with any subscription. Billing cycle and regular subscription events associated to that subscription will not be affected.
When the invoice fails to be charged, you can enable this feature to allow Stripe's Smart Retries to automatically choose optimal times to retry failed payments. If set to false, no actions will be taken to advance the invoice's state automatically.
This action updates the details of an invoice.
Only invoice drafts can be edited.
The ID of the invoice you want to update.
Extra string of text that can be added to the invoice. Visible to the recipient of the invoice. This field is referenced as "Memo" in the Stripe Dashboard.
Controls whether Stripe will perform automatic collection of the invoice.
In v3 of the plugin, the registering seller will be directed to a Stripe-hosted seller onboarding experience.
At this time, only Connect Standard account onboarding is supported with this method.
Prefill information to ease the process with Stripe. Enter the email the user is likely to use.
Prefill information to ease the process with Stripe. Enter the URL the user is likely to use.
Prefill information to ease the process with Stripe. Enter the name the user is likely to use.
Prefill information to ease the process with Stripe. Enter the address the user is likely to use.
Prefill information to ease the process with Stripe. Enter the product category the user is likely to sell.
Prefill information to ease the process with Stripe. Enter whether the user is likely to sell a physical product.
Prefill information to ease the process with Stripe. Enter the type of product the user is likely to sell.
This action subscribes a user to a plan, which was previously defined in Stripe. Then, the card will be charged on a regular basis. If the user is already on a plan, their subscription will be updated to the new plan. If the user fails to enter their credit card information, the workflow will stop running.
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.
By default, the 'Subscribe user' action applies to the currently logged in user. To apply the operation to another user, uncheck this box.
Define the user to subscribe to a plan. This user must be signed up already because we need to have their saved credit card information. The user does not need to be logged in for the transaction to happen.
If you check this box, the current user's subscription, if any, will be updated. If the box is not check, a new subscription will be added to the user.
If you want to update an existing subscription, you can define here the subscription ID (returned by Stripe). If this is empty, the action will modify the first subscription returned by Stripe.
By default, the plan is chosen in a dropdown menu. To make the plan dynamic, check this box.
You can either pick one plan (most common case), or include more than one plan in the subscription.
Once you enter your keys in the Stripe section in the Plugins Tab, we fetch the plans you created with Stripe to populate this list. Select the plan to subscribe the user to. If the plan is dynamic, the value must be one of the plans defined in your Stripe account.
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.
Enter the quantity to apply to the plan. In most cases it will be 1, but to have variable pricing on the plan, use this.
You can define a list of plans/quantity to add to the subscriptions
To provide discounts to certain customers, create coupon codes in the Stripe Dashboard. Check this box to enter a coupon ID.
Enter the coupon ID. It can be dynamic information coming from an input.
This dropdown element allows you to input your tax rate IDs as static choices or dynamic data from the application database or Option set. In this dropdown menu, choose between Static IDs or Dynamic IDs.
This static input allows you to paste in your Stripe tax rate ID or list of tax rate IDs by separating each entry with a new line. All tax rates entered here will be applied to the user checkout session.
This dynamic input allows you to select a list of tax rate ids dynamically from your application, whether from the database, option set, or other datasource. This selection must evaluate to a list of texts.
Enter the tax percentage, which should be a positive decimal between 1 and 100. It can be dynamic using the Composer. This represents the percentage of the subscription invoice subtotal that will be calculated and added as tax to the final amount for each billing period. For example, a plan that charges $10/month with a tax percent of 20.0 will charge $12 per invoice.
Enter the date representing the end of the trial period. After this time, the customer will be charged. When selected, this setting overrides the default trial period of the plan the customer is subscribed to.
By default, Bubble displays an alert informing the user when the action is successful. Deactivate this behavior by deselecting this box if you want to display a custom message instead of the default Bubble message.
This action modifies email and address for an existing Stripe customer.
By default, the 'Subscribe user' action applies to the currently logged in user. To apply the operation to another user, uncheck this box.
Define the user to subscribe to a plan. This user must be signed up already because we need to have their saved credit card information. The user does not need to be logged in for the transaction to happen.
Enter the new email user would like to update to
Enter the new address user would like to update to
This action creates a coupon which can be used by any Stripe customer.
Name of the coupon displayed to customers
Amount (in the currency
specified) that will be taken off via the coupon
Percentage that will be taken off via the coupon
How long a customer can apply the coupon for. Choose one from forever
, once
, and repeating
.
If duration
is repeating
, the number of months the coupon applies.
After this date, the coupon will be no longer valid
Enter the currency of the coupon. If the currency is not in the list you can type it.
Maximum number of times a customer can redeem the coupon for
This action applies a coupon/discount to the current user's subscription
By default, the 'Apply a coupon to the user's subscription' action applies to the currently logged in user. To apply the operation to another user, uncheck this box.
Define the user to apply a coupon to. This user must be signed up already because we need to have their saved credit card information. The user does not need to be logged in for the transaction to happen.
If you want to update an existing subscription, you can define here the subscription ID (returned by Stripe). If this is empty, the action will modify the customer object in Stripe and all plans will have the coupon applied to them.
Enter the date when the trial period should end. If left empty, no trial period will apply.
By default, Bubble displays an alert informing the user when the action is successful. Deactivate this behavior by deselecting this box if you want to display a custom message instead of the default Bubble message.
This action creates an invoice item for the user. The invoice item will be paid with the next invoice.
Note: Since the introduction of the Bubble Stripe plugin, Stripe has clarified and updated some of its terminology. For this plugin, what Bubble calls a "line item" is what Stripe calls an "invoice line item" - these have Stripe IDs starting with 'il_' and are entries on an existing invoice. The change Stripe made was to have its own concept of "line items" which correspond to future entries on the next invoice; these Stripe IDs start with 'ii_' and can exist separately from an invoice. Bubble still uses its original definition of 'line items' (i.e. as Stripe's 'invoice line items') for the time being.
Define the user to charge. If the user does not have a credit card on file, the action will fail.
Enter the amount to charge. It can be dynamic using the 'Insert dynamic data' button.
Enter the currency of the transaction. If the currency is not in the list you can type it.
Enter the description that will appear in the email users receive from Stripe.
To add the invoice item to an existing subscription, specify the Stripe Subscription ID. This is an optional field.
This dropdown element allows you to input your tax rate IDs as static choices or dynamic data from the application database or Option set. In this dropdown menu, choose between Static IDs or Dynamic IDs.
This static input allows you to paste in your Stripe tax rate ID or list of tax rate IDs by separating each entry with a new line. All tax rates entered here will be applied to the user checkout session.
This dynamic input allows you to select a list of tax rate ids dynamically from your application, whether from the database, option set, or other datasource. This selection must evaluate to a list of texts.
This action finalizes a draft invoice and immediately charges a pending invoice. It uses the card the user has on file.
Enter the Stripe invoice ID to charge.
Enter the Stripe invoice ID to cancel.
Select the invoice's new status (void or uncollectible)
This action fully refunds a previously created charge that has not already been refunded.
Charge ID of the charge you want to refund.
This action cancels a subscription with Stripe. The card will not be charged anymore.
By default, the 'Cancel Plan' action applies to the currently logged in user. To apply the operation to another user, uncheck this box.
Define the user to unsubscribe. This user must be signed up already. The user does not need to be logged in for the transaction to happen.
If this box is checked, all subscriptions on the user will be canceled. If not, you will be able to specify a subscription ID.
If you want to cancel an existing subscription (and keep the other subscriptions running), you can define here the subscription ID (returned by Stripe).
By default, Bubble displays an alert informing the user when the action is successful. Deactivate this behavior by deselecting this box if you want to display a custom message instead of the default Bubble message.
By default, plans will be canceled immediately when using this action (set to Immediately). If you would prefer to wait until the end of the subscription’s billing period to cancel the user's plan, you can set the cancelation mode to End of billing period.
This will update the subscription interface in Stripe with the upcoming cancelation date, shown as 'Cancels [Date]', where '[Date]' is the end of the plan's billing period:
The setting End of billing period is an advanced setting. It is important that you have set up a Stripe webhook so that you can be notified by Stripe of changes and respond to the event ‘customer.subscription.deleted’. This event is fired at the end of the billing period when Stripe ends the subscription, however, your web app will not update unless you process the webhook event.
This action adds a plan to an existing subscription.
Define here the subscription ID (returned by Stripe) to add the plan to.
Once you enter your keys in the Stripe section in the Plugins Tab, we fetch the plans you created with Stripe to populate this list. Select the plan to subscribe the user to. If the plan is dynamic, the value must be one of the plans defined in your Stripe account.
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.
Enter the quantity to apply to the plan. In most cases it will be 1, but to have variable pricing on the plan, use this.
This action modifies a plan to an existing subscription that has more than one plan.
Define here the subscription item D (returned by Stripe) to update.
Once you enter your keys in the Stripe section in the Plugins Tab, we fetch the plans you created with Stripe to populate this list. Select the plan to subscribe the user to. If the plan is dynamic, the value must be one of the plans defined in your Stripe account.
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.
Enter the quantity to apply to the plan. In most cases it will be 1, but to have variable pricing on the plan, use this.
This action deletes a plan to an existing subscription that has more than one plan. The subscription will still keep going after the deletion.
Define here the subscription item ID (returned by Stripe) to delete.
This action modifies the current user and makes a card the new default payment mean.
Define here the card ID (returned by Stripe) to use.
This action deletes a credit card on the current user.
Define here the card ID (returned by Stripe) to delete.
This user call retrieves all user invoices based on the email of the user.
Because of limitations associated with the Stripe API, we can only retrieve up to 100 invoices per user at this moment.
Note: This action does the same thing the legacy action "Adjust a user's balance" did. It has been renamed to more accurately reflect the action it performs - setting an absolute value rather than adjusting an existing value.
Define the user that corresponds to the Stripe customer whose balance you'd like to set. The user must already be a Stripe customer in your system.
Specify the absolute value of the above user's balance. For example, setting the value to $0 will wipe out any positive (amount owed) or negative (amount credited) value for the current customer balance.
Define the user that corresponds to the Stripe customer whose balance you'd like to adjust. The user must already be a Stripe customer in your system.
Select the type of adjustment you would like to issue to the above user. The options are credit, meaning you owe them money, or debit, meaning they owe you money.
Specify the amount you would like to credit or debit from the user's Stripe credit balance, depending of the type of adjustment you selected above.
Specify the currency (USD, EUR, etc.) of the amount. This currency must match the one set by the customer. If the customer’s currency is not set, it will be updated to this value.
Enter the amount to send. It can be dynamic using the 'Insert dynamic data' button.
Enter the currency of the transaction. If the currency is not in the list you can type it.
Enter the User that the money will be sent to. Note, the user must be a registered seller with a valid Connected account for the transfer to be valid.
Optionally enter a description of the Transfer to be shown on the record of the transaction.
Optionally enter the pre-authorized charge ID as the source of this transfer instead of the parent Stripe account balance.
This action sends a payout in the amount specified from your Stripe account balance to the bank account linked to your Stripe account.
Enter the amount to send. It can be dynamic using the 'Insert dynamic data' button.
Enter the currency of the transaction. If the currency is not in the list you can type it.
Enter the identifier of the value list which the created item will be added to.
Enter the value of the item.
Action
Creates a tax ID in Stripe associated with the current user.
Fields:
value: required; value of the tax id. (string)
Action
Deletes a tax ID associated with the current user. If the tax ID doesn’t exist, we do nothing.
Fields:
Tax ID: required; the identifier of this tax ID. (string)
Action
Returns a list of all of the current user’s tax IDs.
Fields:
Limit: optional; max is 5 per customer
User data call (i.e., Current User’s Stripe Tax IDs)
Returns a list of all of the current user’s tax IDs.
Fields:
Limit: optional; max is 5 per customer
External data call
Returns a tax ID
Fields:
Tax ID: required; the identifier of this tax ID. (string)
Note: Stripe has two environments (like Bubble) Live and Test. If both environment keys are set below, your Bubble app will use the development (test) keys in development and the Live keys in Live.
Enter the Client ID from the Stripe Live environment. This information can be found in the Stripe Dashboard > Settings > Connect settings.
Note: This key is only relevant if you will be using Stripe Connect functionality.
Enter your Secret Key from the Stripe Live environment. This information can be found in the Stripe Dashboard > Developers > API Keys settings.
Enter your Publishable Key from the Stripe Live environment. This information can be found in the Stripe Dashboard > Developers > API Keys settings.
Enter the Client ID from the Stripe Test environment. This information can be found in the Stripe Dashboard > Settings > Connect settings.
Enter your Secret Key from the Stripe Test environment. This information can be found in the Stripe Dashboard > Developers > API Keys settings.
Enter your Publishable Key from the Stripe Test environment. This information can be found in the Stripe Dashboard > Developers > API Keys settings.
Add a default image to be included in your Stripe Checkout sessions.
Enter a default product name that will appear in the checkout flow and in the email users receive from Stripe.
Select the version of the Stripe Plugin that you will like to use.
Note: v3 is strongly recommended as v2 relies on an outdated version of Stripe Checkout and is no longer supported.
This enables Link payments on any Stripe Checkout page that the user is directed to. If a user completes a transaction using Link, then that same payment method will be used for future transactions executed by the "Charge a user using saved CC" action.
Check this box if you would like to collect the user's address when collecting a customer's payment information during a Checkout session.
Adding your domain to the Stripe Dashboard
Creating DNS records to point at Stripe
Verifying your DNS setup
Setting your domain as active
On the Bubble side, the Bubble-created official Stripe Plugin supports this feature, so once you’ve set things up on the Stripe and the DNS side, they’ll work in your app as well as long as you are using Checkout v3 within the plugin. The following actions will be affected:
Charge the current user
Subscribe the user to a plan
Collect the user’s CC information
Privacy rules currently bundle certain fields under “Social Networks,” including Stripe customer data. If you would like to get the customer ID and subscription information, this field will need to be enabled. This privacy rule controls plugin-borne fields, most commonly social network signup fields. When you sign up with an OAuth provider like Facebook, for example, this controls your Facebook name and profile picture.
By default, iFrames are blocked for your Bubble application, which will cause the Stripe v2 checkout to navigate to a broken page on mobile if this setting is not updated.
The webview browser on Android is not supported by Stripe’s legacy Checkout (v2), which can make it fail. Given that the webview controls its own user agent, however, you can “pretend” that your browser is another one by setting your webview’s user agent to another browser’s, for example:
Desktop Chrome
webView.getSettings().setUserAgentString("any user agent string");
iOS 9 webview
webView.getSettings().setUserAgentString("Mozilla/5.0 (iPhone; CPU iPhone OS 9_3 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13E233 Safari/601.1");
You can experiment with similar settings at the top of your Android application, if wrapping your Bubble app.
If both dev and live keys are set, your app will be interacting with Stripe's test environment when you are in development mode, and Stripe's live environment when you deploy to live. If your Stripe plan ids are different between your test mode and live mode, and you are selecting a plan id in dev, this can lead to errors in live as this plan id will not exist in this environment. Consider adjusting your Stripe plans to have matching ids between environments. If this is not possible, try dynamically setting the plan id with Isn't live version:formatted as text
and set the text value of "yes" to the dev plan id and "no" to the live plan id.
Stripe Plugin version v2 uses an older version of the Stripe Checkout API that has limited language support, including for languages like Portuguese. Consider upgrading to v3 for more robust language support. When an unsupported language is detected, v2 will default to English.
When setting up a marketplace, check this box so payment will go to another user instead of your own Stripe account. For this to work, you must build a flow where users can , connecting their Stripe account to get paid.
Check this box to allow your users to enter a promotion or discount code when they are sent to checkout. Coupon codes can be created in your Stripe Dashboard. See for more details.
Check this box to add a tax rate or list of tax rates to the user's invoice. Before you check this box, be sure to create your objects in your Stripe Dashboard. If the transaction payee is another user, make sure the Tax Rate object is from the Connected account, not your own Stripe account.
While Stripe offers both Fixed & Dynamic Tax rates, the Stripe Plugin only supports Fixed tax rates at this time. See to learn more about Fixed vs Dynamic tax rates.
If you'd like to specify a single tax rate ID, use the operator. See the example below:
If your tax rate IDs are stored in an named Tax Rates, and you'd like to select a single option named "Sales Tax" with the attribute "ID", your dynamic expression would look like:Sales Tax:converted to list's ID
When setting up a marketplace, check this box so payment will go to another user instead of your own Stripe account. For this to work, you must build a flow where users can , connecting their Stripe account to get paid.
This action enables users to become merchants on your platform. For example, if you want to build a marketplace where users can sell their work to someone else, then they need to be able to credit their account when a transaction occurs. Your app will usually take a commission, which can be set when setting up the actions "" and "". You must create an application on Stripe to enable this type of transaction.
See for more information. Important: You need to set the redirection URIs in Stripe as 'https://bubble.io/poststripeauth' or 'https://d##.bubble.is/poststripeauth' for Dedicated environments in order for this to work. In addition, be sure to add the Connect client ID to your Stripe Plugin settings. Both the client ID and redirect URI settings can be found in your Stripe Dashboard > Settings > Connect settings.
Select the payment behavior as specified in the Stripe documentation. See for creating a new subscription and for updating an existing subscription.
Check this box to allow your users to enter a promotion or discount code when they are sent to checkout. Coupon codes can be created in your Stripe Dashboard. See for more details.
Check this box to add a tax rate or list of tax rates to the user's invoice. Before you check this box, be sure to create your objects in your Stripe Dashboard.
While Stripe offers both Fixed & Dynamic Tax rates, the Stripe Plugin only supports Fixed tax rates at this time. See to learn more about Fixed vs Dynamic tax rates.
If you'd like to specify a single tax rate ID, use the operator. See the example below:
If your tax rate IDs are stored in an named Tax Rates, and you'd like to select a single option named "Sales Tax" with the attribute "ID", your dynamic expression would look like:Sales Tax:converted to list's ID
Check this box to add a tax rate or list of tax rates to the user's invoice item. Before you check this box, be sure to create your objects in your Stripe Dashboard.
While Stripe offers both Fixed & Dynamic Tax rates, the Stripe Plugin only supports Fixed tax rates at this time. See to learn more about Fixed vs Dynamic tax rates.
If you'd like to specify a single tax rate ID, use the operator. See the example below:
If your tax rate IDs are stored in an named Tax Rates, and you'd like to select a single option named "Sales Tax" with the attribute "ID", yo
This action cancels an invoice by setting its status to void or uncollectible. For more information, check out the Stripe documentation for and .
Please see our guide to in Bubble and Stripe’s guide to for more information.
This action uses the to set an absolute value for a customer's balance.
This action uses the to increase (debit) or decrease (credit) a user's Credit Balance. This action can be used to issue a credit to a user that will be documented as a Transaction on their account and applied to their next invoice. See for more detail.
This action uses the to send funds from your Stripe account to a Connected (seller) account.
Optionally enter a text identifier for this individual transaction as a part of a group of transactions. More information on transfer groups can be found in the .
This button will appear if not all of your Live keys (, , ) are filled out in the Stripe plugin settings. Clicking this button will bring you to the plugin settings page so you can fill them out. Refer to the section below for more information on these keys.
This action creates a new object, which is added to the specified parent value list.
This button will appear if not all of your Live keys (Client ID, Secret Key, Publishable Key) are filled out in the Stripe plugin settings. Clicking this button will bring you to the plugin settings page so you can fill them out. Refer to the for more information on these keys.
type: required; type of the tax id. (The available options are )
You will need an active Stripe account before you can set up the Stripe plugin. Go to to create an account.
Yes, you can choose to use a custom domain with Stripe Checkout and your Bubble app. This means you can send your customers to (or whatever subdomain you want to use) when they are transacting on your app instead of the default . Note that Stripe charges an extra fee for custom domains.
In order to get a custom domain working, you’ll want to follow the steps listed in , namely:
- this article series covers how to understand and plan for different types of payments