Early access

Present customers with a streamlined upsell checkout

Open a checkout designed for upsells to encourage customers to buy additional items after their initial purchase, with one-click payments and reduced friction that boosts conversion.

What's new?

We've released upsell checkouts in early access, a specialized purchase flow designed to capture additional sales immediately after a customer completes an initial purchase.

Upsell checkouts are optimized to minimize friction and maximize conversion by reusing customer details and payment information from the previous transaction. When customers saved their payment method during the initial purchase and the upsell occurs within the same session, they can complete purchases with one click.

Upsell checkouts work with inline, one-page checkouts and support four one-click payment methods: card, PayPal, Apple Pay, and Google Pay.

Access to upsell checkouts is limited to users who are part of our early access program. If you're interested in joining the program, review this guide and email us at sellers@paddle.com to apply. We'll reach out when space is available if you meet the program requirements.

Illustration of the flow for an upsell checkout. The first is a standard checkout flow for the initial transaction. The second is a streamlined flow for the purchase of an upsell product with one-click payment and a skip button.

How it works

Previously, encouraging customers to purchase additional items after an initial transaction meant opening a new standard checkout flow. Customers had to reenter their details or were taken away from the post-purchase moment, creating friction that reduced conversion.

Now, you can open a streamlined upsell checkout for follow-up purchases. Paddle automatically reuses customer details, the payment method, and consent acknowledgments from the initial purchase to present a one-click purchase experience.

To open a checkout for an upsell, pass an upsell object with the transactionId of the previous transaction to Paddle.Checkout.open() when the variant is one-page and display mode is inline. Customer, address, and business data is automatically reused from the original purchase.

Upsell checkouts show a "No thanks" skip button so customers can decline the offer. To hide the skip button, pass upsell.settings.showSkipButton: false.

When clicked, Paddle.js emits a new checkout.upsell.canceled event, but doesn't perform any action. You can listen and handle what happens next, like redirecting customers, closing the checkout, or presenting an improved offer.

Customers get a streamlined, one-click checkout experience when two conditions are met:

1. Within same session

The upsell checkout is opened within 5 minutes of the original transaction completing.

If met: The checkout automatically uses the customer's existing details and hides disclosures and consent options already shown and confirmed during the initial purchase.

If not met: The checkout falls back to a standard inline checkout with the 'No thanks' skip button still present. If payment methods are saved and the customer authenticated, they're still shown and selectable, but not with the one-click experience.

2. Payment method saved

The customer saved their payment method, or used Apple Pay or Google Pay, during the initial purchase.

If met: The checkout automatically uses the customer's previously used and/or saved payment method for one-click purchasing.

If not met: The customer must reenter their payment method details, but the checkout still automatically uses the customer's details and hides disclosures and consent options already shown and confirmed during the initial purchase. The 'No thanks' skip button is still present.

Customers must be authenticated with a customerAuthToken, or allowedPaymentMethods must be set to ['apple_pay'] or ['google_pay'] respectively, to get the one-click payment experience.

Checkout events now include an upsell object when the checkout is opened as an upsell flow. The object contains the original transaction ID and a sameSession boolean:

  • If true, the streamlined upsell flow is shown when payment method conditions are met.
  • If false, the standard checkout flow is shown.
  • If the object is null, the checkout isn't an upsell flow.

Examples

Early access program guidelines

Why are we doing this?

Upsells are a proven revenue expansion strategy, with the post-purchase moment being ideal for additional offers due to high customer intent and commitment.

Routing customers through standard checkout flows for upsells creates unnecessary friction because customers must reenter information they just provided, reducing conversion rates. One-click upsell flows have been shown to increase those conversion rates for SaaS and app businesses.

Upsell checkouts help merchants maximize customer lifetime value by making it easy to capture additional revenue from existing customers at the moment they're most engaged with your product.

What's included?

You can use Paddle.js to:

  • Open upsell checkouts using Paddle.js with the upsell parameter in Paddle.Checkout.open()
  • Present a streamlined checkout flow for same-session upsells within 5 minutes of the initial purchase
  • Automatically reuse customer, address, and business data from the previous transaction
  • Offer one-click payment experiences with saved payment methods
  • Customize skip button behavior using upsell.settings.showSkipButton
  • Handle when customers skip upsells using the checkout.upsell.canceled event
  • Track upsell context using the enhanced checkout events like checkout.loaded

Are there any limitations?

While in early access, there are some limitations:

  • Only inline, one-page checkouts are supported.

    Upsell checkouts only work with inline, one-page checkouts. If you attempt to open an overlay checkout or multi-page variant for an upsell, the checkout falls back to the standard flow without upsell optimizations. You must pass displayMode: 'inline' and variant: 'one-page' in your checkout settings.

  • Apple Pay and Google Pay aren't automatically inferred from the previous transaction.

    If the previous transaction used Apple Pay or Google Pay, you must pass the respective value to the allowedPaymentMethods parameter when opening the upsell checkout.

  • Upsell transactions must be within the same session window.

    The streamlined upsell experience is only available when the checkout is opened within 5 minutes of the previous transaction completing. After 5 minutes, customers see the standard checkout flow.

What do we need from you?

While in early access, we're keen to hear about your experience implementing upsell checkouts, including conversion rates, customer feedback, and any challenges you face or developer experience improvements you seek.

To send us feedback, use the feedback button at the top-right or email us at sellers@paddle.com. We may contact you during the early access program to get your thoughts.

What's the timeline for release?

We're planning to release upsell checkouts in multiple stages:

Stage 1NowUpsell checkouts in early access for inline, one-page checkouts.
Stage 2Q1 2026General availability.

All dates are estimates and may change based on testing and feedback from the early access program.

Summary of changes

Paddle.js methods

This is a summary of changes to Paddle.js methods:

MethodChangeDetails
upsellNew parameterAdded to Paddle.Checkout.open() method to open streamlined upsell checkouts. Requires transactionId and optionally accepts settings.showSkipButton.

Paddle.js events

This is a summary of changes to Paddle.js events:

EventChangeDetails
checkout.upsell.canceledNew eventEmitted when customer clicks "No thanks" skip button on upsell checkout.
data.upsellNew fieldObject containing upsell context. Included in checkout events when checkout is opened for an upsell.
data.upsell.transaction_idNew fieldPaddle ID of the previously completed transaction this upsell follows, prefixed with txn_.
data.upsell.show_skip_buttonNew fieldWhether the "No thanks" skip button is shown at checkout.
data.upsell.same_sessionNew fieldWhether checkout was opened within 5 minutes of previous transaction. Determines if streamlined flow is shown.

Next steps

Upsell checkouts are available in early access. Access is limited to users who are part of our early access program. If you're interested in being part of the program, review the upsell checkout guide and email us at sellers@paddle.com to apply. We'll reach out when space is available if you meet the program requirements.

This change is live in Paddle.js now. You don't need to do anything to get the latest version of Paddle.js — we serve the latest version automatically.

It's a non-breaking change, meaning it doesn't impact existing integrations.

Learn more

AI AssistantBeta

Ask a question to start a conversation!

If you have made a purchase through Paddle, go to paddle.net instead.

Powered by kapa.ai
|
Protected by hCaptcha