Configuring advertised bundles
Pega Next-Best-Action Advisor requires strategy logic to determine the advertised bundles. After configuring the advertised bundles, you must configure that logic by creating an embedded strategy.
Adding advertised bundles
With advertised bundles, you can build a design-time bundle of products with a specific price to offer to the customer as an alternative to the personalized bundle.
- In Next-Best-Action Designer, click Engagement policy.
- In the Retention list, click Bundle, and then click the Subscription bundles arrow.
- In the Bundles section, click the More icon, and then click Create bundle.
- In the Create Bundle window, provide the details of your
new bundle:
- In the description field, enter Gold bundle.
- In the Context section, ensure that the ruleset is your application-Rules.
- Click Create and open.
- In the Edit Bundle window, on the
Details tab, provide the details for your
action:
- In the Key code field, enter GoldBundle.
- In the Category field, enter Bundle.
- In the Description field, enter a short description of the bundle.
- In the Benefits field, enter a short description of the advantages of your bundle.
- In the Next-Best-Action configuration section, provide
further details:
- In the Starting propensity field, enter 1.
- In the Offer ID field, enter PO-0001.
- In the Catalog ID field, enter PC-1.
- In the Monthly recurring cost field, enter 85.
- In the One time cost field, enter 125.
- In the Sub category field, enter Bundle.
- In the Contract length field, enter 24.
- In the Bundle Attributes section, select Yes, this is a bundle parent.
- In the What type of bundle parent? field, select Fixed Bundle.
- In the How will bundle members be specified? section, select Member actions will be explicitly defined and will not be subject to further arbitration.
- For all bundle member actions that you want to include in the bundle, do the
following steps:
- Click Add item.
- Select the Issue and Group.
- Select the Action.
- On the Treatments tab, click Add channel.
- From the drop-down list, select a communication channel, for example
Agent assisted.
- In the Configure Agent Assisted Treatment dialog box, click Add, and then click Apply.
- Click Save, and then close the Edit Action window.
- Create the Silver bundle by repeating steps 2 through 14, with the following attributes:
- Key code: SilverBundle
- Category: Bundle
- Offer ID: PO-0002
- Catalog ID: PC-1
- Monthly recurring cost: 65
- One time cost: 90
- Sub category: Bundle
- Contract length: 24
Determining the advertised bundle for Pega Next-Best-Action Advisor
Pega Next-Best-Action Advisor requires advertised bundle strategy logic to determine the best advertised bundle. Set that logic by editing the relevant strategy rule. Start configuring that logic by creating the underlying supporting decision.
An advertised bundle is a fixed, preconfigured bundle of offers based on the maximal total monthly cost. For more information, see New customer acquisition journey in Pega Customer Decision Hub.- Launch the Pega Customer Decision Hub portal by logging in with administrator credentials.
- In the Pega Customer Decision Hub portal, click .
- On the Supporting Decisions landing page, click Create.
- In the Create a supporting decision window, in the Name and Description fields, enter Retention static bundles.
- In the Real-time containers section, click Configure.
- In the Configure Containers dialog box, create a new
real-time container by doing the following steps:
- Click Create.
- In the Create Real-Time Container section, ensure that <your application>-Rules is selected.
- In the Name field, enter Retention static bundles.
- Click Create and open.
- In the Edit Real-Time Container window, click Save, and then click the Close icon.
- In the Configure Containers dialog box, click the Refresh icon.
- Click Add by the container that you created, and then click Apply.
- In the Configurations section, in the Alternate strategy section, click Configure.
- In the Configure Alternate Strategy dialog box, create a
new strategy by doing the following steps:
- Click Create.
- In the Create Strategy section, ensure that <your application>-Rules is selected.
- In the Name field, enter Advertised bundles.
- Click Create and open.
- In the Edit Strategy window, click Save, and then click the Close icon.
- In the Configure Alternate Strategy dialog box, select the
new strategy by doing the following steps:
- Click the Refresh icon.
- Click Add by the strategy that you created, and then click Apply.
- On the Supporting Decisions landing page, click Save.
Creating an embedded strategy for Pega Next-Best-Action Advisor
To set the required details for Pega Next-Best-Action Advisor, configure the embedded Advertised bundles strategy.
- In the Pega Customer Decision Hub portal, click .
- In the list of results, click RetentionStaticBundles.
- In the Configurations section, in the Alternate strategy section, click Advertised bundles.
- Check out the strategy.
- On the strategy canvas, add the shape, and then double-click the new element.
- In the Proposition data properties window, define import
settings:
- On the Proposition data tab, in the Business issue field, select Retention.
- Click Submit.
- Add the shape, and then double-click the new element.
- In the Filter properties window, define the filter
settings:
- In the Name field, enter Bundle members.
- On the Filter tab, in the Filter condition field, in the expression builder, enter .pyGroup != "Bundle".
- Click Submit.
- Add the shape, and then double-click the new element.
- In the Filter properties window, define the filter
settings:
- In the Name field, enter Fixed bundles.
- On the Filter tab, in the Filter condition field, in the expression builder, enter .BundleType=="FixedBundle"&&.FixedBundleConfiguration==true.
- Click Submit.
- Add the shape, and then double-click the new element.
- In the Properties window, define the settings:
- In the Name field, enter Association.
- On the Decision data tab, in the Import section, in the expression builder, select .
- Click Submit.
- Add the shape, and then double-click the new element.For more information, about aggregation, see Aggregation.
- In the Group by properties window, configure the following
attributes:
- In the Name field, enter Get Actual Service.
- On the Properties tab, in the Group
output rows by section, click Add
item and add the following items:
- .pyIssue
- .pyGroup
- .pyName
- In the Aggregates section, click Add
item, and then configure the following attributes:
- Property - select .TypeOfBundle
- To - select CONCAT
- Source - select .MemberGroup
- Delimiter - enter ,
- Click Add item again, and then configure the
following attributes:
- Property - select .CountOffers
- To - select Count
- Click Submit.
- Add another shape, and then double-click the new element.
- In the Group by properties window, configure the following
attributes:
- In the Name field, enter Sum Bundle Cost.
- On the Properties tab, in the Group output rows by section, click Add item and enter .BundleName.
- In the Aggregates section, click Add
item, and then configure the following attributes:
- Property - select .MonthlyMargin
- To - select Sum
- Source - select .MonthlyRecurringCost
- Click Add item again, and then configure the
following attributes:
- Property - select .MarginAmount
- To - select Sum
- Source - select .OneTimeCost
- Click Submit.
- Add the shape, and then double-click the new element.
- Define the
attributes:
- In the Name field, enter Join Services.
- In the Join source components with section,
configure the following attributes:
- Type - select Component
- Name - enter Get Actual Service
- In the Join when all conditions below are met
section, click Add item, and then configure the
following attributes:
- Join Services - enter .pyIssue
- Get Actual Service - enter .pyIssue
- Click Add item again, and then configure the
following attributes:
- Join Services - enter .pyGroup
- Get Actual Service - enter .pyGroup
- Click Add item again, and then configure the
following attributes:
- Join Services - enter .pyName
- Get Actual Service - enter .pyName
- Select Exclude source component results that do not match join condition.
- In the Properties mapping section, click
Add item, and then configure the following
attributes:
- Target - select .TypeOfBundle
- Source - select .TypeOfBundle
- Click Submit.
- Add the shape, and then double-click the new element.
- Define the
attributes:
- In the Join source components with section,
configure the following attributes:
- Type - select Component
- Name - enter Get Actual Service
- In the Join when all conditions below are met
section, click Add item, and then configure the
following attributes:
- [Data Join] - enter .pyIssue
- Get Actual Service - enter .pyIssue
- Click Add item again, and then configure the
following attributes:
- [Data Join] - enter .pyGroup
- Get Actual Service - enter .pyGroup
- Click Add item again, and then configure the
following attributes:
- [Data Join] - enter .pyName
- Get Actual Service - enter .pyName
- Select Exclude source component results that do not match join condition.
- In the Properties mapping section, click
Add item, and then configure the following
attributes:
- Target - select .TypeOfBundle
- Source - select .TypeOfBundle
- Click Add item again, and then configure the
following attributes:
- Target - select .CountOffers
- Source - select .CountOffers
- Click Submit.
- In the Join source components with section,
configure the following attributes:
- Add the shape, and then double-click the new element.
- Define the
attributes:
- In the Name field, enter Association Join.
- In the Join source components with section,
configure the following attributes:
- Type - select Component
- Name - enter Join Services
- In the Join when all conditions below are met
section, click Add item, and then configure the
following attributes:
- Association Join - enter .pyIssue
- Join Services - enter .MemberIssue
- Click Add item again, and then configure the
following attributes:
- Association Join - enter .pyGroup
- Join Services - enter .MemberGroup
- Click Add item again, and then configure the
following attributes:
- Association Join - enter .pyName
- Join Services - enter .MemberIdentifier
- Select Exclude source component results that do not match join condition.
- In the Properties mapping section, click
Add item, and then configure the following
attributes:
- Target - select .BundleName
- Source - select .pyName
- Click Add item again, and then configure the
following attributes:
- Target - select .TypeOfBundle
- Source - select .TypeOfBundle
- Click Submit.
- Add the shape, and then double-click the new element.
- Define the
attributes:
- In the Name field, enter Get Selected Services.
- In the Target section, click Add
item, and then configure the following attributes:
- Target - select .Benefits
- Source - enter @PegaMKTUtilities.GetContextValue("Bundle","ServiceType",Primary.ContainerPayload.Contexts)
- Click Submit.
- Add the shape, and then double-click the new element.
- Define the
attributes:
- In the Name field, enter Create Bundle Discount.
- In the Target section, click Add
item, and then configure the following attributes:
- Target - select .pyIssue
- Source - select "Retention"
- Click Add item again, and then configure the
following attributes:
- Target - select .BundleName
- Source - select .pyName
- Click Add item again, and then configure the
following attributes:
- Target - select .pyGroup
- Source - select "Discount"
- Click Add item again, and then configure the
following attributes:
- Target - select .pyName
- Source - select "StaticDiscount"
- Click Add item again, and then configure the
following attributes:
- Target - select .pyLabel
- Source - select "Static discount"
- Click Add item again, and then configure the
following attributes:
- Target - select .BundleType
- Source - select ""
- Click Add item again, and then configure the
following attributes:
- Target - select .BundleParent
- Source - select false
- Click Submit.
- Add the shape, and then double-click the new element.
- Define the
attributes:
- In the Name field, enter Bundle Cost Join.
- In the Join source components with section,
configure the following attributes:
- Type - select Component
- Name - enter Sum Bundle Cost
- In the Join when all conditions below are met
section, click Add item, and then configure the
following attributes:
- Bundle Cost Join - enter .BundleName
- Sum Bundle Cost - enter .BundleName
- Select Exclude source component results that do not match join condition.
- In the Properties mapping section, click
Add item, and then configure the following
attributes:
- Target - select .MonthlyMargin
- Source - select .MonthlyMargin
- Click Add item again, and then configure the
following attributes:
- Target - select .MarginAmount
- Source - select .MarginAmount
- Click Submit.
- Add the shape, and then double-click the new element.
- Define the attributes:
- In the Target section, click Add
item, and then configure the following attributes:
- Target - select .MonthlyRecurringCost
- Source - enter @divide(@round((.MonthlyRecurringCost-.MonthlyMargin)*100),100)
- Click Add item again, and then configure the
following attributes:
- Target - select .OneTimeCost
- Source - enter @divide(@round((.OneTimeCost-.MarginAmount)*100),100)
- Click Add item again, and then configure the
following attributes:
- Target - select .MonthlyNegotiationCost
- Source - enter @abs(.MonthlyRecurringCost)
- Click Submit.
- In the Target section, click Add
item, and then configure the following attributes:
- Add the shape, and name the new component Filter Not Selected.
- Configure the following filter condition: (@contains(.TypeOfBundle,"Internet") == false || (@contains(GetSelectedServices.Benefits,"Internet")&&@contains(.TypeOfBundle,"Internet"))) && (@contains(.TypeOfBundle,"Mobile") == false || (@contains(GetSelectedServices.Benefits,"Mobile")&&@contains(.TypeOfBundle,"Mobile"))) && (@contains(.TypeOfBundle,"TV") == false || (@contains(GetSelectedServices.Benefits,"TV")&&@contains(.TypeOfBundle,"TV"))) && (@contains(.TypeOfBundle,"Phone") == false || (@contains(GetSelectedServices.Benefits,"Phone")&&@contains(.TypeOfBundle,"Phone"))), and then click Submit.
- Add the shape, and then configure the following attributes:
- Name - enter Prioritise Biggest Bundles
- Expression - select .CountOffers
- In the Output section of the Prioritize shape, select All, and then click Submit.
- Add the shape, and then configure the following attributes:
- In the Properties section, choose to iterate over the Primary.Account.
- In the Access data for each entity field, enter Account.
- In the Name field, enter Accounts.
- On the Dictionary tab, select Is possible recipient.
- In the Subject ID field, enter .AccountID.
- Click Submit.
- In the context box representing the Accounts strategy, add another shape, and then configure the following attributes:
- In the Properties section, choose to iterate over the Account.Subscriptions.
- In the Access data for each entity field, enter Subscription.
- In the Name field, enter Subscriptions.
- On the Dictionary tab, select Is possible recipient.
- In the Subject ID field, enter .SubscriptionID.
- Click Submit.
- In the context box representing the Subscriptions strategy, add the shape, and then double-click the new element.
- Define the attributes:
- In the Name fied, enter Set Context.
- In the Target section, click Add
item, and then configure the following attributes:
- Target - select .pyGroupID
- Source - enter Subscription.SubscriptionID
- Click Add item again, and then configure the
following attributes:
- Target - select .pySubjectID
- Source - enter Subscription.SubscriptionID
- Click Add item again, and then configure the
following attributes:
- Target - select .SubjectName
- Source - enter Subscription.pyFirstName
- Click Add item again, and then configure the
following attributes:
- Target - select .IsShared
- Source - enter Subscription.SharedSubscription
- Click Add item again, and then configure the
following attributes:
- Target - select .IsDecisionMaker
- Source - enter Subscription.IsDecisionMaker
- Click Add item again, and then configure the
following attributes:
- Target - select .Priority
- Source - enter .StartingPropensity
- Click Submit.
- On the strategy canvas, arrange the shapes, as shown in the following figure:
- Save and check in your changes.
- Tutorial: Configuring supporting decisions for Pega Next-Best-Action Advisor
Previous topic Configuring the investment budget Next topic Determining the current bundle for Pega Next-Best-Action Advisor