- 24 Sep 2024
- 6 Minutes to read
- Print
- DarkLight
Simulate pricing
- Updated on 24 Sep 2024
- 6 Minutes to read
- Print
- DarkLight
About pricing simulation
This pricing simulation uses Zilliant CPQ to create a quote and configuration but with pricing coming directly from ERP. This is known as external pricing because it happens outside of CPQ.
For more information on external pricing and other pricing approaches in CPQ, see About Pricing Engine
CPQ users can create a price simulation in ERP to get the individual price of sales items and the quotation price together with pricing conditions. All of the pricing conditions, pricing procedures, and the determination of pricing procedures are maintained in the SAP ERP system.
This BAPI-based pricing simulation makes use of different BAPI’s depending on the implementation. The result of the pricing simulation is the sales item price, quotation price, pricing condition, and scheduled delivery items.
Primary simulation use cases
Following are primary simulation use cases:
Use case 1
A customer implementation with non-configurable products in a quote that is also using SAP Cloud for Customer (C4C) with a SAP C4C add-on installed on their ERP. In this use case, CPQ uses the following BAPI:
BAPI COD_SALESORDER_SIMULATE
This BAPI supports features such as credit limit check and delivery information. However, it does not support the passing of configuration data to ERP.
Use case 2
A customer implementation that uses ERP product models in CPQ and the products/items in the quotes are a combination of configurable and non-configurable products. The configuration engine in use is SSC to render product models coming from ERP. In this case, CPQ uses the following BAPI for a price simulation:
BAPI_SALESORDER_SIMULATE
This BAPI accepts the configuration of the configurable products and pricing conditions. However, it does not support the customer credit limit check.
Use case 3
CPQ uses its own product models for configurable products. Note that you can still use classified product and pricing conditions from ERP.
BAPI Overview
The following sections discuss the BAPIs used for price simulations.
Price Simulation Using the Cloud for Customer (C4C) Add-On
Execute a price simulation with Cloud for Customer Add-On using the following BAPI:
COD_SALESORDER_SIMULATE – BAPI 1
This BAPI cannot be used with variant configuration.
Price Simulation Using the Standard BAPI
An especially useful BAPI with the use of SSC is the following:
BAPI_SALESORDER_SIMULATE – BAPI 2
It is helpful if the customer has written custom code in pricing logic on the ERP side. Calling the pricing simulation executes the pricing logic in ERP.
This BAPI is best used together with Variant Configuration (LO_VC) or with CPQ configuration logic.
The two BAPIs introduced in this section work for pricing simulation and most of the input and output parameters are the same. However there is an exception to the following BAPI:
BAPI_SALESORDER_SIMULATE
With this BAPI, the following data points/features are not supported:
* CREDIT_LIMIT (Credit limit of an account)
* CREDIT_EXPOSURE_AMOUNT (Exposure amount of an account)
* CREDIT_EXCEEDED_AMOUNT (Exceeded amount of an account)
* NET_PRICE (Unit Price of Sales Item)
* NET_VAL_HD (Total Price of Quote)
Import parameters for external pricing
The following table lists import parameters for external pricing:
Parameter | Mandatory/ Optional | Description | BAPI Applied |
---|---|---|---|
Account | Mandatory | ERP ID of account must be maintained in CPQ. This account ERP ID is also used as partner BUYER_PARTY and SHIP_TO_PATY. | 1.2 |
Sales Document Type | Mandatory | ERP ID of sales document type must be maintained in CPQ. | 1.2 |
Sales Organization | Mandatory | ERP ID of sales organization must be maintained in CPQ. | 1.2 |
Distribution Channel | Mandatory | ERP ID of the distribution channel must be maintained in CPQ. | 1.2 |
Shipping Condition | Optional | ERP ID of shipping condition must be maintained in CPQ | |
Division | Optional | ERP ID of division must be maintained in CPQ. | 1.2 |
Request Delivery Date | Optional | Quote requested date. | 1.2 |
Pricing Date | Optional | Quote pricing date. | 1.2 |
Valid from Date | Optional | Either quote effective date or quote creation date. | 1,2 |
Valid to Date | Optional | Sales document expiry date. | 1.2 |
Currency | Optional | Even though the currency is optional in BAPI call, if we do not pass currency, default currency defined in ERP is used which can lead to wrong pricing values. | 1.2 |
Products | Optional | External pricing will skip on the product that does not have an ERP ID. External pricing will skip on the product that is marked as not to export to ERP. External pricing will skip on the product if the product is marked as optional (i.e., “salesItemOptional” is true). | 1.2 |
Price Items | Optional | Price Items can be of two different types, header price Items and item Price Items. DSP allows manually created price items to export to an external system and let them involve in pricing. The ERP IDs of these manually created price items must be maintained in CPQ. | 1.2 |
Price Group | Optional | ERP ID of price group must be maintained in the CPQ. | 1,2 |
Price List | Optional | ERP ID of price list must be maintained in the CPQ. | 1.2 |
Variant Configuration | Optional | Applicable only to BAPI_SALESORDER_SIMULATE. | 2 |
Export parameters for external pricing
The following table shows export parameters for external pricing:
Parameter | Description | BAPI Applied |
---|---|---|
Price Item | Price Item belongs to both the Header level and Item level. These price Items with correct ERP ID needs to be maintained in CPQ beforehand. | 1.2 |
Document Header Net Value | The total value of quote price returned from the external system. | 1 |
Item Header Unit Price | The unit price for each of the sales items from the external system. | 1 |
Item Header Net Value | Total price for each of the sales items from the external system. The value is already multiplied with the quantity. | 1.2 |
Schedule Line Item | Each of the schedule line items contains delivery date, delivery time together with the required quantity, and confirm quantity. | 1.2 |
Messages | CPQ show all the messages (success, error, and warning) as a notification from the ERP system without filtering. | 1.2 |
Ref: 1 refers to** COD_SALESORDER_SIMULATE**
Ref: 2 refers to BAPI_SALESORDER_SIMULATE
Pricing simulation results
After executing the ERP pricing simulation successfully, the following column names appear on the price item table.
- Quantity: The amount or number of sales items.
- Net Price: The value for one quantity or unit price of the sales item in the order line item.
- Net Value: The value for all the quantities of the sales item in the order line item.
4.Total Price: The net price x quantity
The value could bind from SPARQL or IMC Script with custom logic applied to it. For example, when some manual prices (called shipping fee or service fee) are added to the sales item, but not defined in ERP, ERP does not contain the manual price. The total price SPARQL or IMC script can apply those manual price items fees to the sales item.
The price item table displays details of the price item/pricing conditions returned from SSC, as shown in the following table:
Number | Column | Description |
---|---|---|
1. | ID | Sequence ID of the pricing condition. The ID starts from 0 if the price item is returned from ERP whereas it is 6 digits if it is returned from SSC. The price item/pricing condition’s status (active/inactive) is shown in front of the ID. |
2. | ERP ID | ERP ID of the price item type. |
3. | Price Item Type | A price item type/condition type is a representation in the system of some aspect of the daily pricing activities. For example, discount or surcharge that occurs in the business transactions. The type of price item (Percent or Value) is shown at the end of it. |
4. | Pricing Date | Date of the price item valid. |
5. | Amount | Base amount of the price item that comprises base amount value and base currency. |
6. | Per | Base unit and unit of measurement of the price item. This is only applicable for SSC and ERP Pricing. |
7. | Target Amount | Target amount of the price item which comprises target amount value and target currency. |
8. | Source | Indicator showing the price item comes from ERP or CPQ (CPQ and SSC). |
9. | Description | Label of the price item type. |