For the complete documentation index, see llms.txt. This page is also available as Markdown.

Hide Plans Based on Existing Subscription Products

A customer looking at upgrade options should see the plans that make sense for what they already own — not the entire catalog. In PeakCommerce this is not a rule you write. It falls out of product set membership, and understanding that is the difference between getting the result you want and fighting the platform.

How the filtering actually works

When the customer portal builds the list of plans for a subscription, it reads the rate plans the customer is currently on, finds the active product sets that contain them, and offers the other members of those sets.

The consequence is the important part: any plan that is not in one of those product sets is removed from the list. Only the customer's current plans are exempt, so they always see what they are on today. Everything else has to earn its place through set membership.

So the way to control what a customer sees is to curate product sets — a set is the answer to "if someone owns this, what else should they be able to move to?"

Trial-only visibility

Individual items within a set carry a visibility setting with two values:

  • Always — the item shows whenever its set is in play.

  • Active trial only — the item is hidden unless the customer is currently trialling, or it is already their current plan.

That second value exists for conversion offers you want trialling customers to see and paying customers not to.

Narrowing to one set

A journey or portal link can pass a specific product set, which restricts the offer list to that set alone. Use this when one product belongs to several sets and a particular entry point should only show one of them.

Gotchas

  • There is no "hide plan P if the customer owns product Q" condition. Visibility is emergent from set membership, not declaratively authored per plan. If you need a plan hidden from a particular cohort, the lever is which set it belongs to.

  • A plan outside every product set is invisible in the portal. This is the most common cause of "why can't the customer see this plan" — the plan is fine, it just isn't in a set.

  • Only active sets count. A set in draft state does not contribute plans.

  • Partner surfaces filter the same way, so a change to set membership moves both the customer portal and the partner view.

Last updated

Was this helpful?