Original Price - MSRP Pricing

by Community Manager on ‎01-14-2016 05:24 PM - edited on ‎03-16-2016 11:45 AM by Community Manager

As of SteelBrick CPQ’s Winter ‘16 Release, an Original Price Field has been added to SteelBrick's Quote Line Object. The Original Price field represents the "standard price" of the product and can come from the pricebook (standard functionality) or be used in Price Rules to adjust the original price to pull from a block price, cost + markup calculation, or however else the pricing method may be defined.

 

Depending on the pricing requirements, the Original Price field allows the current List Price to be considered a calculated List Price or adjusted List Price so discretionary discounts and uplifts can be added on top of the calculated List Price.

 

USE CASE: USING ORIGINAL PRICE TO APPLY PAYMENT TERM MULTIPLIER TO LIST PRICE

This example focuses on a Quote’s Payment Term. If the Payment Term is Net 60, the calculated List Price will have a 10% Uplift, and if the Payment Term is Net 90, the List Price will have a 15% Uplift.

  1. Create a Price Rule with Evaluation Scope set to Quote Line and Conditions Met set to All.
  2. Create a Price Action with Target Field set to SBQQ__ListPrice__c and a Source Formula which contains the Multiplier Calculation:
Example
Source Formula Multiplier Calculation Example - Net 60 Payment Term applies a 10% uplift:
CASE (SBQQ__Quote__r.SBQQ__PaymentTerms__c, "Net 60", SBQQ__OriginalPrice__c * 1.1, "Net 90", SBQQ__OriginalPrice__c * 1.15, SBQQ__ListPrice__c )

Snip20160104_30.png

Note: The above example uses a Source Formula in the Price Action. This Source Formula is only available if using the Advanced Calculator. For customers using the Legacy Calculator, a Quote Line Formula Field will have to be created with this formula and used as the Source Field in the Price Action 

 

USE CASE: USING A PROMO CODE TO APPLY A PROMOTIONAL DISCOUNT

This example is for a Sales Rep who would like to apply a Promotional Discount if a Product is quoted during a certain period of time. If the Quote Promo Code is entered and Products are added to a Quote during the Promotional period, a Discount should be applied to the Calculated List Price, thus allowing Sales Reps to apply an additional discretionary discount on top of the promotional discount.

 

The following example is intended for the Winter ‘16 release as we will use a lookup table to retrieve the discount percent and to evaluate the time period in which the promotional discount should be available.

 

  1. Create an Object or utilize the SteelBrick Lookup Data Object (Setup | Create | Objects | Lookup Data) to hold the Promotional data that will be referenced in the Price Rule
  2. Create Custom Fields on the Lookup Object for the Promotion Values: I.E: Promotion Code, Promotional Discount, Start Date, End Date
  3. Create a record on the respective object containing a Promotion Code, Promotional Discount %, and Promotion Start Date & End Date.original.png
  4. Create a Price Rule with Evaluation Scope set to Quote Line and Conditions Met set to All and the Lookup Object set to whatever Object was used in the above steps
  5. Create a Price Condition for the rule to fire if promo code is not equal to “null”
  6. Create Lookup Queries which will Match Quote or Quote Line fields to an available Promotion
    • Quote Promo Code equals Lookup Field Promo Code
    • Quote Expiration Date greater than Lookup Field Promo Code Start Date
    • Quote Expiration Date less than Promo Code End Date
  7. Create Price Actions
    • Source Lookup Field Discount into Target Field Custom Discount Percentage Field. This field holds the value of the Promotional Discount on the Quote Line Object so it can be used in the next Price Action's Source Formula (or Source Field Formula if using the Legacy Calculator)
    • Source Formula calculating Discount * Original Price and injecting into SBQQ__ListPrice__c target field

Screen Shot 2016-01-14 at 12.37.55 PM.png

 

USE CASE: APPLYING AN EXCHANGE RATE TO A NON-MULTICURRENCY ORGANIZATION

This example is for customers who do not want to enable multi-currency in Salesforce and prefer to handle exchange rate in a custom manner. The idea is to apply the FX rate directly to the list price based on a pick list containing the list of currencies. In some cases, client will use a lookup table to retrieve the FX rate, potentially also based on a time period.

 

  1. Create an Object for exchange rates or utilize the SteelBrick Lookup Data Object (Setup | Create | Objects | Lookup Data) to hold the Exchange Rate data which will be referenced in the Price Rule.
  2. Create Custom Fields on the Lookup Object for the Exchange Rate data: Ex: Currency, Exchange Rate
  3. Create an Exchange Rate record which contains the Currency Code & Exchange Rateoriginal (1).png
  4. Create a Price Rule with Evaluation Scope set to Quote Line, and Conditions Met set to All and the Lookup Object set to whatever Object was used in the above steps.
  5. Create Lookup Queries that match the related Exchange Rate (Quote Currency Code = Exchange Rate Currency Code).
  6. Create Price Actions
    • Source Lookup Field Exchange Rate into Target Field to hold Exchange Rate on the Quote Line Object
    • Source Formula calculating Exchange Rate * Original Price and injecting into SBQQ__ListPrice__c target field

Snip20160104_29.png 

 

 

Comments
by kzaharias1
on ‎05-09-2016 03:39 PM

I am trying to do the Promo Code example shown above (using SB release 25.0.6) and am getting an error that states "No metadata was retrieved for field SBQQ__QuoteLine__c.SBQQ__OriginalPrice__c.

by unnatshrestha
on ‎02-03-2017 06:15 AM

Try with the latest patch, it should work Smiley Happy

by dennispalmer
on ‎04-26-2017 09:24 AM

Did the latest patch work?  If so, which patch was it?

by unnatshrestha
on ‎04-26-2017 10:43 AM

Hi Dennis,


The fix was provided in old patch, I think it was in v25.0.16 (maybe). However, we're already migrated to v27.0.25 where the functionality already works.

 

Thanks

Unnat

by dennispalmer
on ‎04-26-2017 10:44 AM

I found the fix in 25.0.20.  Thanks!

by unnatshrestha
on ‎04-26-2017 10:46 AM

Awesome. 

 

FYI, v26 onwards, some of the functionality are pretty powerful. I would suggest you to upgrade to v27 or v28 (latest release that will soon be coming out).

 

 

Thanks,
Unnat

by dennispalmer
on ‎04-26-2017 10:48 AM

Yes I agree.  Some clients don't want to upgrade for fear of breaking their extremely customized instance.