Blog

Shopify Post-Purchase Upsell Payment Methods: What Works (2026)

Short answer: a Shopify post-purchase upsell only appears when Shopify has saved (vaulted) the buyer's card during checkout and can charge it again with no extra steps. Credit cards through Shopify Payments and Shop Pay work. Cash on Delivery never works. PayPal works only under strict conditions, and only for a single offer. Apple Pay, Google Pay, Amazon Pay, Klarna, gift-card-only orders, and redirect gateways like Razorpay and Mollie do not work.

Shopify post purchase upsell payment methods

A post-purchase upsell is a one-click offer shown after payment but before the thank-you page. Whether it appears at all comes down to how the buyer paid. Start with the table below to check your own methods. After that we cover the mechanic that explains every rule, the gateway-level detail most guides skip, every non-payment reason an offer gets blocked, why orders show "On hold," how to test properly, how to work out what this is actually costing you, and the fix that lets COD and wallet stores upsell anyway.

Quick answer: payment method support table

Payment methodOne-click post-purchase upsell?Notes
Shopify Payments (credit cards)YesThe most reliable option by a wide margin
Shop PayYesBuilt to work with the post-purchase page
Other direct credit card gatewaysYesMust run inside Shopify checkout, no redirect, no per-transaction CVV
Authorize.netYesDirect processor with vaulting
Debit cardsUsually yesFine through normal Shopify checkout; not through a wallet button
PayPal Express or PayPal WalletSometimesOne offer only, needs Automatic Payments, buyer must be logged in
PayPal Payments Pro / Payflow ProSometimesCard transactions only, and CVV must not be required each time
BraintreeSometimesOnly if CVV is not required on every transaction
Stripe (newer versions)NoNot rolled out for Shopify's post-purchase API
Apple PayNoExpress wallet, the card is not vaulted for reuse
Google PayNoSame limit as Apple Pay
Amazon PayNoExpress wallet
Meta PayNoBypasses standard checkout
Klarna, Afterpay, Affirm, Sezzle, ZipNoBuy now, pay later, cannot add a second charge
Shop Pay InstallmentsNoThis is a buy now, pay later plan
Cash on Delivery (COD)NoManual method, nothing is paid at checkout
Razorpay, PayU, Cashfree and similarNoThey redirect the buyer, so no saved card
Bank transfer (iDEAL, SEPA, Bancontact)NoNo saved card, and it redirects
Gift card paying the full orderNoA gift card plus a card together is fine
Redirect gateways (Mollie and similar)NoThe buyer leaves Shopify to pay
Airwallex, PSIgate, NMI / SafewebNoNo card vaulting setting available
Bambora / BeanstreamNoRequires CVV on every transaction

The mechanic that explains every rule on this page

Most guides tell you which methods work. Almost none explain why, which is why merchants keep hunting for a setting that does not exist. Here is the actual sequence.

When a buyer completes checkout, Shopify authorises the card first and captures the money a moment later. The post-purchase page is rendered in that gap — after the order exists and the card is authorised, but before the transaction is finalised. That gap is what makes a genuine one-click add possible: the upsell is appended to the same order, on the same card, with the same shipping address and one confirmation email.

To bill that second amount without asking for anything, Shopify must already hold a reusable copy of the card. That is called vaulting. Vaulting only happens when the card is entered inside Shopify checkout, by a gateway that supports stored cards and does not demand a fresh CVV each time.

So the whole guide reduces to one sentence: no vaulted card, no post-purchase offer. Redirect gateways fail because the card is typed on someone else's site. Express wallets fail because they hand over a single-use token, not a card. BNPL fails because there is a financing plan rather than a card. COD fails because nothing was paid at all. Shopify's own rules are in the official post-purchase documentation.

Once that clicks, the rest of this page is just the list of methods that clear the bar — and what to do about the orders that do not.

Credit and debit cards

