Post-purchase Upsells PRO
A one-click add-on offer on the thank-you page, charged to the card already on file.
Category: Checkout · Enable at: Ambikly → Add-ons → Post-purchase Upsells
What it does
When an order is paid, the first matching offer is cached with a single-use token and shown on the thank-you page to the verified order owner. Accepting re-validates everything live, charges the gateway for the difference with an idempotency key, appends the line item, decrements stock and records the transaction.
Capabilities
- Triggers: always, order-total minimum, or contains a category
- Single-use accept token with a countdown
- Viewer verified as the order owner before the token is rendered
- Per-order lock plus a deterministic idempotency key — no double charges
- Offer, product and price re-derived live at accept time
- Decline invalidates the token immediately
- Stock decremented atomically on accept
Turn it on
- Make sure Ambikly Pro is active and your license is activated under Ambikly → Settings → License.
- Go to Ambikly → Add-ons, find Post-purchase Upsells and switch it on. There is nothing else to install.
- Open its settings panel and set the options listed below.
- Visit your storefront to confirm the new surface appears: [ambikly_upsell_offer] block on the thank-you page.
Settings
Open the add-on's settings panel from Ambikly → Add-ons → Post-purchase Upsells.
- Show upsells
- Offer expires (minutes)
- Offer heading
- Offer subheading
Where it appears
On the storefront
- [ambikly_upsell_offer] block on the thank-you page
In the admin
- Upsell offers — product, discount, trigger, priority, enabled
Third-party services
This add-on talks to:
- Gateway additional charges (Stripe)
You supply your own credentials; they are stored on your server and masked in the admin. Nothing is proxied through Ambikly.
For developers
REST routes
POST /ambikly-pro/v1/upsell/acceptPOST /ambikly-pro/v1/upsell/decline
Every route enforces the same capability checks as the rest of the API — see the REST API guide.
Core hooks it listens to
ambikly_order_paidambikly_upsell_acceptedrest_api_init
The full list is in the hooks reference.
Questions
Does the customer re-enter payment details?
No. The accept endpoint charges the order’s existing gateway for the difference and appends a line to the same order.
Can a double-click charge twice?
No. The charge is serialized by a per-order lock and carries a deterministic idempotency key.
Can someone see another customer’s offer?
No. The viewer is authorized with the same check the thank-you page uses.
Works well with
Turning it off
Switch the add-on off from Ambikly → Add-ons. Its settings and data stay in the database, so turning it back on restores exactly what you had. A lapsed license pauses it the same way — the store keeps selling on the free core, and nothing is deleted.
One license covers all 35 add-ons — $199 a year or $549 once for a single site. Nothing here is sold separately.
See pricing →