Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Revenue
Platforms and marketplaces
Money management
Developer resources
Overview
About Stripe payments
Upgrade your integration
Payments analytics
Online payments
OverviewFind your use caseUse Managed Payments
Use Payment Links
Use a prebuilt checkout page
Build a custom integration with Elements
    Overview
    Compare Checkout Sessions and PaymentIntents
    Quickstart guides
    Design an advanced integration
    Customize look and feel
    Manage payment methods
    Collect additional information
    Build a subscriptions integration
    Dynamic updates
    Add discounts
    Collect taxes on your payments
    Redeem credits
    Let customers pay in their local currency
    Save and retrieve customer payment methods
    Send receipts and paid invoices
    Manually approve payments on your server
    Authorize and capture a payment separately
    Elements with Checkout Sessions API beta changelog
Build an in-app integration
Payment methods
Add payment methods
Manage payment methods
Faster checkout with Link
Payment interfaces
Payment Links
Checkout
Web Elements
In-app Payments
Payment scenarios
Handle multiple currencies
Custom payment flows
Flexible acquiring
Orchestration
In-person payments
Terminal
Beyond payments
Incorporate your company
Crypto
Agentic commerce
Financial Connections
Climate
Understand fraud
Radar fraud protection
Manage disputes
Verify identities
HomePaymentsBuild a custom integration with Elements

Build an advanced payments integration

Learn how to create a custom payments integration using Stripe Elements and the Checkout Sessions API or the Payment Intents API.

Use the Stripe Elements user interface with the Checkout Sessions API or the Payment Intents API to create a fully customized payments integration. To understand which API is better for your business, compare the Checkout Sessions and Payment Intents APIs.

ELEMENTS
Build a custom integration with full UI control

Use Stripe Elements to start building your own custom integration to accept payments.

Start building your payments integration

Features and availability

 Checkout Sessions APIPayment Intents API
UIElementsElements
APICheckout Sessions PaymentIntents
Integration effort
Low coding
Most coding
HostingEmbed on your site Embed on your site
UI customizationExtensive customization with Appearance API Extensive customization with Appearance API
PAYMENT METHODS1
Dynamically display 40+ payment methods
Manage payment methods in the Stripe Dashboard without coding
Faster checkout with Link
Custom payment methods

1For detailed support for each payment method, see learn more about payment methods.

Compare payment scenario support

See how Stripe supports different payment scenarios by each integration path.

 Checkout Sessions APIPayment Intents API
Set up future payments
Save payment details during payment
Place a hold on a payment method
Finalize payments on your server
Multi-step payment flow
FLEXIBLE PAYMENT SCENARIOS1
Multicapture
Overcapture
Extended authorization
Incremental authorization

1 Only available on IC+ pricing.

Customize checkout

Customize look and feel

Customize the appearance and behavior of your checkout page.

Manage payment methods

Present the most applicable payment methods for each customer and each location.

One-click checkout options

Show multiple one-click payment buttons with a single component.

Send email receipts

Send payment or refund receipts automatically.

Collect different payment details

Collect additional information

Collect shipping and other customer info during checkout.

Collect taxes

Use Stripe Tax APIs to implement tax calculations in your custom integration.

Flexible payment scenarios

Support complex payment flows through flexible and customizable acquiring features.

Choose when you collect payment

Subscriptions

Create and manage subscriptions to accept recurring payments.

Set up future payments

Save payment details and charge your customers later.

Save payment details during payment

Save payment details during a payment.

Was this page helpful?
YesNo
  • Need help? Contact Support.
  • Join our early access program.
  • Check out our changelog.
  • Questions? Contact Sales.
  • LLM? Read llms.txt.
  • Powered by Markdoc