Skip to main content

#CPQAskAnExpert2 discussing

I have two items related to reconfiguring bundles and how to handle existing subscriptions and assets. 

First Bundle

 

Currently we have a bundle configured as below:

  1. Bundle Header (Parent) - Product A (renewable subscription that has a price associated with it)
    1. Child Product (product option) - Product B (one-time asset that has a price associated with it).

When added to a quote, since the child is not flagged as Bundled, pricing sits at both lines. The business now wants to re-design the bundle. They want it to look like the following:

  1.  Bundle Header (Parent) - Product C (renewable subscription that has a $0 price)
    1. Child Product (product option) - Product A (renewable subscription that has a price associated with it).
    2. Child Product (product option) - Product B (one-time asset that has a price associated with it).

Pricing would sit at each child product line. I was thinking I could just reconfigure the bundle by creating the bundle header and adding Product A as a child and then Product B as a child. And remove the child option (product B) from from Product A (basically breaking the original bundle apart).  

But my concern is existing data that was sold under the current configuration. Do I create subscription bundle headers and then realign the current subscriptions and assets to the new bundle header (adding the Root ID, Required By ID, adjust the product option information on each subscription and asset)? If so, what are the possible risks to amendments and renewals? If this is not the best approach what would you suggest? I can’t create new product codes so I need to use the current products and product codes. 

 

Second Bundle

We have a one time subscription Service product that is part of two bundles. We want to break this apart from the bundles to make it standalone and have it only added on new sales quotes. This Service product is a one-time subscription product.  

For new sales, I need to hide the options within the two bundles and have the product auto added. For amendments, I need the options available for the products being revised but if we are adding one of the two bundles for the first time we need the option for the Service product hidden in both bundles.  

How would i build this? For new sales I am thinking a product selection rule to add the standalone product. For new sales a product selection rule to hide the options. For amendments, how would I approach this? 

 

Thank you. 

 

#Salesforce CPQ & Billing  #CPQ  #CPQAskAnExpert

1 answer
  1. Sep 27, 1:11 PM

    Hi Rachel,

    For the first bundle, I’d be cautious about manually changing the existing Subscription/Asset hierarchy (Root ID, Required By ID, Product Option, etc.). Those relationships are used by CPQ/Billing during amendments, renewals, and asset/subscription management, so manually realigning historical records could introduce issues later. 

     

    A safer approach is generally to keep the existing sold structure intact for historical subscriptions/assets and use the new bundle configuration for future sales. Since you need to retain the existing product codes, I’d validate the impact on amendments and renewals in a full sandbox before changing any existing subscription hierarchy. 

     

    For the second bundle, your approach of using Product Selection Rules for new sales makes sense. For amendments, I’d make the rule criteria aware of whether the quote is an amendment versus a new sale, and whether the bundle already exists on the customer's subscription/assets. That way, the Service product can remain available when amending an existing bundle while being excluded when the bundle is being added for the first time. 

     

    Because this involves existing subscription/asset relationships, I’d test several scenarios—new sale, renewal, amendment of the existing bundle, and adding the bundle for the first time—before deploying the configuration. If you can share the CPQ package version and how your amendment quotes are currently configured, it would help determine the exact rule conditions. 

0/9000

Hello, 

Currently our system is built that upon the creation of a quote for a new sale they set a custom Contract Term field on the quote to the length they want the term to be (for example, 36) and then on the quote they set the Subscription Term to 12. They have automation that then creates a Master Agreement that is a high level agreement that contains the full length of the contract (for example, start date of 1/1/2026 through end date 12/31/2029) and on the master agreement the contract term says 36. And then there is a child agreement that is related to the master agreement (a child to this agreement) that has a contract term of 12 and a start date of 1/1/2026 through 12/31/2026. Then on 12/30/20206 they create a new Subscription Agreement via an auto renewal process for Year 2 with dates of 1/1/2027 through 12/31/2027. Then do the same thing at Year 3 for dates of 1/1/2028 through 12/31/2028. Then on 1/1/2029 they complete what is called a contract renewal where the above starts over again with a new master agreement then child subscription agreements. 

 

Now with a new sales they want to move to a quote with the custom contract term of 36 months and subscription term of 36 months but within the quote are quote line groups for Year 1, Year 2, Year 3 of 12 months. When the contract creates they want one contract containing the whole contracts information. Then at the end of the 3 years the "contract renewal" occurs for the 36 months for the contract term and Subscription Term. 

 

The issue is existing contracts on the old structure. How do we handle the interim subscription agreements before the contract renewal if we remove the master agreement. And then how do we move to the new contract renewal process at the end of the compete term. I am assuming some sort of data migration but not sure what that would be or would look like. 

 

Has anyone else had to go through this? And nope they do not want MDQ. 

Thank you. 

 

#Salesforce CPQ & Billing  #CPQ  #CPQGurus  #CPQAskAnExpert  #Salesforce Developer  #Architects

2 answers
  1. Sep 20, 2:32 PM

    @Sai T

     

    Thank you for your response. This is the recommendation I gave as how to move forward with this change. 

    If you had to have some mechanism to determine the existing current structure versus the new what would you use? For example we have a Year in Contract field for the current structure which is a formula field but that doesn't say whether a contract is new or existing. I wonder if we should create a field on the backend that we update via an upload that flags a contract as "Legacy"/"Existing" new. Just trying to think of the best approach so that the automation will know that a contract is existing or new so we don't accidentally take the interim renewal and try to convert it to the new structure. We do have a field called Upcoming renewal type that says Subscription Renewal or Contract Renewal. I think we can use that to say basically exclude subscription renewal and look at the ones that are contract renewal.

