Here is the short answer. Shopify post-purchase upsells only work when Shopify can charge the buyer’s saved card a second time, with no extra steps. So credit cards and Shop Pay work great. Cash on Delivery does not work at all. PayPal works only in some cases, and only for one offer. Apple Pay, Google Pay, and Amazon Pay usually do not trigger the offer either.

A post-purchase upsell is a one-click offer that appears after checkout but before the thank-you page. Whether it shows up depends almost entirely on the payment method. So if you care about post-purchase upsell payment methods, the table below is the fastest way to check yours. After that, we cover the why, the edge cases, the “order on hold” question, and a simple fix for COD and wallet stores.
Quick answer: payment method support table
| Payment method | One-click post-purchase upsell? | Notes |
|---|---|---|
| Shopify Payments (credit cards) | Yes | The most reliable option |
| Other direct credit card gateways | Yes | Must run inside Shopify checkout with no redirect |
| Shop Pay | Yes | Built to work with the post-purchase page |
| Debit cards | Maybe | Support varies by provider and region, so test it |
| PayPal Express or PayPal Wallet | Sometimes | One offer only, needs Automatic Payments, buyer must be logged in |
| Apple Pay | Usually no | Express wallet, the card often cannot be reused |
| Google Pay | Usually no | Same limit as Apple Pay |
| Amazon Pay | No | Express wallet |
| Klarna, Afterpay, Affirm, Sezzle | No | Buy now, pay later, cannot add a second charge |
| Shop Pay Installments | No | This is a buy now, pay later plan |
| Cash on Delivery (COD) | No | No card is saved at checkout |
| Razorpay and similar regional gateways | No | They redirect the buyer, so no saved card |
| Bank transfer (like iDeal) | No | No saved card, and it redirects |
| Gift card (pays the full order) | No | A gift card plus a card together is fine |
| Redirect gateways (like Mollie) | No | The buyer leaves Shopify to pay |
Why your payment method even matters
A post-purchase offer shows on a quick page right after payment but before the thank-you page. The buyer is still on your store and ready to act.
To add the upsell to that same order, Shopify needs to charge the buyer’s card again. And it has to do this without asking them to type anything new. For that, Shopify must save the card during checkout. (You will sometimes hear this called “vaulting” the card.)
If the payment method does not let Shopify save the card, the offer gets skipped. That is the whole rule. Everything below comes back to it. You can read Shopify’s own rules in the official post-purchase documentation.
Credit and debit cards
Credit cards are the safe path.
- Shopify Payments is fully supported and the most reliable choice.
- Other “direct” card gateways also work, as long as they run inside Shopify checkout and do not send the buyer to another site to pay. You can see yours under Settings, then Payments, then Third-party providers.
- Redirect gateways (like Mollie) do not work, because the buyer leaves Shopify to pay.
- Newer versions of Stripe are no longer supported by Shopify’s post-purchase system.
Debit cards are less certain. Some setups treat them like credit cards and the offer shows. Others do not. Treat debit as “test it first,” not a sure thing.
Shop Pay
Good news here. Shop Pay supports post-purchase offers, as long as nothing else on the order blocks them. Shopify even built the post-purchase page to run smoothly with Shop Pay. Since so many shoppers now use Shop Pay, this covers a big slice of your orders.
PayPal
PayPal can work, but with real limits. Treat it as a “maybe,” not a “yes.”
- It only works if your PayPal account is approved for “Automatic Payments” (also called Reference Transactions).
- The buyer must be logged in to PayPal. PayPal guest checkout is not supported.
- Only one upsell will show. Once the buyer accepts or declines the first offer, no more offers appear.
- It depends on your region and your PayPal setup, and some PayPal versions are not working with post-purchase offers right now.
So if PayPal is your main method, do not count on a smooth one-click upsell.
Apple Pay, Google Pay, and Amazon Pay
These express wallets usually skip the post-purchase page. The reason is the same saved-card problem. Shopify cannot always reuse the card for a second charge. Plan for these wallets to show no offer at all.
Cash on Delivery (COD)
This is the big one, and it surprises a lot of store owners.
- COD is a “manual” payment method. The buyer has not actually paid at checkout.
- There is no saved card sitting there to charge again.
- So Shopify skips the post-purchase offer every single time.
Shopify’s own team has confirmed this. The one-click post-purchase extension only works with a credit card, not with COD. There is no setting to turn this on.
The COD reality (and why this hits India hard). In many countries, COD is not a side option. It is the main one. In parts of India and the Middle East, COD can be most of a store’s orders. On top of that, lots of these stores run a regional gateway like Razorpay, which sends the buyer to a separate page to pay. Redirected payments are not saved by Shopify either. So a typical Indian store, with COD plus a gateway like Razorpay, will almost never see a one-click post-purchase offer. Do not burn hours fighting it. Use the fix further down instead.
Buy Now, Pay Later
Klarna, Afterpay, Affirm, Sezzle, and Shop Pay Installments do not support post-purchase offers. Installment plans cannot tack on a second charge the same clean way a card can.
Other reasons your offer is not showing
Even with a supported card, the offer can still be skipped. Run through this checklist:
- Your app is not set as the active post-purchase app. Go to Settings, then Checkout, and pick your upsell app as the post-purchase page app. This is one of the most common causes.
- The order is paid in full with a gift card. (A gift card plus a card is fine.)
- The buyer checks out in a different currency than your store’s default currency.
- The order total is below Shopify’s minimum. It must be at least $0.50.
- The order has duties on it.
- The buyer picks local pickup or local delivery.
- Both the original product and the upsell product are subscription products.
- The upsell product is out of stock (its tracked inventory is zero).
- It is a busy sale moment. During big traffic spikes, Shopify may delay order creation, and the offer may not appear.
Why your order says “On hold” or “Pending upsell offer”
This scares a lot of store owners, so here is what is really happening. It is normal.
- While the buyer is looking at your post-purchase offer, Shopify pauses the order. You may see it marked as “On hold” or “Pending upsell offer.”
- Shopify holds fulfillment during this step, so the order is not shipped before the buyer decides.
- Once they accept or decline, the order moves forward on its own.
Two extra notes:
- If you use manual payment capture, the order can show as “Partially paid” until you capture payment for both the original order and the upsell. After you capture it, the status updates to Paid.
- If a post-purchase charge fails, Shopify emails the buyer to say an item was added but payment was not completed. If the buyer checked out with only a phone number and no email, Shopify cannot send that email, so you may need to send a checkout link by SMS instead.
How to test it the right way
Do not guess. Test each payment method with a real order.
- Place a real, paid test order for every method your store offers.
- Use a steep discount code (like 99% off) so the test costs you almost nothing.
- Do not use a free (zero dollar) test order. Shopify will not trigger the post-purchase flow on a free order.
- On a development or test store, you can use Shopify’s test mode with a test card. Never turn on test mode on your live store, because it stops real customers from paying.
- If no offer appears, that payment method is most likely not supported, or your app is not set as the post-purchase app.
The simple fix for COD and wallet stores: thank-you page upsells
Here is the part most guides skip.
Post-purchase offers come in two flavors:
- One-click offers on the page right after payment. This is the strict one, and it needs a saved card.
- Thank-you page offers (on the order confirmation page). These work with every payment method, including COD and wallets.
Thank-you page upsells skip Shopify’s strict one-click rules, so they are the smart move for COD-heavy and wallet-heavy stores. Oxify Cart Drawer, for example, runs both one-click post-purchase offers and thank-you page offers from one place, so COD and wallet orders still get an upsell. For ideas on what to put there, see our guide on Shopify thank you page ideas, and for tools, our roundup of the best Shopify thank you page apps.
A 2026 heads-up. Shopify is moving Thank You and Order Status pages to its new Checkout Extensibility system. Non-Plus stores get auto-upgraded by August 26, 2026, and old “Additional Scripts” customizations stop working after that. The one-click post-purchase page is not going away, and it works on every plan. Just make sure any post-purchase or thank-you page app you use is built on Checkout Extensibility, not old scripts. Good apps already are.
The trade-off is honest. A thank-you page offer is not a true one-click add to the same order. The buyer usually places a quick second order. But it works, and it works for everyone. For a COD store, that beats an offer that never appears.
What to do based on your store
- Check how your buyers actually pay. Open your analytics and look at the real mix.
- If most pay by card or Shop Pay, use one-click post-purchase offers.
- If COD, wallets, PayPal, or a regional gateway lead, lean on thank-you page offers instead.
- Keep every offer simple. One product, one price, one button.
- Test each method before you trust it.
Run post-purchase upsells the easy way
Setting all of this up by hand takes work. A good app handles it for you.
Oxify Cart Drawer runs post-purchase upsells, thank-you page offers, and cart upsells from one app, along with free gifts, BOGO, and a free shipping bar. It is built to lift your average order value without slowing checkout. If you want to compare options first, read our guide to the best Shopify post-purchase upsell apps. Then start your free trial and turn one sale into a bigger one.
FAQ
Does post-purchase upsell work with PayPal?
Sometimes. It needs “Automatic Payments” approved on your PayPal account, the buyer must be logged in (not guest checkout), and it only shows one offer. Some PayPal versions are not working right now, so test it first.
Does post-purchase upsell work with Cash on Delivery (COD)?
Not for one-click offers. COD has no saved card to charge, so Shopify skips the offer. Use a thank-you page upsell instead, which works with COD.
Does it work with Apple Pay, Google Pay, or Amazon Pay?
Usually no. These express wallets often skip the post-purchase page, because the card cannot always be reused for a second charge.
Does post-purchase upsell work with Razorpay or other Indian payment gateways?
No. Regional gateways like Razorpay send the buyer to a separate page to pay, so Shopify does not save the card. Pair this with COD, and most Indian stores cannot use one-click offers at all. Use thank-you page offers instead.
Does Shop Pay support post-purchase upsells?
Yes. Shop Pay is supported, as long as nothing else on the order blocks the offer.
Why is my post-purchase offer not showing?
The most common causes are an unsupported payment method or your app not being set as the post-purchase app in Settings, then Checkout. It can also be a gift card paying the full order, a different checkout currency, an order under $0.50, an order with duties, local pickup or delivery, or an out-of-stock upsell product.
Why is my order showing “On hold” or “Pending upsell offer”?
That is normal. Shopify pauses the order and holds fulfillment while the buyer decides on your post-purchase offer. Once they accept or decline, the order moves forward.

