Salesforce CPQ’s configuration and quoting process is only one part of the what the product can bring to your Salesforce environment. If you’re not leveraging CPQ to manage your contract lifecycle you’re missing out on a big part of the value brought by Salesforce CPQ.
Let’s review how you can use Salesforce CPQ to generate contracts, subscriptions and assets which will allow you to have better data on what your customers are actively using and make renewal management easier.

What is a Contract

There’s often confusion when we have initial discussions during an implementation around the concept of the contract so let’s first clarify what is a contract in Salesforce CPQ.
We tend to think of a contract as the legal document, where in Salesforce, a contract is a record that will allow you to track the customer’s subscriptions.
From a Salesforce CPQ contract, you will be able to :
Amend an active contract
Create a renewal opportunity and renewal quotes
Subscription Products
To be able to use contracts and subscriptions you’ll need to setup your subscription products first so they can be added to quotes.
What is a subscription product?
In Salesforce CPQ you can sell different types of products :
One-off products
Ex.: Professional services, one-time training.
Products that do not get tracked as assets or subscriptions downstream.
Assets
Ex.: Hardware, perpetual software license
Those products will be converted to assets when you contract an opportunity or an order.
Subscriptions
Ex.: Maintenance, licenses, etc.
Those products will generate subscription records when contracted.
When added to a quote, the pricing will be affected by the subscription term.
How do we configure subscription products?
In order to leverage Salesforce CPQ for pricing and subscription management, we’ll need to setup our products correctly.

2 fields will be required to get a product to price as a subscription on a quote and result in the creation of a Contract and subscription downstream.
Subscription Pricing
Every subscription products needs a value in the subscription pricing fields which has 2 options
Fixed Price – Self explanatory, the product will be priced according to whatever price applies when it is added to a quote.
Percent of total – that subscription product will be priced as a percentage of some or all other quote lines present on a quote. When selected, you will also need to select a percent of total % value
Adding a subscription product to a quote

