# how to set up

{% hint style="success" %}
**Who can use this feature**

* Store owners and staff with permission to install and manage apps on Shopify.
* Merchants who use payment methods supported by post-purchase offers (Credit card, PayPal, Shop Pay). For other payment providers, use **Thank you page upsell** or **Order status page upsell**.
  {% endhint %}

## What is Post-purchase upsell?

The Post-Purchase Upsell feature allows you to recommend complementary products to customers after they complete their checkout. It’s an effective way to encourage additional purchases and boost your store’s Average Order Value (AOV).

## Why Post-purchase upsell?

* **Optimize "last-minute" purchase window**

  Post-purchase upselling utilizes last-minute purchase window where customers already have the momentum of a completed transaction, thereby suggesting products customers didn’t think to buy initially.
* **Tap into emotional buying**

  At checkout, customers are already in a buying mindset. Optimizing this psychological state, Post-purchase upsell creates time-sensitive deals that they can't resist.
* **Enhance customer shopping experience**

  You can offer useful product recommendations, such as suggesting specific products, applying percentage or fixed amount discounts for their purchases, etc to make the shopping more valued and engaging.

## How to set up Post-purchase upsell offer?

{% hint style="info" %}
**Requirements before using**

* Enable **AOV.ai Post Purchase Upsell** in **Shopify Admin → Settings → Checkout → Post-purchase page**.
* Store must support one of the accepted payment methods: credit card, PayPal, or Shop Pay.
* Customer must complete checkout before seeing the offer.
* Currency must match the store’s default currency.
  {% endhint %}

### Trigger Condition

### Step 1: Select Post-purchase upsell

Navigate **Offers** in the Menu > Choose **Create new offer** > Click **Select** on **Post-purchase upsell** card.

{% embed url="<https://d2798l25hiaz3h.cloudfront.net/Jr29G3Wyyo0p.webp>" %}

{% hint style="info" %}
If this is your first time using the feature, you’ll need to embed the app into your post-purchase page. Follow the instructions provided in the yellow banner.
{% endhint %}

### Step 2: Define your Offer information

{% stepper %}
{% step %}

### Offer name

Enter a name for your campaign so that you can easily identify it later on. You customers won't see this name on the storefront.
{% endstep %}

{% step %}
(Optional) Select **Edit discount code** to customize the discount applied.
{% endstep %}
{% endstepper %}

### Step 3: Add Trigger conditions

{% embed url="<https://d2798l25hiaz3h.cloudfront.net/oVvIvtwJWYMI.webp>" %}

{% stepper %}
{% step %}
Under **Trigger conditions**, choose one the trigger conditions so that your post-purchase offers can be shown:

* **Set conditions**: Target specific purchases.
* **No condition**: Show the offer to all customers.
  {% endstep %}

{% step %}
If you select **Set conditions,** you can build rules using criteria:

**Product conditions**

* **Product (or variant)** → Show only if the order includes or excludes specific SKUs.
* **Collection** → Target entire collections (e.g., “Winter Skincare”).
* **Included product tags** → Show only if products have ALL specified tags (AND logic). Use this to target orders containing items with every tag you list.
* **Excluded product tags** → Hide the offer if any product in the order has one of the specified tags.

**Order conditions**

* **Total order value** → Show only if cart subtotal reaches a threshold (e.g., orders above $50).
* **Product quantity** → Trigger based on the total number of items in the order. Supports ≥, ≤, and = operators.
* **US shipping state** → Restrict offers to customers shipping to specific US states.
* **Delivery method** → Target by how the order is being fulfilled.

{% hint style="info" %}
**Post-purchase upsell delivery methods**

Post-purchase upsell only supports **Shipping** and **Store pickup**. Local delivery and Pickup point are not available for this offer type because they are not compatible with the post-purchase checkout extension.
{% endhint %}

**Customer conditions**

