Variant Configuration Integration Overview

A typical integration landscape is shown in the image below.

As illustrated in the image, master material is sent from SAP ERP to SAP Cloud Platform Integration over SAP IDocs. SAP Cloud Platform Integration then calls the SAP CPQ SOAP API, and the following product data is sent from SAP ERP to SAP CPQ:

  • name
  • description
  • part number
  • material number (which becomes system ID in SAP CPQ)
  • unit of measure
  • catalog/hierarchy (which becomes category in SAP CPQ)
  • material type (which becomes product type in SAP CPQ)

Products that are imported from SAP ERP in this way become simple products in SAP CPQ and are placed in the preselected category. If there is a product hierarchy in SAP ERP, the hierarchy will also be replicated in SAP CPQ as a category, which means that one product will belong to two categories – the category it belongs to in SAP ERP and the preselected category in SAP CPQ. If categories that exist in SAP ERP (also known as hierarchy) do not exist in SAP CPQ, they will be replicated in SAP CPQ. On the other hand, the preselected category needs to be manually created.

Moreover, it is also possible to quantify products by entering an ISO code containing up to three characters in the Unit of Measure field in Products > a particular product > Definition. The maintained ISO code must be known in SAP ERP (see transaction CUNI). The Unit of Measure corresponds to the material's base unit of measure in SAP ERP. It is different from the sales unit of measure, since SAP CPQ does not support sales units that are different from the base unit.

In Setup > Product Catalog > Products and Products 2.0, products obtained via synchronization with SAP ERP and SAP Variant Configuration and Pricing have the value Yes in the column Synced from Back Office. The column Synced from Back Office is visible only when SAP CPQ is integrated with a back office application, such as SAP ERP.

Simple products previously imported from SAP ERP get their attributes and new product display type via knowledgebase synchronization. During the first knowledgebase synchronization, attributes are assigned to a specific characteristic group, which is a product tab in SAP CPQ. Attributes retain the same layout order they originally had in the Variant Configuration, with the exception of attributes appearing in more than one tab. Those attributes do not retain their original positions.

SAP CPQ product tabs are globally defined, which means that any change to a tab name in SAP CPQ will affect all the products in which the tab is included.



Example: In SAP CPQ, there is a Hardware tab. The said tab is added to the following products: Monitor, Keyboard and Mouse. After some time, you decide to change the name of the Hardware tab to Gaming. Once the tab is renamed, the changes are visible in the aforementioned products, that is, the Gaming tab is now a part of Monitor, Keyboard and Mouse.


With every new synchronization, new attributes will be added, but they will not be assigned to any product tab in SAP CPQ. This means that administrators will have to reorder attributes and assign them to appropriate product tabs by using the drag-and-drop functionality of the configuration layout in SAP CPQ.

Furthermore, SAP CPQ allows administrators to synchronize translations in various languages which they are maintaining in Variant Configuration. Every time knowledgebase synchronization is executed, translations are synchronized for all products and product versions obtained via that specific knowledgebase synchronization. However, it is also possible to synchronize translations for products that were obtained via earlier synchronization jobs. Translations can be synchronized on the level of product names/descriptions, attribute names/descriptions, attribute value names/descriptions, and tabs. More information about synchronizing translations is available on the Integrating SAP CPQ with SAP Variant Configuration and Pricing page.

Additionally, prices for simple products are sent from SAP ERP to SAP Cloud Platform Integration over IDocs. SAP Cloud Platform Integration then calls SAP CPQ SOAP API for pricing and loads prices into SAP CPQ pricebooks, which is why pricebooks need to be manually created in SAP CPQ. Moreover, updated prices in SAP ERP will be synchronized with pricebooks in SAP CPQ.

Furthermore, as illustrated in the image above, knowledgebase synchronization is initiated from SAP CPQ. Depending on the knowledgebase structure, the synchronization converts simple products to either configurable products or parent-child products by calling SAP Variant Configuration and Pricing to get attribute name, description and value. As previously explained on the SAP Variant Configuration and Pricing integration page, knowledgebase synchronization is run on a daily basis. In case the synchronization fails, the administrator is notified via email, and the job will be rescheduled for execution during the next synchronization. The job will get information about products that were created or updated in the last 24 hours. Additionally, every change to the product model in SAP ERP that results in a new knowledgebase version will lead to a new product version. Product versions cannot be added or deleted in SAP CPQ. Additionally, product versions differ in effective date.
Moreover, product rules are executed only in SAP Variant Configuration and Pricing.

Prices for configurable products are synchronized in real time from SAP Variant Configuration and Pricing, and are displayed in the responder. The responder displays a complete breakdown of the pricing for products originating from SAP Variant Configuration and Pricing, which consists of the base price and the sum of surcharges. The breakdown can be modeled to retrieve any pricing function from the backend (via base price, selected options and variant conditions attached to the characteristics in SAP General Attribute Mappings). Once a product is configured, the pricing breakdown is displayed in the Configuration Summary of the responder (see the screenshot below). If the surcharges do not have descriptions, they are named after their keys.



Additionally, the tab Conflicts displays in the responder whenever a conflict is created in the configurator (see the screenshot below). The tab lists all the conflicts occurring in the product along with their specific causes.



When entering a numeric value for a free-input attribute synchronized from Variant Configuration, users can see the allowed range of values next to the input field . Any changes made to these value ranges are synchronized and displayed in SAP CPQ in real time. SAP CPQ supports all types of value ranges that can be obtained from Variant Configuration.


Traffic is monitored via the SAP Passport, a payload/token attached to outbound API calls sent from SAP CPQ to SAP SAP Variant Configuration and Pricing and SAP Cloud Platform Integration.

Following the 1902 release, items obtained from Variant Configuration via knowledgebase synchronization now only display in the catalog if they are flagged as root items. Consequently, configurable items which are not root items, and thus cannot be configured, no longer appear in the catalog. Some existing items may disappear from catalogs after the release due to the implementation of the new flag. For that reason, it is necessary to perform a new knowledgebase synchronization for existing items to obtain the new flag.

However, only the items that are getting updated to a version from Variant Configuration can obtain the new flag. If the item version in Variant Configuration is the same as the item version in SAP CPQ, the flag is not obtained through knowledgebase synchronization. If this is the case, and the problem is not solved through knowledgebase synchronization, please contact the SAP CPQ Support team for assistance in this matter.

To learn about the limitations of Variant Configuration integration with SAP CPQ, please refer to the SAP Note 2726240 - SAP Variant Configuration Integration with SAP CPQ.

You are here: SAP Sales Cloud CPQ Online HelpAdmin Page HelpIntegrationsVariant Configuration IntegrationVariant Configuration Integration Overview