0/9000

Looking for mentor / partner to prepare for salesforce cpq interviews. As well as looking for study partner.

#Trailhead #Salesforce CPQ & Billing #CPQ #CPQAskAnExpert #CPQGurus #Salesforce CPQ & Billing #Mentor
0/9000

Hi All, 

I wanted to export product data from slaesforce with it all its product options, corresponding prodcut rules and fetures. All the options constratints that is related to the particular prodcut. 

I tried to create a custom report but it also dosn't give all the necessary information related to thath particular prodcut. 

Would like to know if that's possible with the report or not if yes how it should be done.

 Are there any 3rd party app from the app exchange available or some one has used for such kind of export. 

Any kind of help is appricated. 

Thanks in Advance!

Regards, 

Priyanka Rai 

 

#Salesforce Developer  #Salesforce CPQ & Billing  #CPQ  #CPQAskAnExpert  #Salesforce CPQ & Billing  #Cpqexternalconfigurator  #Dataloader

0/9000

Hi, Can anyone have Salesforce CPQ Specialist  certification based learning videos?

#Salesforce CPQ & Billing #CPQAskAnExpert #CPQ

3 comments
0/9000

I have requirement where pricing is purely block price. At the same time there are 3 attributes associated with the product.  List price is driven by config attributes & tiers. 

 

Option 1: Build standalone products with Block pricing. Drawback I woul endup creating many products and same nees to be synced with ERP/Billing. 

 

Option 2: Alternatively I was working on poc where

  • Pricing method = List
  • Utilize Config Attributes
  • Build lookup data - price based on attributes & tiers
  • Set Quote Line Effective Qty = 1 through Price Rule(if possible)

This I'm trying to rationlize the product list,

I'm  looking for suggestion/recommendation whether I can build option 2 or stick with option 1.

Is it recommeded to change Effective Quantity in CPQ ?  

 

#SalesforceCPQ #CPQ #Salesforce CPQ & Billing #CPQAskAnExpert

4 answers
  1. Nov 4, 2024, 8:58 AM

    @Jayaprakash .You can configure "Block Pricing Field" on Product. This field is a field from quote line where you can save your configuration attribute value. So your block pricing will drive from the configuration attribute instead of quantity.

0/9000

We are currently analysing the product structure for our client, and here are our findings:

 

- There are over 8000 product records.

 - Each configured SKU has 500-600 product options (PO), and this number can exceed 1500 as the client expands globally.

 

The client desires a guided selling experience, where questions can be presented in layers, with around 7-8 layers of such questions and the potential for more than 10 independent questions as well. 

 

I believe there are some limitations around guided selling in Salesforce CPQ. I am also looking for information on the comparison between guided selling in SF CPQ and Logik.io, including their respective pros and cons.

 

Expecting there will a BOM explosion and the product configuration will be done site based.

 

#Salesforce CPQ & Billing  #Trailhead  #CPQAskAnExpert  #Cpqexternalconfigurator  #CPQ

6 comments
0/9000

CPQ - “Unauthorized” error after SBX refresh / Authorize Advanced Pricing Calculation Service

If you are running into this, and there was no button to authorize nor an oauth token to revoke, you probably had to contact support, have a video call, etc.

Try the last approach here instead:

https://help.salesforce.com/s/articleView?id=000382413&type=1#Salesforce CPQ & Billing #CPQ #CPQAskAnExpert
0/9000

Hi there new Admin! Did an employee recently leave your team?

 

Re-assign the Account Owner in Salesforce in 4 easy ways: Transfer Salesforce Account Owners (From Single Change to Mass Transfer) 

 

#CPQ #CPQAskAnExpert

0/9000

Hello, 

 

My question is similar to one posted by someone a few years ago, but the solution doesn't work for us, so I'm reposting a reformatted question specific to my situation.

 

I inherited this org a few months ago. It's my first multicurrency org. We have configured a number of bundles in our CPQ environment. I recently discovered that some of the bundles have our default corporate currency (USD) and others have the local currency for the target country. They are added to the standard and custom price books in their local currency (no idea why we have a custom PB when the prices are not different--they're all $0--but that’s another story). Now, product options appear in BOTH local and USD WITHIN the same bundle. This was likely the result of cloning bundles with related and product options instead of building new bundles from scratch because of the similarities between the bundle construction. I personally would prefer that all product options for, say, India bundle be in INR (rupees). If I change that, how does it impact current outstanding opps and quotes?

 

The bigger question...

 

I had a user recently ask me to create a bundle in the local currency (probably unaware it already exists that way). So he thinks it's in USD for some reason. This led me to perform a test, creating quotes in both USD and the local foreign currency (Argentine Peso). Well, both quotes have the exact same price values for all of the product options; the only thing that changed is the currency ISO code. So product option A is $30 USD on the US quote line and $30 ARS on the ARS quote line--instead of 5171.17 ARS. This doesn't seem right and has caused me to question this whole CPQ setup--at least as it relates to multicurrency. Can anyone shed some light on this?

 

Additionally, as the original post mentioned, some bundle configuration objects contain a currency field, such as Feature, Product Option and Product. For this Agentina bundle, the Feature currency ISO code is USD. Again, I don't like the mix and match currency inconsistencies. Do I need to conform all of these currency fields to the local currency of the bundle? Obviously, Product currency would remain USD.

12 answers
  1. Jan 6, 2023, 6:56 PM
    As suspected, pricing is based on certain factors that can’t be boiled down to a flat percentage rate.
0/9000