* **Specific customer segment** → Target Shopify segments (e.g., returning buyers).

For each condition:

* Select the **Criteria** from the dropdown.
* Choose an **operator** (Include / Exclude, or ≥ / ≤ / = for numeric fields).
* Add the product, collection, value, or state to match.
* Add more rules with **+ Add ‘AND’ condition**.
  {% endstep %}

{% step %}
Review the **Summary** panel.

Confirm the conditions and note: *Offer will show after a payment is made via Credit card, PayPal or Shop Pay*.
{% endstep %}

{% step %}
Click **Preview offer** to test visibility.

{% hint style="success" %}
**Decision help**

* Start with **No condition** if you need to validate the layout and copy.
* Use **Set conditions** when the add-on should match items in the order (accessories, refills, size-ups).
  {% endhint %}
  {% endstep %}
  {% endstepper %}

### Step 4: Advanced settings

{% stepper %}
{% step %}
Open **Advanced settings**.
{% endstep %}

{% step %}
In **Active date**, pick a **Start date** and time. Use the timezone shown in the panel.
{% endstep %}

{% step %}
(Optional) Select **Set end date**, then pick the end date and time.
{% endstep %}

{% step %}
Select **Save**.
{% endstep %}
{% endstepper %}

***

### Upsell offer

This step defines *what* customers see after they pay. Configure each card from top to bottom.

{% embed url="<https://d2798l25hiaz3h.cloudfront.net/6NYVa7Tqgsyx.webp>" %}

#### Step 1: Offer settings

**Hide items already in the order** (checkbox): When enabled, any product that is already in the original order will not appear in the upsell.

#### Step 2: Set up Upsell #1

It's the first offer customers see on the post-purchase page.

{% stepper %}
{% step %}

### Choose how to add products

* **AI recommendation**: Let AOV.ai suggest products for this upsell based on your store type and goals. Review the suggestions and confirm. You can edit products later.
* **Specific product**: Pick one or more products/variants manually. Use this when you already know the best add-on.
* **Specific collection**: Select a collection to auto-populate from its items (ensure stock is available). Useful for dynamic or seasonal ranges.
* **Complementary product** `NEW`: Auto-suggests add-ons that are most often bought together with the **trigger products** you set in Step 3. Requires the offer to use **Specific product** triggers with at least one product. The app ranks suggestions by real co-purchase orders from your shop first, then fills remaining slots with best-selling products matching the trigger's product type.
* **Most expensive in cart**: Automatically offers a discount on the highest-priced item from the customer's current order. No manual product selection required.
* **Least expensive in cart**: Automatically offers a discount on the lowest-priced item from the customer's current order. Useful for "add the cheapest item free" promotions.
  {% endstep %}

{% step %}
(Optional) Open **Need upsell strategies?**

Explore recommended tactics for your store category and objective (for example, accessory add-on, bundle, refill). Choose a strategy to prefill suggestions, then review.
{% endstep %}
{% endstepper %}

#### Step 3: (Optional) Set up Downsell (if declined)

It is a secondary offer that appears **only when the customer declines Upsell #1**.

* Shows **after Upsell #1 is declined**; never shows when Upsell #1 is accepted.
* Respects **Offer settings → Hide items already in the order** if enabled.

{% stepper %}
{% step %}
**Turn on the toggle** in the Downsell card.

The card is off by default.
{% endstep %}

{% step %}
Select **Add product** and choose a source

* **AI recommendation** — Let AOV.ai suggest downsell items. Review and confirm.
* **Specific product** — Search and select one or more products/variants.
* **Specific collection** — Pick a collection to populate items dynamically.
* **Complementary product** `NEW` — Suggests products most often bought with your **trigger products**. Requires **Specific product** triggers. Good fallback for a downsell when Upsell #1 is declined — offer a frequently co-purchased accessory at a deeper discount.
* **Most expensive in cart** — Automatically targets the highest-priced item from the original order.
* **Least expensive in cart** — Automatically targets the lowest-priced item from the original order.