So let’s go with an example of a product set to :
Subscription term = 12
Subscription Pricing = Fixed Price
List Price = 10 000$
As you can see in the image above, if your subscription product is setup correctly, your pricing will change depending on the effective subscription term at the quote line.
The results then are :
Subscription term = 12 — List Price = 10 000$ — Net total = 10 000$ (1 year at 10 000$ per year
Subscription term = 24 — List Price = 10 000$ — Net total = 20 000$ (2 years at 10 000$ per year
Subscription term = 36 — List Price = 10 000$ — Net total = 30 000$ (3 years at 10 000$ per year
Effective subscription term and prorate multiplier
The subscription term field exists at 3 different level
Quote
Quote Line Group
Quote Line
Users can input the desired subscription term at whichever level they want (as long as the field is visible). In the case where a subscription term is entered at multiple level, the lowest level wins.
What does that mean?

Let’s look at the example above :
Quote subscription term = 36
Quote line group 2 subscription term = 24
Quote line #2 subscription term = 12
As you modify the subscription term values at the different level, you will see the value of Effective Subscription term changes.
The other value where you’ll see changes is Prorate Multiplier. Prorate multiplier is calculated based on the effective subscription term or based on specific dates you could have entered on the records (separate subject) and the Product’s Subscription term.
Ex.: 36 (Effective subscription term) / 12 (Product’s Subscription term) = 3
The Prorate multiplier is then used to calculate the Net Total of quote lines where it is multiplied by the List Unit Price minus any discount. For the advanced reader, yes there are more levels to the final price calculation which we’ll get to but this is an into.
Ex.: 10 000$ List Unit Price * 3 Prorate Multiplier = 30 000$ Net total
Create contracts and subscription records
As it was shown on the initial diagram, once you have a quote with subscription products there are 2 ways to get a contract with subscriptions created.
From the opportunity record by setting the Contracted checkbox to true
From the Order record by setting the Contracted checkbox to true
Both methods will result in the same contract and subscription records being created, we’ll prioritize the method where we use the order as the order will often be used for integration and will be required if you ever want to use Salesforce Billing.
How to create an order and order products

You can either set the Ordered checkbox to true on the quote or the opportunity. If you are using Salesforce CPQ+ you can create multiple orders per quote, again we’ll keep the simpler example for now.
Salesforce Contracts

Now that your contract has been generated, you’ll be able to manage the contract lifecycle from the record.
Contract fields
Once generated your contract will have some values from the quote it was generated from.
Contract Start date will be the start date that was selected on your quote. If your quote did not have a start date, no contract is generated.
Contract End Date will be calculated from your contract start date + subscription term
Contract Amendment

Why create an amendment? Amendments will allow you to have an always up-to-date contract and will also co-term all of your customer’s subscriptions.
From an active contract record you will be able to generate an amendment quote and opportunity by clicking the Amend button the contract record. The button is available on the default Salesforce CPQ contract page layout, make sure to add it to whichever layout you are using.
Once you click Amend, you’ll be presented with a screen that will show the list of subscriptions that will be part of the amendment.

After clicking Amend Salesforce will automatically generate the amendment opportunity and quote and take you to the new quote’s line editor.
Amendment quote
The start date of your quote will then default to today’s date or the start date of the contract if today is before the start date. The Net total of your quote will be 0$ until you start making changes as everything that shows up as already been accounted for in the previous quote.

At this point, you can modify the quote by adding products, changing quantities on the products that are already on the quote and even change the quantity to 0 which will terminate that subscription as of the start date.
I’ll push the start date of the amendment quote out 6 months to 7/12/2023 to see how CPQ will prorate the modified subscriptions in order to co-terminate the modifications

I have added fields to the field set to see more data points during testing.
Effective start date
Effective end date
Effective quantity
Both date fields are filled in as this is an amendment, the end date was calculated on the contract and the start date is based on what’s entered on the amendment quote.
The effective quantity represents what has been modified on the amendment quote.
Line 1 : I changed the quantity from 10 to 15, the effective quantity is 5 and the net total is calculated from the list price * 5 (effective quantity) * 0.5 (prorate multiplier for 6 months)
Line 2 : Quantity was changed from 5 to 0, resulting in an effective quantity of 0. This will terminate the subscription and results in a negative net total.
Line 3 : Quantity was not modified so effective quantity is 0, no changes.
Line 4 : This line was added to the quote. Quantity and effective quantity are 1 and the price is calculated for 6 months to co-terminate that subscription with the rest of the contract.
amendment order
At this point we’ll follow the same process that we outlined earlier to generate our order. The order should only have order products for the quote lines that were modified. Once the order is activated we can set Contracted to true on the order.
contract update from amendment
The behaviour will be slightly different at this point as a new contract does not get created, instead the existing contract will get updated.

Contract Renewals
Is your sales team managing every renewal opportunity like a new new deal. You don’t have full visibility into the contract lifecycle and your sales reps are doing too much work that could be automated.

Creating renewal opportunity and quote
You’ve have your initial contract, you’ve created amendments and have a full list of active subscriptions coming up for renewal, how do we process this using standard Salesforce CPQ features.
If you’re note using the Salesforce CPQ Contracts page layout, make sure the fields Renewal Forecast and Renewal Quoted are added to the layout.
Renewal Forecast : Setting this to true will trigger the creation of the renewal opportunity record
Renewal Quoted : Setting this to true will trigger the creation of the renewal quote
Once you set the checkboxes and save the contract record, you’ll trigger the creation of the renewal opportunity and renewal quote.

This task can be done by a sales rep, by a dedicated team or through automations which would allow us to auto renew under certain conditions.
Summary
Contract amendments and renewals are an important feature of Salesforce CPQ that you should be leveraging. This article should serve as a great introduction to getting started in using those features.