Props
layout
Install
pnpm dlx shadcn@latest add @paddle/express-checkoutyarn dlx shadcn@latest add @paddle/express-checkoutnpx shadcn@latest add @paddle/express-checkoutUse an AI agent
Import this component from https://developer.paddle.com/r/express-checkout.json and open the code for editing. IMPORTANT: preserve the component exactly as-is. Do NOT change colors, CSS variables, Tailwind classes, spacing, fonts, or any visual styles. Do NOT regenerate or restyle the UI. Create files from the registry JSON verbatim and show the code tree.Props
test_; live tokens start with live_. "sandbox" "sandbox", live token with "production". priceId and name; description, badge, and icon are optional. priceId. Omit to require the customer to choose before the drawer opens. "stacked" stacked is best for mobile and narrow side panels; grid works at wider breakpoints. discountId. discountCode. en-GB, fr-FR) for the checkout copy. false Subscribe now). Usage notes
Each plan requires a price ID (starts with pri_). Create and/or find yours in your Paddle dashboard under Catalog > Prices. Use sandbox price IDs while NEXT_PUBLIC_PADDLE_ENV is 'sandbox'.
What it does
Express checkout is the highest converting checkout experience for mobile apps and mobile-first workflows.
This component pairs a compact plan picker with a drawer-style express checkout that opens in-place, so customers stay on your page while making their purchase.
When to use
- Mobile is the primary surface and you want the checkout sheet to slide up rather than open in a new view.
- You're building a marketing or campaign page where the full pricing-then-checkout journey should live in a single hero section.
- You want to keep the page chrome stable so the payment step doesn't feel like a context switch.
Prefer inline checkout when you need the order summary visible alongside the payment fields, or when you're embedding the checkout inside a longer onboarding flow rather than a standalone landing page.