{% hint style="success" %}
**Best practices**

* Offer a smaller size, lower price, or fewer features than Upsell #1.
* Keep the decision easy: short copy, clear price/discount chips (**15%**, **Free shipping**).
  {% endhint %}
  {% endstep %}

{% step %}
After adding a product, review the product tile

* Check stock status. If you see **Out of stock**, replace the item or update inventory; OOS items won’t render.
* Use the **pencil** icon to **edit** the offer; **trash** icon to remove it.
  {% endstep %}

{% step %}
In the **Downsell** edit modal

* **Discounts** — Choose a type (for example, *Percentage discount*) and set the value (for example, **15%**).
* **Shipping** — Choose one of:
  * **Free shipping** (checkbox, ON by default) — no extra shipping charge; a "Free" chip appears on the tile.
  * Uncheck **Free shipping** to charge the customer → reveals:
    * **Shipping Fee** (number input, prefixed with store currency) — flat fee added to the order.
    * **Per unit** (checkbox) — when ON, the fee is multiplied by the quantity of the upsell product; when OFF, it is charged once regardless of quantity.
* **Use custom description** — Check to write a short message that replaces the product description in the widget.
* Select **Save**.
  {% endstep %}

{% step %}
Use **Preview offer** in **Summary** to verify layout and logic.
{% endstep %}
{% endstepper %}

#### Step 4: (Optional) Set up Upsell #2 (if accepted)

It's a follow-up offer that appears **only when the customer accepts Upsell #1**.

* Shows **after Upsell #1 is accepted**; never shows when Upsell #1 is declined.
* Works alongside a configured **Downsell** (each triggers based on customer action).

{% stepper %}
{% step %}
**Turn on the toggle** in the **Upsell #2** card (Off by default.)
{% endstep %}

{% step %}
Select **Add product** and choose a source

* **AI recommendation** — Use suggestions tailored to your store and goals; review and confirm.
* **Specific product** — Manually select product(s)/variant(s) that pair with Upsell #1.
* **Specific collection** — Choose a collection to draw items from.
* **Complementary product** `NEW` — Suggests products frequently bought with your **trigger products**. Requires **Specific product** triggers. Use this to keep Upsell #2 tightly related to what the customer already accepted.
* **Most expensive in cart** — Automatically targets the highest-priced item from the original order.
* **Least expensive in cart** — Automatically targets the lowest-priced item from the original order.
  {% endstep %}

{% step %}
After adding a product, open the **edit** modal (pencil icon)

* **Discounts** — Choose discount type and set value (for example, *Percentage discount → 10%* or *None*).
* **Shipping** — Same options as Upsell #1 / Downsell:
  * **Free shipping** (checkbox, ON by default) — no charge; "Free" chip shown.
  * Uncheck to charge a fee → fill **Shipping Fee** (flat amount in store currency) and optionally **Per unit** to multiply the fee by upsell quantity.
* **Use custom description** — (Optional) Replace the product description with a focused message.
* Select **Save**.
  {% endstep %}
  {% endstepper %}

***

#### Using Complementary product suggestions

**Complementary product** is a smart picker that finds products your customers often buy together with the trigger item(s) you set in **Trigger conditions → Specific product**. It replaces guesswork with real purchase data from your shop.

{% hint style="info" %}
**Prerequisites**

* Offer type must be **Post-purchase upsell**.
* Trigger condition must be **Set conditions → Specific product** (Include) with at least one trigger product.
  {% endhint %}

{% stepper %}
{% step %}
First, set your trigger: in **Step 1 → Trigger conditions**, choose **Set conditions** → add a **Product (or variant) → Include** rule with at least one trigger product.

{% embed url="<https://d2798l25hiaz3h.cloudfront.net/6EO7J5FJxPX7.webp>" %}
{% endstep %}

