Hype Upsell

How accepted upsells are charged

Updated Sep 10, 20263 min read

Each surface charges differently: the post-purchase page charges the card already on the order, the thank-you page edits the order and sends the customer to Shopify to pay the difference, and checkout simply adds a discounted line to the cart the customer is about to pay for.

Post-purchase page — charged to the same card

The customer has already paid, and Shopify still holds their payment method for that order. When they accept:

  1. Hype builds the change — which variant, at which discount — from your saved upsell on its own servers, and signs it.
  2. Shopify verifies that signature, then charges the saved card for the difference.
  3. The product joins the original order as an extra line, with the discount on that line.

There is one order, one shipment and one confirmation email. Nothing about the price comes from the customer's browser, so the offer cannot be manipulated into a larger discount.

If the card declines or Shopify refuses the change, the customer is told the addition failed and that their original order is unaffected — which is true. The original order is never modified by a failed accept.

Shopify allows at most three accepted post-purchase offers per checkout.

Thank-you page — an order edit, then a second payment

The thank-you page cannot change an order from inside the page, so Hype does it server-side:

  1. The customer clicks accept and is taken to Hype.
  2. Hype adds the product to the existing order using Shopify's order editing API and applies the discount to that new line.
  3. The edit is committed, and the customer is redirected to Shopify's hosted "pay the difference" page.

Two things follow from that order, and both matter operationally:

  • The item is on the order before it is paid for. If the customer closes the payment page, the order keeps an unpaid line. Check the order's payment status before fulfilling it.
  • No edit notification email is sent. Shopify's "your order was updated" email is suppressed, so the customer is not told twice.

If anything fails — an expired accept link, a variant that is no longer sellable, a Shopify error — the customer is sent back to your storefront rather than shown an error page, and the order is left as it was.

Accept links are signed and time-limited. A copied or hand-edited link is refused.

Checkout — an automatic discount on the live cart

Nothing is charged separately here, because the customer has not paid yet:

  1. Accepting adds the chosen variant to the cart with a marker that identifies the upsell.
  2. A Shopify automatic discount, maintained by Hype and titled Hype Upsell Discount (Do not delete), recognizes that marker and discounts the line. The discounted price and your discount title show as a strikethrough on the line.
  3. The customer pays once, for the whole cart.

The discount is applied by Shopify's own discount engine, which re-checks the upsell's trigger against the live cart and confirms the line is the variant you configured before discounting anything. If a customer edits their cart so the trigger no longer matches, the discount stops applying. It is set to combine with your order, product and shipping discounts.

Where the discount shows on the order

On all three surfaces the discount appears on the added line, labelled either with your Discount title or with the automatic label — "15% off", "10 off", or "Special price". See Discounts on upsells.

Refunds and cancellations

Hype does not handle refunds. An upsell line is an ordinary Shopify order line: refund, cancel or restock it from the order in your Shopify admin exactly as you would any other item.

Related articles

Still need help?

Start a chat and we'll pick it up right here.