Cards are the safe path, but not every card gateway qualifies. A gateway works only if it is a direct provider that processes inside Shopify checkout and can vault the card.

  • Shopify Payments is fully supported and by far the most reliable choice. If post-purchase upsells matter to your revenue and Shopify Payments is available in your country, this alone settles the decision.
  • Other direct card gateways work if they run inside Shopify checkout and never send the buyer to another site. Check yours under Settings → Payments → Third-party providers. If your provider appears in that "direct" list, it is a candidate. Authorize.net is a common example that works.
  • Gateways that demand a CVV on every single transaction cannot re-charge silently, because there is nobody there to type it. Bambora/Beanstream falls here. Braintree, PayPal Payments Pro, and Payflow Pro work only once you disable the per-transaction CVV requirement inside the gateway's own settings — not in Shopify. Miss that and buyers see an error instead of an offer.
  • Gateways with no vaulting option at all — Airwallex, PSIgate, NMI/Safeweb — will never show offers, no matter which upsell app you install.
  • Redirect gateways (Mollie, Razorpay, PayU, Cashfree, and most regional providers) do not work, because the buyer leaves Shopify to pay.
  • Newer Stripe versions are not supported by Shopify's post-purchase API. It has not been rolled out, so no app can trigger offers on those orders. This one catches a lot of merchants who assume "Stripe is a card gateway, so it must work."

Debit cards entered as normal cards through Shopify checkout behave like credit cards and generally work. The same debit card routed through a wallet button or a redirect flow does not. That distinction is why you will see some guides list debit as unsupported — they are describing the wallet path, not the card path.

Shop Pay

Shop Pay supports post-purchase offers as long as nothing else on the order blocks them. Shopify designed the post-purchase page to run smoothly with it, and Shop Pay's stored card is precisely what the flow needs. The one exception is Shop Pay Installments, which is a BNPL plan and is not supported.

This matters more than it looks. On many stores Shop Pay plus Shopify Payments together account for the majority of orders, which means one-click upsells are viable even if your wallet and BNPL traffic never sees an offer.

PayPal

PayPal can work, but treat it as a "maybe," not a "yes."

  • Your PayPal account must be approved for Automatic Payments (also called Reference Transactions). Without that approval, no offer appears. This is requested through PayPal, not Shopify, and approval is not automatic.
  • The buyer must be logged in to PayPal. PayPal guest checkout is not supported.
  • Only one offer will ever show. Once the buyer accepts or declines, the funnel ends — no downsell, no second offer. If you run a post-purchase upsell and downsell funnel, PayPal buyers only see step one.
  • Availability varies by region and by which PayPal integration you run. PayPal Payments Pro and Payflow Pro cover card transactions only, not the express/wallet flow, and still need CVV disabled per transaction.

If PayPal is a large slice of your orders, build a thank-you page offer as the backup rather than assuming the one-click page will carry it.

Apple Pay, Google Pay, Amazon Pay, and Meta Pay

Express wallets skip the post-purchase page. They pass Shopify a one-time payment token rather than a card that can be stored and charged again, so there is nothing to bill for the upsell.

This is the quietest revenue leak of the lot. Express wallet buttons are heavily used on mobile, and mobile is where most stores take the bulk of their traffic. A store that looks like a healthy "card store" in aggregate can still be losing half its mobile orders to Apple Pay and Google Pay without ever noticing that those buyers see no offer.

Cash on Delivery (COD)

This is the one that surprises the most store owners.

  • COD is a manual payment method. The buyer has paid nothing at checkout.
  • There is no saved card to charge a second time.
  • So Shopify skips the one-click post-purchase offer on every COD order. There is no setting, no plan upgrade, and no app that turns this on.

Shopify's team has confirmed this directly: the one-click post-purchase extension requires a credit card and does not run on COD orders.

Why this hits India, the Middle East, and Southeast Asia hardest. In these markets COD is not a side option — it is often the majority of orders. Those same stores typically run a regional gateway such as Razorpay, PayU, Cashfree, or Instamojo, which redirects the buyer to a hosted payment page. Redirected payments are not vaulted either. So a typical COD-plus-Razorpay store will effectively never see a one-click post-purchase offer on any order, no matter which upsell app it installs. Do not spend a week debugging it. Skip to the thank-you page route below, which is built for exactly this situation.

Buy Now, Pay Later

Klarna, Afterpay, Affirm, Sezzle, Zip, and Shop Pay Installments do not support post-purchase offers. A BNPL order is a financing agreement on a fixed schedule, so there is no clean way to bolt a second charge onto it after the fact without renegotiating the plan.

Gift cards, discounts, and mixed payments

  • A gift card covering the full order total blocks the offer, because no card is charged and nothing is vaulted.
  • A gift card covering part of the order, with a card paying the rest, works normally. A $35 order paid with a $20 gift card plus $15 on a Visa will still show the offer, and the upsell is charged to the Visa.
  • A 100% discount code has the same effect as a full gift card payment: nothing is charged, so nothing can be re-charged.
  • The order total must be at least $0.50. Anything below that is skipped — which is also why a free test order never triggers the flow.

