Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Developer tools
Get started
Payments
Finance automation
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Overview
About Stripe payments
Upgrade your integration
Payments analytics
Online payments
OverviewFind your use caseManaged Payments
Use Payment Links
Build a checkout page
    Overview
    Quickstarts
    Customize look and feel
    Collect additional information
    Collect taxes
    Dynamically update checkout
    Manage your product catalog
    Subscriptions
    Manage payment methods
    Let customers pay in their local currency
    Add discounts, upsells, and optional items
      Add discounts
      Configure subscription upsells
      Configure cross-sells
      Configure optional items
      Let customers complete orders for free
      Display yearly prices in monthly terms
    Set up future payments
    Save payment details during payment
    Manually approve payments on your server
    After the payment
    Elements with Checkout Sessions API beta changelog
    Migrate from legacy Checkout
    Migrate Checkout to use Prices
Build an advanced integration
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 Elements
Payment scenarios
Custom payment flows
Flexible acquiring
Orchestration
In-person payments
Terminal
Other Stripe products
Financial Connections
Crypto
Climate
HomePaymentsBuild a checkout pageAdd discounts, upsells, and optional items

Cross-sells

Enable customers to purchase complementary products at checkout by using cross-sells.

Copy page
Cross-sell product in Checkout

A cross-sell is a product that you can add to an order using Checkout.

Cross-sells enable customers to optionally purchase other related products using Checkout. Cross-sells can increase your average order value and revenue. For Checkout to offer a product as a cross-sell, the product must meet the following criteria:

  • The product must be associated with only a single Price.
  • The currency of the cross-sell product’s price must match the currency of the other prices in the Checkout Session.
  • If the cross-sell product’s price type is recurring, the Checkout Session must be in subscription mode and its recurring interval must match the recurring interval of the other prices in the Checkout Session.
  • If you’re using subscription upsells, cross-sells only support products with non-recurring prices. For example, you can cross-sell a one-time setup fee while also upselling a monthly subscription to annual billing.
  • If you’re using automatic taxes, cross-sells only support products with prices with specified tax behavior. You can either set tax behavior for a price or set the default tax behavior for all prices under Tax Settings in the Stripe Dashboard.

Create a cross-sell

Configure a cross-sell on the Product details page

Configure a cross-sell on the Product details page.

You can configure a cross-sell in the Dashboard on the Product details page. Visit the Product details page for the product from which you want to cross-sell another complementary product. You’ll see a Cross-sells section with a dropdown menu containing your other Products. Select a Product with a single Price. After you configure it, all eligible Checkout Sessions cross-sell the product selected from the dropdown menu. For example, a customer purchasing a ‘Togethere Professional’ subscription would be cross-sold the ‘Professional Services: Deployment’ product.

Checkout flow

In Checkout, buyers see an option to add the cross-sell to their purchase. If buyers add the cross-sell to the Checkout Session, they can also remove it. If they remove it, the option to add the cross-sell appears again.

Note

The quantity of cross-sell line items can’t be adjusted. The current maximum is 1.

Customer preview.

Retrieve Checkout Session line items

After a customer adds a cross-sell, the line_items for the Checkout Session update to reflect the addition. When fulfilling your order using the checkout.session.completed webhook, make sure to retrieve the line items.

Remove a cross-sell

You can remove a cross-sell on the Product details page. After you remove it, the product won’t be offered to any new Checkout Sessions.

Remove a cross-sell from the Product details page

Remove a cross-sell.

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