New Features

The following features are new to CPQ in this release.

Cart Locking for Concurrent Access

Cart locking helps prevent data loss while a sales rep is working on a configuration. When a sales rep is working on a configuration (in edit mode), any other user who tries to access the cart at the same time will get redirected to a read-only view of the cart. The user in read-only mode can gain edit access only after the sales rep saves or finalizes or abandons the cart.

Optional Line Items for Configuration

You can now display your bundle, standalone and option products as non-mandatory (optional) products on the configuration and cart pages. With this functionality, sales reps can give a choice to their customers via the proposal if they want to mark the line item as not required, but can recommend these as part of the configuration. The sales reps can present these line items separately in a proposal document or keep them as a part of the configuration. An important aspect is that you can choose to price these line items separately or as part of the bundle (applicable for option line items). This helps the sales reps to have a distinguished view of the mandatory and optional line items in the cart before finalization, thereby helping to do efficient upsell.

Improved Usability and Customization for Favorite Configurations

The favorite configuration feature has been enhanced with the following customizations:

  • The columns on the Save As My Favorite dialog box are controlled through a custom setting named Save as Favorite Dialog Columns.
  • You can easily disable any UI elements related to Favorite Configurations on catalog, configuration and cart pages with a custom setting named Disable Favorites.
  • The action buttons against each favorite configuration record on the catalog page have been clubbed into a drop-down list with Add to Cart on top.

Smart Search Powered by Azure

The enhanced Smart Search would use the Azure platform in the back end for quicker search results. A system administrator can use different product fields to enhance the type-ahead for smart search of products on the catalog page. The smart search would work in conjunction with new filter type (slider). Different field types such as Date, Datetime, Number and Currency are supported with the slider.

Usability Enhancements for Analyze Quote Page (Cost and Profitability)

The Analyze Quote page for Cost and Profitability functionality has been enhanced with the following key pointers:

  • Customize the fields in the Analyze Quote table in the waterfall section with column settings
  • Edit the fields individually rather than editing at the column level
  • Blue background color to display the section you are viewing in the Product list section.
  • When the user updates or edits optional fields on the Analyze Quote page and clicks Reprice, the edited optional line items are updated.

Hiding Empty Option Groups during Configuration

The enhanced configuration page hides an option group tab (in the main section) and the option hierarchy on the right side of the configuration page in the following cases:

  • If an option group does not contain any option products.
  • If option products for this option group are fetched from another price list.

Invoking Proposal Document Generation Wizard from the Cart

The Proposal Document Generation Wizard has been enhanced with an improved accessibility of the wizard from the cart. Earlier, the wizard could be invoked from the Quote header page only. There are also minor improvements, such as hiding additional proposal documents, attaching proposal documents from local storage and merging them with existing ones.

Support for SF1

All the existing pages for the catalog, configuration, cart and proposal document generation are now supported on SF1 mobile app. This gives the sales representative an end-to-end configuration flow on SF1. Note that the mobile experience is optimal only on iPad and tablet screen size.

Asset-Based Ordering Enhancements

  • Filtering assets on the Installed Products page: You can now filter assets corresponding to a particular Quote/proposal. On the Installed Products page, from the Filter By section to the left, select a Quote/Proposal Id from the Quote/Proposal filter field. After applying this filter, you will see only those assets which are associated with the selected Quote/Proposal. Additionally, on the Installed Products page if you add a filter field and a lookup to only fetch the agreements associated with the OrderId, only those agreements associated with the OrderId appear.
  • Filtering assets for Opportunity-based renewal Quotes: For On demand Opportunity-based renewal quotes, you can implement a callback to filter assets to be displayed in the renewal quote/proposal. For this, you need to implement the methods- getAssetFilterExpr and getConfigProperties in the Apttus_Config2.IAssetRenewalCustomCallback.
  • Package Visualforce pages and Controllers required for Opportunity-based renewal Quotes: Whenever you have to create an On-Demand based renewal quote, you have to reference the Visualforce page on a button on the Account record.
  • Updating Assets for Opportunity-based renewal Quotes: When you select the Sync Assets to Quote flag on a proposal, whenever an asset is changed or updated, the asset line item in the Opportunity based renewal quote is also updated.