Other reasons your offer is not showing

Even on a perfectly supported card, the offer can still be skipped. Work through this list in order — the first item resolves more cases than everything else combined.

  • Your app is not set as the active post-purchase app. Go to Settings → Checkout → Post-purchase page and select your upsell app. Shopify allows exactly one post-purchase app per store, so an app you trialled months ago may still be holding the slot and silently swallowing every offer.
  • The order is paid in full by gift card or a 100% discount code.
  • The buyer checked out in a currency other than your store's primary market currency.
  • The order total is under $0.50.
  • The order includes duties.
  • The buyer chose local pickup or local delivery.
  • The order contains a subscription product. You cannot add a subscription to an order that already has one, convert a one-time item into a subscription, or edit an existing subscription from the post-purchase page.
  • The upsell product is out of stock (tracked inventory at zero) or unavailable in the buyer's market.
  • The payment failed, was declined, or was flagged for review.
  • Traffic spikes. During heavy sale periods Shopify can delay order creation and the offer window is missed. Expect a dip in offer impressions on Black Friday, not a bug.

Why your order says "On hold" or "Pending upsell offer"

This alarms most merchants the first time they see it. It is normal and it is by design.

  • While the buyer is looking at the offer, Shopify pauses the order. The admin may show "On hold" or "Pending upsell offer."
  • Fulfillment is held during this window — held orders report a fulfillable quantity of zero — so nothing ships before the buyer decides and you never end up sending two boxes.
  • The hold is short. Apps can hold an order for up to 60 minutes and most set it far lower. Once the buyer accepts or declines, the order releases automatically.
  • If you use a 3PL or fulfillment app, make sure it reads Shopify's Order Fulfillment API rather than grabbing orders the instant they are created, or it will trip over held orders and fulfil before the upsell lands.

Two more things worth knowing:

  • With manual payment capture, the order can sit as "Partially paid" until you capture both the original payment and the upsell charge. Once captured, it flips to Paid.
  • If the post-purchase charge fails, the item is added but the order stays "Partially paid" with no transaction recorded, and Shopify emails the buyer to say payment was not completed. If the buyer checked out with a phone number and no email, that email cannot be sent, so follow up by SMS with a checkout link.

Conflicting advice you will find elsewhere

Search this topic and you will hit help pages that flatly contradict each other. A few are worth clearing up, because acting on the wrong one wastes real money.

  • "Apple Pay and Klarna are supported." They are not. A handful of pages list express wallets and BNPL as supported, most likely by confusing the checkout page with the post-purchase page. If a method cannot be re-charged silently, it cannot power a one-click offer.
  • "Debit cards are not supported." Too broad. A debit card typed into Shopify checkout is vaulted like any other card. What fails is a debit card used through a wallet button or a redirecting bank flow.
  • "Shopify supports 100+ gateways including Mollie and Razorpay." Those gateways are supported for taking payment. They are not supported for post-purchase offers, because the buyer is redirected off Shopify to pay. Two different things, often blurred on marketing pages.
  • "Just switch upsell apps and it will work." Every app on the App Store uses the same Shopify post-purchase API and inherits the same restrictions. If your payment method is unsupported, changing apps changes nothing. What a better app gives you is a working fallback for those orders — not an exemption from Shopify's rules.

Work out what this is actually costing you

Before you decide how much effort to spend here, put a number on it. It takes five minutes.

  1. Open Analytics → Reports and pull sales by payment method for the last 90 days.
  2. Add up the share paid by Shopify Payments cards, Shop Pay (excluding Installments), and qualifying direct gateways. That is your eligible share.
  3. Everything else — COD, wallets, BNPL, redirect gateways, gift-card-only orders — is your blocked share. Those buyers will never see a one-click offer.
  4. Estimate the upside. One-click post-purchase offers typically see acceptance rates in the 8–15% range on a relevant offer, and stores running them well tend to report average order value lifts around 10–20%. Multiply your eligible order count by an acceptance rate and your offer price to get a monthly figure.
  5. Run the same maths on the blocked share against a thank-you page offer. Take rates there are lower — often in the low single digits, because the buyer places a second order rather than tapping once — but it applies to orders that would otherwise generate nothing.

