Simulate pricing
  • 24 Sep 2024
  • 6 Minutes to read
  • Dark
    Light

Simulate pricing

  • Dark
    Light

Article summary

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:

ParameterMandatory/ OptionalDescriptionBAPI Applied
AccountMandatoryERP 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 TypeMandatoryERP ID of sales document type must be maintained in CPQ.1.2
Sales OrganizationMandatoryERP ID of sales organization must be maintained in CPQ.1.2
Distribution ChannelMandatoryERP ID of the distribution channel must be maintained in CPQ.1.2
Shipping ConditionOptionalERP ID of shipping condition must be maintained in CPQ
DivisionOptionalERP ID of division must be maintained in CPQ.1.2
Request Delivery DateOptionalQuote requested date.1.2
Pricing DateOptionalQuote pricing date.1.2
Valid from DateOptionalEither quote effective date or quote creation date.1,2
Valid to DateOptionalSales document expiry date.1.2
CurrencyOptionalEven 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
ProductsOptionalExternal 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 ItemsOptionalPrice 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 GroupOptionalERP ID of price group must be maintained in the CPQ.1,2
Price ListOptionalERP ID of price list must be maintained in the CPQ.1.2
Variant ConfigurationOptionalApplicable only to BAPI_SALESORDER_SIMULATE.2

Export parameters for external pricing

The following table shows export parameters for external pricing:

ParameterDescriptionBAPI Applied
Price ItemPrice 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 ValueThe total value of quote price returned from the external system.1
Item Header Unit PriceThe unit price for each of the sales items from the external system.1
Item Header Net ValueTotal price for each of the sales items from the external system. The value is already multiplied with the quantity.1.2
Schedule Line ItemEach of the schedule line items contains delivery date, delivery time together with the required quantity, and confirm quantity.1.2
MessagesCPQ show all the messages (success, error, and warning) as a notification from the ERP system without filtering.1.2
Note

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.

  1. Quantity: The amount or number of sales items.
  2. Net Price: The value for one quantity or unit price of the sales item in the order line item.
  3. 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:

NumberColumnDescription
1.IDSequence 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 IDERP ID of the price item type.
3.Price Item TypeA 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 DateDate of the price item valid.
5.AmountBase amount of the price item that comprises base amount value and base currency.
6.PerBase unit and unit of measurement of the price item. This is only applicable for SSC and ERP Pricing.
7.Target AmountTarget amount of the price item which comprises target amount value and target currency.
8.SourceIndicator showing the price item comes from ERP or CPQ (CPQ and SSC).
9.DescriptionLabel of the price item type.

Was this article helpful?

What's Next
Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.