{% step %}
In **Step 2 → Upsell offer**, on any Upsell/Downsell card select **Add products → Complementary product** (badge **NEW**).

If the trigger is not yet set, a warning banner appears asking you to add a Specific product trigger first.

{% embed url="<https://d2798l25hiaz3h.cloudfront.net/4eRGlhEv5EG9.webp>" %}
{% endstep %}

{% step %}
The app opens the **Select complementary products** modal and fetches suggestions. Behind the scenes it queries recent orders and ranks candidates by:

1. **Co-purchase orders** with the trigger product (frequently bought together), sorted by how many orders contained both.
2. **Best-selling fallback** with the same product type as the trigger, for stores or triggers that don't yet have enough co-purchase data.

Each trigger product has its own ranked list, so suggestions for "Coffee beans" and "Coffee grinder" come back sorted independently — you won't see a grinder ranked above beans just because it sells well globally.

{% embed url="<https://d2798l25hiaz3h.cloudfront.net/pK7jecz7MopB.webp>" %}
{% endstep %}

{% step %}
Review the suggestions

* For a single trigger, you see one list of suggested products.
* For multiple triggers, switch between triggers in the modal header to pick the right complementary item per trigger.
* Use the search box to filter by name.
* If the store has no co-purchase or fallback data yet, the modal shows **No complementary products available** — use **AI smart pick** or **Specific product** instead.
  {% endstep %}

{% step %}
Tick the products you want and select **Select**. They merge into the card's product list with a **Complementary** badge; existing manual picks are preserved.

{% embed url="<https://d2798l25hiaz3h.cloudfront.net/kYJdmzn4SCzQ.webp>" %}
{% endstep %}
{% endstepper %}

{% hint style="success" %}
**When to use each source**

* **Complementary product** — You know which trigger items to target (for example, "anyone who buys a coffee machine"), and you want the app to find the highest-converting add-ons automatically.
* **AI recommendation** — You want broad product suggestions based on store goals, without committing to a specific trigger.
* **Specific product** — You already know the exact add-on and want full control.
  {% endhint %}

***

#### Subscription and selling plan support

When configuring a product offer (Upsell #1, Upsell #2, or Downsell), you can control how the product is sold:

| Option                | Description                                                                     |
| --------------------- | ------------------------------------------------------------------------------- |
| **One-time purchase** | Customer buys the product with a standard one-off payment.                      |
| **Subscription**      | Customer is enrolled in a recurring subscription selling plan.                  |
| **Both**              | Customer can choose between one-time and subscription at the time of the offer. |

To apply the discount to a subscription selling plan, enable **Apply discount to subscription selling plan** in the product edit modal and select the selling plan to use.

{% hint style="info" %}
Selling plans must be configured on the product in Shopify before they appear as options here.
{% endhint %}

***

#### Personalizing header text with variables

The offer header text supports dynamic variables that are replaced with real order data at the time the offer is shown:

| Variable         | Replaced with         |
| ---------------- | --------------------- |
| `{{first_name}}` | Customer's first name |
| `{{last_name}}`  | Customer's last name  |

To insert a variable, click the **{ }** button in the header text field and select the variable from the list.

***

#### What happens when multiple offers qualify?

If more than one Post-purchase upsell offer matches the same order, the app shows **only one** — the offer with the highest priority (priority **1** wins). Newly created offers are automatically placed at priority 1; you can reorder at any time from the **Offer list** page via **Manage priority**.

See [Manage offer priority](https://raw.githubusercontent.com/tuanvm-glitch/ppu-import-temp/advanced-settings/manage-offer-priority.md) for the full workflow.

***

You’ve now learned how to set up and configure your **Post Purchase Upsell** offers. By combining these steps, you create an upsell flow that feels natural for customers and drives meaningful increases in Average Order Value.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.avada.io/aov-post-purchase-upsell/how-to-set-up.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
