> For the complete documentation index, see [llms.txt](https://docs.peakcommerce.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.peakcommerce.com/product/using-peakcommerce/products-and-bundles/product-sets.md).

# Product Sets

A **Product Set** is a curated group of products you present together — the menu of plans and add-ons a customer chooses from in a storefront or a journey. Rather than tying products to a single flow, you assemble them once into a set and reuse that set wherever you sell. Product Sets are also the unit that **Offers** and **Audiences** target, so they're how you control *who* sees *which* products. Manage them under **Commerce → Product Sets**.

<figure><img src="/files/ekyn0PQrna88xvsUcBx1" alt="A Product Set detail page with its base products and add-ons, each showing classification, pricing tiers, charges, and commerce rules"><figcaption><p>A Product Set (<strong>Commerce → Product Sets</strong>) — the base products and add-ons in the set, each with its pricing tiers and commerce rules.</p></figcaption></figure>

## What's in a set

A set is organized into two groups:

* **Base products** — the core plans a customer picks one of (for example a Starter and an Advanced tier). Each shows its classification, pricing tiers, and charges.
* **Add-ons** — optional services layered on top of a base plan (priority support, advanced analytics, extra usage), often priced as a percentage of MRR or on usage.

For each product in the set you can see its **classification**, **pricing tiers**, the underlying **charges**, and any **commerce rules** that apply — and the set carries a **status** of its own.

## How sets are used

* **Offers** and **Audiences** target a Product Set to decide who is eligible for it and what pricing they get — so the same set can power different experiences for different customers.
* A journey or storefront resolves a Product Set to render the available plans, instead of hard-coding products into the flow. This replaces the legacy journey-scoped "Categories" model.

## Per-item visibility

Every item in a set has its own **Visibility** setting, so a single set can show a slightly different menu to different customers without you maintaining separate sets:

* **Always shown** (the default) — the item appears for every customer the set is offered to.
* **Only during an active trial** — the item appears in customer-facing plan pickers only while the customer's subscription is in an **active free trial**, and is hidden from paying customers.

This is how you gate trial-specific choices — for example a free-trial plan that should be selectable while someone is evaluating, but shouldn't clutter (or tempt) the plan picker once they're paying.

Two behaviors worth knowing:

* **The customer's current plan is always shown**, regardless of its visibility setting — so the "you're on this plan" state renders correctly even after a trial-only plan's window has passed.
* **Trial state is detected automatically** from the connected billing system — each billing integration reports whether the subscription is currently trialing, so there's no flag for you to set or clear per customer, and the rule applies consistently across the [customer portal](/product/customer-self-service/subscription-management/customer-subscription-management.md), CSR tools, and public journeys.

## Create and manage

1. Go to **Commerce → Product Sets** and open or create a set.
2. Add **base products** and **add-ons** from your [Product Catalog](/product/using-peakcommerce/products-and-bundles/products-overview.md).
3. Set the order and any commerce rules, then set the set's **status** to **Active**.

## Gotchas

* **A set must be Active to resolve.** A storefront or journey pointed at a draft or inactive Product Set won't return products (it resolves to nothing) — activate the set before wiring it into a flow.
* Products in a set still come from the catalog: a product's own status and provider link govern whether it can actually be sold. See [Managing Products](/product/using-peakcommerce/products-and-bundles/managing-products.md).

## Related

* [Products Overview](/product/using-peakcommerce/products-and-bundles/products-overview.md)
* [Managing Products](/product/using-peakcommerce/products-and-bundles/managing-products.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 dynamically by asking a question.

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

```
GET https://docs.peakcommerce.com/product/using-peakcommerce/products-and-bundles/product-sets.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
