User story
As a product owner of a multi-tenant SaaS platform,
I want to provide a unified product tour experience that dynamically adapts to the feature set available for each customer,
so that I can deliver relevant onboarding without having to maintain separate tours for each customer variation.
Description
We have a SaaS product where all customers access the same user interface via their own subdomains (e.g., customer1.domain.com, customer2.domain.com). While the UI remains the same, each customer has a unique set of features enabled based on their subscription or use case.
For example, if a product tour contains three feature-based steps:
-
If a customer does not have Feature A, the related tour step should be hidden.
-
If a customer has Feature A and Feature B, only the relevant steps for those features should be shown.
-
If a customer has all three features, they should see the complete tour.
So we would like to design a single, flexible product tour that:
-
Automatically adapts to show only the steps relevant to the features available for that customer.
-
Supports conditional logic so that we don’t have to create a separate tour for each feature combination, which is not scalable.
-
Incorporates page-level logic based on CSS elements:
If a targeted CSS element (e.g., a .button, .tab, or .widget) doesn’t exist on the page, the tour should:-
Fallback to another step targeting a different CSS element (if configured), or
-
Skip the current Pointer or Post step entirely.
-
Use a Workflow to decide the next step in the Product tour (If this, then that)
-