Skip to Content
Product Information
Author's profile photo Saarthak Jain

Commodity Pricing Engine (CPE) – Introduction

Standard Pricing Approach

To understand Commodity Pricing Engine knowledge of SAP standard pricing is very important. I will first give a quick review of standard pricing.

In standard pricing, there are one or multiple conditions that correspond to different things in business. For example, consider a case of shopping for shoes in the season of sale. In such case, the system will show one condition that corresponds to the base price of that shoe (ZBAS) and another that corresponds to the seasonal discount (ZDIS). In both these conditions, the value is fixed and is not dependent on any factor. This is the case which can be achieved easily using standard pricing where we can maintain the condition record using MEK2 (for purchase) or VK11(for sales).

Why Commodity Pricing Engine?

What about commodities which are traded on an exchange, commodities whose prices depend on weather condition or other variable factors? For all such commodities, standard SAP pricing is not enough and Commodities Pricing Engine comes into the picture. Example, the price of petrol or the price of soybean change frequently.


In standard SAP Pricing, it is not possible to maintain complicated formulas which can yield a realistic result whereas in Commodity Pricing Engine (CPE) it is possible to give a market reference so that the prices are adjusted accordingly. With CPE it is possible to define price quotations, currency exchange rate, surcharge rule, rounding rule and whatnot.

The graph below shows the price of copper being traded at London Metal Exchange (LME). It is evident that the prices are not stable and change frequently.

For material like copper or iron, the prices are fluctuating rapidly and a fixed price is not the correct way to achieve its price. Hence, CPE is the ultimate solution.

What is CPE?

CPE is an extended SAP ERP Pricing that allows special price calculation for commodities traded at exchanges. CPE is designed to handle complex rules regarding price quotations. Moreover, these prices depend upon the market and hence having a market reference it a very important aspect in deriving price for a commodity.

Consider CPE as a black box for now to which we input a series of formulas that we create based upon our requirements. CPE will now gather data by breaking down the formulas into tiniest factor and then calculate price using this data. The final output from CPE black box would be a price that is relevant for the commodity being traded at that specific instant.

What is CPE made of?

CPE consists of numerous items and some of the important ones are:

  1. Formula
  2. Term
  3. Quotation Rule and Market Reference(DCS and MIC)
  4. Price Fixation
  5. Period Determination Rule
  6. Term Rule

There can be multiple pricing approaches depending upon the type of commodity being traded. Some commodities are trade only in futures like copper whereas some commodities like soybean have multiple components like futures and basis.

Setting up data according is an important part of CPE that I will cover in the coming blogs along with a detailed chapter on each of the above-mentioned topics.

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Alejandro Jacard Plubins
      Alejandro Jacard Plubins

      Great intro, interested in seeing what the other blogs will talk about since i work in a customer with CPE/CPF already implemented.

      Author's profile photo Saarthak Jain
      Saarthak Jain
      Blog Post Author

      Thanks Alejandro.

      Glad to know that the blog was helpful 🙂

      Author's profile photo Michael Waheeb
      Michael Waheeb

      What I know is that CPE is deactivated in S4 HANA , is it true or not?

      Author's profile photo Saarthak Jain
      Saarthak Jain
      Blog Post Author

      Hi Michael,

      No this is not True. CPE is activated in S4 HANA and available for a long time now.

      Author's profile photo Adedamola Haastrup
      Adedamola Haastrup

      Saarthak Jain  I will like to contact you. I need some basic training and enlightment on SAP CPE. I have a good understanding and i have a powerpoint presentation that i put together on it but i need your help. Please reach out or send me your contact.

      Author's profile photo Saarthak Jain
      Saarthak Jain
      Blog Post Author


      Please reach out to me at




      Author's profile photo Mehmet Ozgur Unal
      Mehmet Ozgur Unal

      Hi  Saarthak Jain ,

      If you share a implementation blog with configuration and example, it would be so beneficial.


      M.Ozgur Unal

      Author's profile photo Saarthak Jain
      Saarthak Jain
      Blog Post Author

      Hi Mehmet,

      It's coming soon.




      Author's profile photo Mahak Raithatha
      Mahak Raithatha

      Hello Saarthak,

      Eagerly waiting for more details on

      1. Formula
      2. Term
      3. Quotation Rule and Market Reference(DCS and MIC)
      4. Price Fixation
      5. Period Determination Rule
      6. Term Rule



      Author's profile photo Former Member
      Former Member

      Hi Saarthak Jain,


      Thanks for you post.

      We are using the CPE  for last 4 years.

      We have one requirement which I am not able to fix.

      We use two terms within a CPE formula, Term 1 for provisional and term 2 for final.

      Requirement is to always post Provisional invoice with the provisional term(Term 1) even if the quotation are fully available for the final term. Currently system auto selects the Final term (Term 2)  when the term is successfully evaluated.

      your help will be appreciated.




      Author's profile photo Saarthak Jain
      Saarthak Jain
      Blog Post Author

      Hi Zeeshan,


      CPE only considers the non-provisional term for invoicing. The provisional term serves other purposes.

      You don't even need to create an invoice to check this. Any changes on your provisional term will not affect the Formula status. Only and only if your non-provisional term is fully fixed/final, then the formula status would change.

      Formula status suggest that the price for the full quantity is either provisional or final and hence based upon that your invoice status is determined.

      So, you can see that the relationship is basically between Non-provisional term --> Formula --> Invoice type.




      Author's profile photo madhu thamba
      madhu thamba

      Hi Saarthak Jain,


      Can you please share the config steps for CPE..?


      Author's profile photo Bhushan Kolte
      Bhushan Kolte

      Hi Saarthak

      Can you please throw some light on the formula determination through brf+

      Thanks and Regards