> For the complete documentation index, see [llms.txt](https://docs.intelligems.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.intelligems.io/merchandising-experiences/offer-modifications/how-to-set-up-bundle-onsite-upsells.md).

# How to Set Up Bundle Onsite Upsells

Bundle Onsite Upsells let you offer product bundles directly on your product pages and in your cart drawer. Shoppers can add the product they're viewing plus complementary items to their cart in one click, usually at a bundle discount. You don't have to configure every bundle, layout, and rule by hand. Instead, you describe the bundle you want in plain language, and the visual builder creates and refines it for you.

#### Step 1: Create your upsell <a href="#step-1-create-your-upsell" id="step-1-create-your-upsell"></a>

1. Go to the **Merchandising tab** in your Intelligems dashboard.
2. Click **+ New Merchandising Experience**.
3. Select **Bundle Onsite Upsell** as the type.
4. Choose whether you want to create a **Test** or a **Personalization**.
5. Go to the **Modifications** tab and open the [**visual builder**](/general-features/editors/ai-visual-builder.md).

#### Step 2: Build with the visual builder <a href="#step-2-build-with-the-visual-builder" id="step-2-build-with-the-visual-builder"></a>

Once you're in Modifications, you'll enter the **visual builder** — this is where you design your upsell.

You have two ways to get started:

**Use a default prompt** Choose from a set of pre-built starting points designed for common bundle upsell use cases. The builder generates a working upsell based on the template, which you can then customize further. These are available to choose from when you first open the Visual Builder chat.

**Write your own prompt** Describe exactly what you want in your own words — for example, *"Add a 'Frequently bought together' bundle below the add-to-cart button on product pages, showing the current product plus two items from the same collection, with 15% off when all three are added.*" The builder generates an upsell experience based on your description.

**Refine with feedback**

After the builder generates a first version, keep iterating by giving it feedback in plain language — swap out products, change the layout, adjust the copy, add a discount, resize elements, and so on. Rather than digging through menus and settings panels, you're describing what you want changed and the builder implements it.

If you would prefer to refine manually, you can access the available settings by clicking on your Onsite Upsell in the left-hand nav.

#### Step 3: Preview your upsell <a href="#step-3-preview-your-upsell" id="step-3-preview-your-upsell"></a>

As you build and refine your upsell, the preview pane in the center updates in real time so you can see:

* Overall layout and placement
* How the upsell looks against your site's design
* Which products are being recommended depending on your current scenario (i.e. what product you are viewing or what product(s) you have in cart
* Copy and styling
* Discounting

#### Step 4: Save and finish set up <a href="#step-4-save-and-finish-set-up" id="step-4-save-and-finish-set-up"></a>

Click **Save** when you're happy with your upsell. This saves your work in the visual builder and now you can exit to the experience setup — it doesn't publish anything yet. From here, you can finish setting up any other details, like targeting, before saving the full experience.

#### Step 5: Set up targeting (optional) <a href="#step-5-set-up-targeting-optional" id="step-5-set-up-targeting-optional"></a>

By default, a visitor will be immediately assigned to your Bundle Onsite Upsell (or one of your test groups), but you can control who sees it using targeting rules:

* Currency and country targeting to limit your experience to a single currency and/or a list of specific countries
* UTM parameters to customize the experience under the Audience option
* JavaScript expressions to filter traffic under the Audience option
* Device type (mobile or desktop) filtering under the Audience option
* New vs. returning visitor filtering under the Audience option
* Mutually exclusive tests, to prevent visitors from being targeted by related experiments

**When to use targeting:**

* Test bundle upsells with specific customer segments first
* Display region-specific offers
* Limit to specific marketing campaigns
* Show different bundle upsells on different devices

You can learn more about targeting [here](/general-features/targeting.md)!

#### What happens next? <a href="#what-happens-next" id="what-happens-next"></a>

Now that you've created your Bundle Onsite Upsell, you can QA it using [this checklist](/merchandising-experiences/offer-test-qa-checklist.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.intelligems.io/merchandising-experiences/offer-modifications/how-to-set-up-bundle-onsite-upsells.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
