Offer an add-on right after checkout that buyers accept with a single click, charged to the card they just used.
A one-click upsell flow shows the buyer an offer immediately after they pay. If they accept, the add-on is charged to the card they just used and added to their order. No second checkout form, no re-entering card details. Whether they accept or decline, they then land on your thank-you page.
You share one link. CheckoutJoy runs the checkout, the upsell page and the redirect behind it.
A one-click upsell flow is built from three elements:
Element
Purpose
Checkout
The starting point. A hosted checkout for your main product.
Upsell
An upsell page for the add-on offer. The buyer sees it right after paying.
Thank-you page
Where the buyer is redirected after accepting or declining the upsell.
When the buyer pays on the checkout, CheckoutJoy asks the payment processor to keep the card on file for this purchase. The upsell page then appears at the same link. Clicking the accept button charges the upsell price to that card and adds the product to the order. Clicking decline skips it. Either way the buyer is sent to your thank-you page.
The accepted upsell is added to the same order as a separate line item, with its own payment. It shows up on the order in your dashboard like any other product, and the buyer gets access the same way they would for a normal purchase.
An upsell is different from an order bump. An order bump is a checkbox on the checkout form, paid together with the main product. An upsell is a separate page shown after payment, charged separately with one click.
The checkout uses Stripe, Paystack or PayFast. These are the processors that can charge a stored card for the upsell.
The upsell offer is a once-off product. Only once-off products can be selected as an upsell.
The main product is a once-off product. Subscriptions and payment plans do not keep a reusable card for the upsell.
Processor-specific notes:
Stripe: nothing extra to set up.
Paystack: inside an upsell flow the checkout accepts card payments only, because only a card authorization can be charged again. Other Paystack channels are not offered on that checkout.
PayFast: Recurring Billing must be enabled on your PayFast account, and your PayFast passphrase must be set on the PayFast processor in CheckoutJoy. The checkout accepts card payments only, in ZAR.
If the checkout offers a processor that isn't listed above, buyers who pay with it will see an error when they click accept on the upsell. Limit the checkout's payment options to Stripe, Paystack or PayFast.
Choose a template for the upsell page. Every template includes the offer name, price, an accept button and a decline link. You can change the design later in the page builder.
Tell CheckoutJoy what the add-on includes, who it's for and what result they get. CheckoutJoy writes the page's headline, description and benefit list from these notes and your product details. This step is optional. Leave it empty and the page is created with the template's starter copy.
Click the Upsell element in the flow builder to see which page it shows. From here you can open the page in the builder, switch to a different upsell page you've already made, or start over with a new one.
Edit page opens the page builder. The headline, benefits, price display, buttons, colours and fonts are all edited here. The Offer selector at the top sets which product is added to the order when the buyer accepts. Use Publish in the builder to make your edits live.
The AI tab rewrites the copy from new notes. Prices are never written by AI. They always come from the offer.
After paying, the buyer stays on the same link and the upsell page appears.
Accept charges the upsell to the card used on the checkout and adds it to the order. The buyer is then sent to your thank-you page.
Decline sends the buyer straight to your thank-you page.
Each accept button works once. If the charge fails, the buyer sees the error on the page and can try again. Reloading the page does not charge the buyer twice.
You can chain upsells. In the flow builder, add another Upsell element from the left sidebar and connect it to the Accept or Decline handle of the first one. Each Upsell element has its own page and its own offer. Connect the last upsell's accept and decline handles to the Thank-you page.