Treat those ranges as planning figures, not promises. Acceptance depends far more on offer relevance and price than on any benchmark. What the exercise really tells you is where to spend your attention: a store at 85% eligible should perfect its one-click funnel, while a COD-heavy store at 10% eligible should put nearly all its effort into the thank-you page. If you want the deeper numbers, we broke them down in our guide to post-purchase upsell conversion impact.

How to test it properly

Do not guess, and do not judge from a single order. Test every method your store actually offers.

  • Place a real, paid order for each payment method, on the live store, in a normal browser.
  • Use a steep discount code (95–99% off) so tests cost almost nothing — but never 100%, because a zero-dollar order will not trigger the flow. Keep the total above $0.50.
  • Test on mobile as well as desktop. Wallet buttons appear far more often on mobile, and those are exactly the orders that will show nothing. A desktop-only test gives you a false pass.
  • On a development or test store you can use Shopify's test mode with a test card. Never enable test mode on a live store; it stops real customers from paying.
  • If no offer appears, check the post-purchase app slot in Settings → Checkout first, then the payment method, then the blockers list above. In that order.
  • Refund your test orders afterwards, and re-test after any gateway change, plan change, or new market launch.

The fix for COD and wallet stores: thank-you page upsells

Here is the part most guides leave out. "Post-purchase" covers three different surfaces, and only the first has strict payment rules:

  1. The post-purchase page — the interstitial between payment and the thank-you page. Strict. Needs a vaulted card. Adds to the same order in one tap.
  2. The thank-you page — the confirmation screen straight after checkout. No payment restrictions at all.
  3. The order status page — the tracking page buyers return to over the following days. Since Shopify's checkout updates these are two separate surfaces, and an offer here catches people who come back to check on delivery.

Surfaces two and three sit outside Shopify's one-click rules entirely. They work with COD, wallets, BNPL, Razorpay, gift cards — everything. That makes them the correct default for COD-heavy and wallet-heavy stores, and a free second bite for everyone else. We compare the two in detail in post-purchase page vs thank you page.

The trade-off is honest: a thank-you page offer is not a true one-click add to the same order. The buyer places a quick second order, which means a second shipment unless you merge them, and take rates are lower. But it reaches every buyer on every payment method. For a COD store, a smaller number on most of your orders beats a bigger number on none of them.

A 2026 heads-up. Shopify is moving thank-you and order status pages onto Checkout Extensibility. Non-Plus stores are auto-upgraded on August 26, 2026, and legacy Additional Scripts and checkout.liquid customisations stop firing after that date. The one-click post-purchase page itself is not going away and stays available on every plan, Plus or not. Just confirm that any post-purchase or thank-you page app you use is built on Checkout Extensibility app blocks rather than old scripts. Good apps already are.

Covering both paths with one app

The practical problem is that these are two different offer types with two different rule sets, and you need whichever one the buyer's payment method allows — without knowing in advance which that will be.

Oxify Cart Drawer runs both from one place. Card and Shop Pay orders get the true one-click post-purchase offer. COD, wallet, BNPL, and Razorpay orders fall through to a thank-you page offer instead of seeing nothing at all. You set the offers once and every order gets whichever version it qualifies for, which is exactly the behaviour a mixed payment mix needs.

It is built on Checkout Extensibility, so the August 2026 upgrade is a non-event, and it also handles cart drawer upsells, free gifts, BOGO, and a free shipping bar — so the same offer logic runs before checkout as well as after. If you would rather compare options first, read our roundup of the best Shopify post-purchase upsell apps and the best Shopify thank you page apps.

What to do, based on how your buyers pay

  1. Pull your real payment-method mix for the last 90 days and calculate the eligible share. Decide from data, not from what you assume your buyers use.
  2. If cards and Shop Pay are the majority, turn on one-click post-purchase offers. Highest-converting option, added to the same order, no second shipment.
  3. If COD, wallets, PayPal, BNPL, or a regional gateway lead, build the thank-you page offer first and treat one-click as a bonus for whichever card orders qualify.
  4. Run both at once if your mix is split. They do not conflict — each buyer sees whichever their payment method allows.
  5. Keep every offer simple: one product, one price, one button. Complexity kills conversion on a page the buyer sees for a few seconds. Our guide on writing post-purchase offers that convert goes deeper.
  6. Price the offer below the original order value, and lean on a genuine one-time discount or a natural add-on rather than an unrelated product.
  7. Test each payment method before you trust it, and re-test after any gateway or market change.

