# Shopify Limitations

**The following limitations and considerations for post-purchase checkout extensions apply:**

| **Area**                                            | **Context**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| --------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Credit Card Processors**                          | Post-purchase offers are shown only when the customer pays through a **direct credit-card processor** supported by Shopify Checkout. Fully supported: **Shopify Payments**. Supported if configured correctly: **Braintree**, **PayPal Payments Pro**, **Payflow Pro** (CVV not required for every transaction). Unsupported: **Airwallex**, **PSIgate**, **Safeweb Services (NMI Network Merchants, Inc.)**, or any external/off-site processor without vaulting support.                          |
| **Third-party Payment Providers Requiring CVV/CVN** | Payment providers that require the customer’s CVV/CVN for each transaction can’t support post-purchase offers. This includes but isn’t limited to **Braintree**, **Payflow Pro**, **PayPal Payments Pro**, and **Eway**. To enable post-purchase offers, disable “require CVV for each transaction.”                                                                                                                                                                                                |
| **Digital Wallets (Supported)**                     | **Shop Pay** and **PayPal Express** (only if approved for **Reference Transactions**) are supported for one-click post-purchase upsells. **PayPal Wallet** via Shopify Payments might also be supported depending on your region and PayPal setup.                                                                                                                                                                                                                                                  |
| **Digital Wallets (Unsupported)**                   | Other wallets and installment services are not supported, including **Amazon Pay**, **Google Pay**, **Apple Pay**, **Klarna**, **Affirm**, **AfterPay**, **Sezzle**, **QuadPay**, **Checkout.com**, and **Mollie**.                                                                                                                                                                                                                                                                                 |
| **PayPal Express (Reference Transactions)**         | To process post-purchase upsells, PayPal Express requires **Automatic Payments / Reference Transactions** to be enabled by PayPal. If the *BillingAgreementID* parameter isn’t present in the PayPal transaction details, contact PayPal to activate Reference Transactions. Shopify requests approval automatically when **AOV.ai Post Purchase Upsell** is selected as the Post-Purchase App.                                                                                                     |
| **PayPal Payments Pro / Payflow Pro**               | Works only when the customer pays with a **credit card** (not wallet mode). Make sure CVV requirement is disabled. Express/Wallet mode through these processors isn’t supported.                                                                                                                                                                                                                                                                                                                    |
| **Shop Pay Installments**                           | The 4-installment payment method in Shop Pay is not supported for post-purchase offers. Only full-payment Shop Pay checkouts qualify.                                                                                                                                                                                                                                                                                                                                                               |
| **Gift Card & Manual Payments**                     | Post-purchase upsells won’t appear if the order was fully paid with a **gift card** or **manual payment** method such as Cash on Delivery or Bank Transfer.                                                                                                                                                                                                                                                                                                                                         |
| **Orders Without Shipping Address**                 | Post-purchase upsells won’t appear if no shipping address exists (for example, digital-only purchases or local pickup).                                                                                                                                                                                                                                                                                                                                                                             |
| **Orders for Local Delivery**                       | Orders using the “Local Delivery” method are skipped because payment vaulting isn’t supported.                                                                                                                                                                                                                                                                                                                                                                                                      |
| **Multi-currency & Duties**                         | Post-purchase upsells are skipped for orders involving **duties** or **multi-currency** checkouts. Offers appear only when payment is in the store’s **base currency**.                                                                                                                                                                                                                                                                                                                             |
| **Minimum Order Price**                             | Orders must be **$0.50 USD or more** to qualify for post-purchase offers. Free ($0) orders skip the post-purchase page.                                                                                                                                                                                                                                                                                                                                                                             |
| **Installment & Wallet Services**                   | Installment payments or unsupported digital wallets will skip post-purchase upsell (e.g., Klarna, Affirm, AfterPay, Apple Pay, etc.).                                                                                                                                                                                                                                                                                                                                                               |
| **Purchase Events (Analytics Limitation)**          | Third-party analytics (Google, Meta, Pinterest, Snap) using the Shopify Pixel API will record only the **initial checkout purchase**, not the upsell purchase value.                                                                                                                                                                                                                                                                                                                                |
| **Order Creation Delays**                           | In flash sales or high-traffic events, Shopify may delay order creation for performance optimization. In these cases, the post-purchase page request may be skipped even when properly triggered.                                                                                                                                                                                                                                                                                                   |
| **Multiple Apps**                                   | Only one app can control the Post-Purchase Checkout Extension at a time. Merchants must select **AOV.ai Post-Purchase Upsell** in **Settings → Checkout → Post-purchase page**.                                                                                                                                                                                                                                                                                                                     |
| **Fulfillment Holds**                               | Shopify places a **temporary fulfillment hold** on all orders in a post-purchase flow. The hold is lifted either when the buyer reaches the **Order Status Page**, or **1 hour** after checkout if they close before completing the flow.                                                                                                                                                                                                                                                           |
| **Interaction with the Order Status Page**          | The Post-Purchase Page is separate and should not replace the **Order Status Page**. Both serve different stages in the buyer journey.                                                                                                                                                                                                                                                                                                                                                              |
| **API Versioning**                                  | The **Post-Purchase Checkout Extension APIs** are not versioned and do not follow Shopify’s quarterly API release cycle.                                                                                                                                                                                                                                                                                                                                                                            |
| **Number of Post-Purchase Offers**                  | Customers can accept up to **two post-purchase offers** per checkout. Additional offers will not be displayed.                                                                                                                                                                                                                                                                                                                                                                                      |
| **Number of Post-Purchase Pages**                   | Each app can only create **one Post-Purchase page**, but you can paginate within it to show multiple sequential offers.                                                                                                                                                                                                                                                                                                                                                                             |
| **Sales Channel**                                   | Post-purchase upsells are supported only on the **Online Store** sales channel. Other channels (Shop App, POS, etc.) will not render the page.                                                                                                                                                                                                                                                                                                                                                      |
| **Unsupported Scenarios (Summary)**                 | <p>Post-purchase offers won’t appear when:<br>1️⃣ Payment gateway is external/off-site.<br>2️⃣ Payment method requires re-entering CVV.<br>3️⃣ Wallet used isn’t Shop Pay or PayPal Express.<br>4️⃣ Installment or third-party payment used.<br>5️⃣ Order is free ($0) or gift-card-only.<br>6️⃣ Local pickup or delivery used.<br>7️⃣ Multi-currency or duties applied.<br>8️⃣ A different app owns the post-purchase extension.<br>9️⃣ Order created via unsupported channel (POS, Shop App).</p> |
