Select Page

In this blog , we will learn about Contracted and Special prices in Salesforce CPQ. In the first Episode of this series we learnt about how to set up the core Pricing Methods in Salesforce CPQ. They were List, Percent of Total, Cost Plus Mark up and Block Prices. If you want to read about them then you can click here.

Contracted Price- This is a negotiated price with special customers. For example, Tango Foods can price a Lunchbox at a List Price of $15 per box. Kitchen supplies, a company is a special partner of Tango Foods and they buy in bulk. Tango foods can get into a special negotiated price with them which is $10 a lunch box.

Contracted pricing is a quite common and popular pricing strategy which is not industry specific. This can happen in any industry for example a technology systems integration partner having strong relationship with a Fortune 500 company can have a contracted pricing to provide technical talent. This price can be lower than the Market price for the talent. A building constructor could have a negotiated pricing with a realty company. Because this so popular and not industry specific and can be found in almost any org, this becomes an especially important pricing technique. Contracted Pricing in Salesforce CPQ is also related special prices and we will see the relationship in this blog.

Out here we must also understand that Contracted Pricing is different from Contract pricing. Contract pricing may not be negotiated. Contract pricing is for a specific purpose (a specific contract), it may or may not be negotiated.

Contracted pricing can be maintained in multiple ways in Salesforce CPQ and each different way has it’s own limitations and advantages:

  • Manual Maintenance of Contract Prices
  • Automatic Maintenance of Contract Prices

To understand the maintenance of contract prices, we must understand a Contracted Price object which is provided by Salesforce and it is through object that the Contract price is set.

Contracted Price:

A record in contracted price object must get created whenever contracted pricing is set in Salesforce. This record controls the contracted pricing. The contracted pricing object is a junction between Accounts, Products and Contracts and each contracted price record is taken into account by the CPQ quote calculation sequence during calculation of the net price in a quote line. This record specifies the contracted price or contracted discount. A discount schedule can be attached to this record which then gets adopted by quotes for this account. This record also specifies the governing contract from where the contracted price starts.

Steps to Maintain Contracted Price Manually

Step 1 –  There is a Contracted Price related list available on the Account. This needs to be maintained. As explained above in the Contracted object section, a price or a discount and/or a discount schedule needs to be maintained here. The start and end dates of the contracted price also needs to be mentioned here. For example Tango foods is giving a yearly contracted price of $10 per Lunchbox to Kitchen Foods then they will maintain the start and end dates accordingly.

Step 2The contracted price can be maintained for an individual product or products belonging to  a Product code or Family.

Steps to Maintain Contracted Price Automatically

Step1 –  Basically out here the Contracted Price record is created automatically by turning on a field in quotes or product. There is a field on both Quote and Product called ‘Generated Contract Price’. If this is turned on then Contracted Price object record is automatically created. This also means that the contracted price is created. Following are to be kept in mind here

  • Contracted price is created on the basis of the Net price on the quote
  • This net price is then taken as a base price for this Account and product combination for future quotes and is treated as a special price.
  • Salesforce CPQ defines that a product can have one contracted price record for a currency so turning this field on at the product level will cause the contracting to fail as a new contracted price is created every time a product is created. It is advised to turn this field on at the quote level. So every time a quote is created it will consider the previously created contract price.

Let’s take a quick example and see how this works in CPQ Price Waterfall

Scenario: Tango Foods is offering Lunchboxes at $15 List Price. There is a system discount of 10% for quantities between 20 and 30. There is an additional discount of 10%. No Partner and distributor discount. Tango Foods sales reps have to generate a contracted price and use it.

Quote No 1

  • List Price – $15 Per Lunchbox
  • Regular Price – 10% of $15 = $1.5 à $13.5
  • Additional Price 10% of 13.5 = $1.35 à $12.15
  • Net Price- $12.35
  • Contracted Price – $12.35 (Contracted price record is created at this price for LunchBox and Kitchen Foods combination)

Quote No 2

  • List Price- $15 Per Lunchbox
  • Special Price – $12.35 (Contracted Price from the previous quote)
  • Regular Price 10% of 12.35 = $1.23 – $11.12
  • Additional Price 10% of $11.12 = $1.11 – $10.01
  • Net Price- $10.01
  • Contracted Price – $12.35 (Contracted price record is created at this price for Lunch Box and Kitchen Foods combination). This will carry on for other quotes.

Now Let us see what Special Price is

Special Price – Whenever in circumstances the price of a product varies from List Price, it becomes the special price. Special price is the price if set takes precedence over the List Price in the calculation of Net Price by undergoing the calculations related to the Salesforce CPQ Price Waterfall.

One of the circumstances is the scenario of Contracted Price. Contracted Price if applicable to a Quoteline gets populated in the special price field and takes precedence over List Price for downstream calculations.

For example, in the scenario explained above in Contracted Price section, the contracted Price of $12.35 will be populated in the special price field in quote line and List Price will remain$15. But the downstream calculation to reach price will be done from $12.35

Special Prices are of following types

  • Contract Price
  • Renewal Price
  • Custom

If you want to learn more about renewal pricing, you can refer by blogs here.

Steps to Maintain Special Price  

Step 1 –  There is a special price type field which needs to be maintained. The available options are Contract Price, Renewal Price and Custom. Depending on the requirement of the company, this value is set. Generally it is used in contracted price scenario.

In case ‘Custom’ value is chosen then the users have the option of filling special price on the quote line.

Step 2- Once the Special Type values then depending on the value the price is calculated in the special price on the quote line

I hope that I have been able to tackle this topic of Contracted and Special prices. Your likes, comments and shares will motivate me to keep writing.