Run post-purchase upsells the easy way

Handling all of this by hand is fiddly, and the failure mode is silent — the offer simply does not appear and you never find out how much you left behind.

Oxify Cart Drawer takes the payment-method logic off your plate: one-click offers where Shopify allows them, thank-you page offers everywhere else, plus cart upsells, free gifts, BOGO, and a free shipping bar in the same app. It is built to lift average order value without slowing checkout down. Start your free trial and turn one sale into a bigger one — including the COD and wallet orders your current setup is skipping.

FAQ

Which payment methods support Shopify post-purchase upsells?

Shopify Payments and other direct credit card gateways that process inside Shopify checkout, plus Shop Pay. PayPal Express works under conditions. Anything that redirects the buyer, uses an express wallet, uses a payment plan, or takes no payment at checkout will not show an offer.

Why does the payment method matter at all?

The post-purchase page appears between card authorisation and capture, and adds the upsell to the same order by charging the same card again. That only works if Shopify saved a reusable copy of the card during checkout, which is called vaulting. No vaulted card means no offer.

Does post-purchase upsell work with PayPal?

Sometimes. Your PayPal account needs "Automatic Payments" (Reference Transactions) approved, the buyer must be logged in rather than using guest checkout, and only one offer will ever show. Support also varies by region and PayPal integration, so test before relying on it.

Does post-purchase upsell work with Cash on Delivery (COD)?

Not for one-click offers. COD is a manual payment method with no card saved at checkout, so Shopify skips the post-purchase page every time and no setting changes it. Use a thank-you page upsell instead, which works with COD.

Does it work with Apple Pay, Google Pay, or Amazon Pay?

No. Express wallets pass Shopify a single-use payment token rather than a card that can be stored and charged again, so the post-purchase page is skipped. Meta Pay behaves the same way. This mostly costs you mobile orders.

Does post-purchase upsell work with Razorpay or other Indian payment gateways?

No. Razorpay, PayU, Cashfree and similar gateways redirect the buyer to a hosted payment page, so Shopify never stores the card. Combined with COD, that means most Indian stores cannot use one-click offers at all. Thank-you page offers are the workaround.

Does Shop Pay support post-purchase upsells?

Yes. Shop Pay is fully supported as long as nothing else on the order blocks the offer. The exception is Shop Pay Installments, which is a buy now, pay later plan and is not supported.

Does post-purchase upsell work with Stripe?

Not on newer Stripe versions. Shopify has not rolled Stripe out for the post-purchase API, so no upsell app can trigger offers on those orders.

Do debit cards work with post-purchase upsells?

Usually yes, when the debit card is entered as a normal card through Shopify checkout. The same card used through a wallet button or a redirecting bank flow will not show an offer, which is why some guides list debit as unsupported.

Do gift card orders block post-purchase offers?

Only when the gift card covers the full total. A partial gift card payment with a card covering the rest works normally, and the upsell is charged to that card.

Why is my post-purchase offer not showing?

The two most common causes are an unsupported payment method and your app not being selected under Settings → Checkout → Post-purchase page, where only one app can hold the slot. Other blockers: a gift card or 100% discount paying the whole order, a non-default checkout currency, a total under $0.50, duties on the order, local pickup or delivery, a subscription product, an out-of-stock upsell product, or a declined payment.

Will switching to a different upsell app fix an unsupported payment method?

No. Every app uses the same Shopify post-purchase API and inherits the same restrictions. What a better app adds is a thank-you page fallback so those orders still get an offer.

Why is my order showing "On hold" or "Pending upsell offer"?

That is expected. Shopify pauses the order and holds fulfillment while the buyer decides, usually for a few minutes and at most 60. Once they accept or decline, the order releases and moves forward on its own.

Can I show more than one post-purchase offer?

On supported card and Shop Pay orders, yes — you can run an offer plus a downsell. On PayPal, only a single offer will ever display, whether the buyer accepts or declines it.

Can I run post-purchase upsells without Shopify Plus?

Yes. The post-purchase page is available on every Shopify plan and is not changing with the 2026 checkout extensibility upgrade. Only legacy Additional Scripts and checkout.liquid customisations stop working after August 26, 2026.
Ask AI about Oxify App