Accepting Stripe Payments in Embeddables
How to accept payments with our deep Stripe integration
Payments in Embeddables are handled via Stripe, with a dedicated Stripe component that is integrated deeply into our platform.
Keys and IDs that you’ll need
- Your Stripe Publishable Key
- A Restricted Key generated in Stripe, with the following scopes/permissions:
Customers
:Write
Payment Intents
:Write
Setup Intents
:Write
Checkout Session
:Write
Credit notes
:Read
Subscriptions
:Write
- Any Price IDs for specific products you want to offer
Setting up Stripe
The following are the minimum steps required to add a Stripe component to your Embeddable:
Generate and share the necessary Stripe keys
- Get your Publishable Key, and generate a Restricted Key with the scopes/permissions listed above, from the API Keys section of your Stripe Dashboard.
- Pass these keys to the Embeddables Team (make sure to share the Restricted Key in a secure way).
Add a Stripe component to your Embeddable
- In the Builder, switch to the checkout page that should contain the Stripe component.
- Select a Container to insert the Stripe component into, or a copmonent that it should be added next to.
- Open the
+
left-hand sidebar, and selectStripe
from the list of components.
Choose the type of payment you want to accept
- Under Checkout mode, select one of the following options:
- Payment: If you’re accepting only one-time payments, or want to place a hold on a user’s card.
- Setup: For setting up a user’s payment method to take payments in the future.
- Subscription: If your line items will include at least one recurring payment.
Please note that Stripe only supports placing a hold on one-time payments, not recurring payments.
Choose which payment methods you want to accept
- Under Payment methods, select the payment methods you want to accept, from the following options:
- Credit card
- Link (Stripe’s own quick purchase login system)
- US Bank Account
- Buy now, pay later services: Afterpay/Clearpay, Klarna, Affirm
You need to have the relevant payment methods enabled in your Stripe account in order for them to appear for users.
Add line items to the checkout
- There are two different types of line item that you can add:
- Price ID: This corresponds to a product and price that you’ve already created in Stripe.
- Custom line item: This lets you manually enter an amount, currency and name for the line item in Embeddables.
- Both types of line item require you to enter a quantity.
- If you need your line items to be dynamic (i.e. change based on the user’s answers, like what plan they select), see below.
Include the customer email address (and, optionally, phone number)
- To insert the user’s given email address into the Stripe checkout, add the key name of the component you use to collect the user’s email, using Templating (e.g.
{{email}}
). - You can optionally collect a user’s phone number, using the same method.
By default, Stripe’s credit card fields will also include Country and Zipcode / Postal Code fields.
These are all Stripe needs for a customer billing address, so you don’t need to provide any billing address fields.
Optional: Additional Stripe configurations
These features are not required in order to successfully accept payments, but they can be useful in different scenarios.
Was this page helpful?