Checkout step
The Checkout step is where the visitor pays. The exact experience depends on which payment processor is active in your workspace.
- Stripe - inline checkout powered by Stripe Elements: optional Express checkout buttons plus an optional card form.
- Paddle - an inline Paddle checkout frame embedded on the payment page. Paddle handles payment methods, tax calculation, and compliance.
What you set
Display
- Headline and optional logo on the payment screen
- Page layout — Single column (stacked) or Two column (order summary and payment side by side on desktop; stacked on mobile)
- Order summary style:
- Full — plan card with price, features, and trust line
- Compact — plan name and price on two lines; hides the feature list (good for mobile and Apple Pay)
- Collapsed — one-line strip (plan + due today); tap to expand full details
- Refund policy text on the payment screen (privacy and terms links come from funnel settings)
Urgency timer
Optional countdown bar at the top of checkout — same visual pattern as the paywall timer, but with its own countdown (not synced with paywall). Set minutes and an optional headline (for example "Offer expires in").
Payment methods (Stripe)
- Toggles for Express checkout and Card form — keep at least one enabled before publish
- Method order — Express first (wallets above card form) or Card first (card form above wallets)
- Repeat trust line above the pay button — shows "Cancel anytime · Secure payment" and your refund policy again right above submit
Order bump
Optional one-time add-on checkbox above the payment form (see below).
When Stripe is active, keep at least one payment block enabled before you publish. If both are off, checkout cannot collect payment.
Order bump
An order bump is a one-time add-on visitors can tick on the checkout screen. The extra amount is added to the same charge when they pay.
- Open the Checkout step in the editor.
- Under Order Bump, turn on Show a one-time add-on checkbox.
- Set the headline, optional description, and price (smallest currency unit).
One-time main plans only
The order bump appears only for one-time (non-subscription) plans and when Stripe is the active processor. It does not show for subscription checkouts or when Paddle is active.
Track shown and accepted counts in Analytics → Growth Add-ons.
Exit-intent downsell
On desktop with Stripe, when a visitor moves the cursor toward leaving checkout, a one-time modal can offer a cheaper plan than the one currently being paid for.
- Open the Checkout step in the editor.
- Under Exit-intent Downsell, leave Show the exit-intent offer on checkout checked (default), or turn it off to disable.
- The modal only appears when a cheaper plan exists in the funnel's paywall pricing.
| Paywall exit-intent | Checkout exit-intent | |
|---|---|---|
| When | Leaving the paywall page | Leaving the checkout page |
| Which plan | Cheapest plan below the selected plan | Same rule — cheapest plan below the plan being checked out |
| After Claim | Continues to checkout with that plan | Swaps plan in place — order summary and payment form reload for the new price |
| Processors | Stripe and Paddle | Stripe only |
| Once per | Paywall visit (separate session flag) | Checkout visit (separate session flag) |
Both steps can show the modal in the same funnel session — paywall and checkout track exit-intent independently.
Copy for the modal (headline, buttons) follows Funnel UI language in funnel settings.
Plan swap clears card entry
Claiming the checkout downsell reloads the payment form for the new plan. If the visitor had already started typing card details, they need to enter them again. The modal does not appear once card entry has started, after an express-wallet click, or before the payment form is ready.
Tier downsell, not extra discount
The offer switches visitors to a cheaper plan tier already defined on your paywall. It does not apply an additional promo or percentage off the current checkout total.
Track shown and claimed together with paywall exit-intent in Analytics → Growth Add-ons → Exit-intent Downsell.
Requirements
Checkout only works when all of the following are true:
- The funnel is published
- A payment processor is configured in Settings → Payment Integration
- The selected processor is active (toggle set to Stripe or Paddle)
- The flow includes a Paywall step with at least one plan that has the correct Price ID for the active processor
- Visitors open the funnel through Copy link (default platform URL or your custom domain path)
If any of these are missing, visitors will see an error message instead of the payment form.
After payment
- Successful payments create a record in Subscribers and send the visitor to the next step (usually Upsell if present, otherwise Success).
- Failed payments show an error message; the visitor can try again.
- Subscription renewals, failures, and cancellations update the Subscribers record over time via webhook.
Use the copied link
Checkout is tied to your workspace. If you use the default domain, paste the full Copy link URL when testing or launching campaigns.
Express checkout (Stripe only)
web2app renders Stripe's Express Checkout Element when the Express checkout block is enabled. The exact buttons, such as Apple Pay, Google Pay, Link, PayPal, Klarna, or Amazon Pay, are controlled by your Stripe payment method settings and only appear when the visitor's browser, device, currency, domain, and Stripe account are eligible. Paddle has its own supported payment methods inside the Paddle checkout frame.
When Paddle is active
The Checkout step uses Paddle Checkout instead of Stripe Elements. The Express checkout and Card form toggles do not change Paddle's inline frame; available payment methods are controlled by your Paddle account, Paddle Checkout settings, country, currency, and customer eligibility.