Application Management Settings and User Interface Enhancements

Custom settings and system-wide application settings have been enhanced to allow for easier configuration of different areas of the CPQ application.

  • Launch from new Admin UI: Settings can simply be modified by navigating to a new section in the New CPQ Admin user interface, allowing a logical grouping of the settings.
  • Logical grouping of settings: All settings related to pricing can be grouped together and items related to the Configuration Engine can be grouped together.
  • Admin configurable settings: You can also create your own group settings for customer specific settings that are not part of the standard CPQ settings.

Quote Collaboration - Merge Operation and Queue Filtering Enhancements

Consider that a parent cart has a product and that product is already collaborated by the Collaborator. Originally collaborated line item should get merged as per the transfer price map and merge field set. The child cart now has one line item containing the product. If the Quote Collaborator added the same line item and performs a merge operation, the line item would be overridden during the merge operation. From this release onwards, after the merge operation, if two line items have the same product, and the collaborator performs a merge operation, the line items are saved as individual records.
For Cost and Profitability, if the collaborator and the Sales User are from different business units and the collaborator sends a price which becomes one of the cost elements of the Sales Users cart and this price is negotiated, you must use multi-tier as the collaboration type. In Peer-to-peer collaboration, the only difference is that the merge copies over entire line items rather than merging field values based on transfer price map and merge field set.
Also, based on your location of line items on the cart, the list of queues/users is displayed for assigning the collaboration requests. This is helpful to the sales rep when your line items have different queue assignments and each line item has a separate location configured for it.

Favorite Configuration API

You can now create Favorite configurations dynamically using the saveFavoriteConfiguration API.

Loyalty Management

  • Loyalty Program Setup: Allows Marketing managers to manage point accrual rules including eligible period management, loyalty tier definitions, and tier upgrade rules and downgrade rules.
  • Loyalty APIs: New APIs are available to manage the following functions in Loyalty:
  • Register - this API creates an enrollment record in the system.
  • Unregister - this API removes the specified enrollment record in the system.
  • Adjust Points - this API allows events that are not associated with orders to generate points for the specified enrollment record.
  • Compute Points for Specific Order - this API takes an order id and calculates the points for all enrollments the order is associated with.
  • Compute Points for Specific Order and Specific Enrollment - this API takes an order id and an enrollment id and computes the points for the enrollment record.
  • Compute Points for Specific Enrollment - this API takes an enrollment id and processes all qualified orders and computes the points for the enrollment record.
  • Loyalty Calculation: With this release, order processing and order cancellation are supported. The loyalty engine processes active orders to accrue points for eligible enrollment records, which could result in the enrollment tier level upgrade. The loyalty engine also processes canceled orders to deduct points from the enrollment records, which could result in the enrollment tier level downgrade.

Lookup Field Setting Enhancements

In the Display Column Fields of the Lookup Setting, if you specify additional field values other than Name such as Ownership or Type. When you search for an object using the lookup field, the additional display columns show up in the search result pop-up.

Cart Line Item Enhancements for Handling Dates

When a line item of Charge Type = One Time or a proposal that is Evergreen is created, you can choose to hide the dates of the line item or in the proposal. Similarly, if the Line Item has Auto Renewal marked as true, you can choose to hide the dates on those line items.


Flags checked


If Price Type is One Timeon Line Item

Hide Dates For One Time (If Checked)

Hide Start Date and End Date on Line Item.

Hide Dates For One Time (If Not Checked)

Start Date and End Date are visible.

If Price Type is Recurringor Usage

Hide Evergreen End Date (If Checked) and AutoRenewalType = Evergreen on Line Item

End Date is hidden.

Hide Evergreen End Date (If Unchecked) and AutoRenewalType = Evergreen on Line Item

End Date should behave the same way it behaves for recurring.