Material Ledger is a Tool that collects transaction data for materials whose master data is stored in material master.

The material ledger uses this data to calculate prices to valuate these materials.

The material ledger is the basis of actual costing. It enables material inventories to be valuated in multiple currencies and allows the use of different valuation approaches.

It would be a good idea to have a better understanding about the Product Cost Flow which includes:

Standard Cost Estimates and related configuration/processes

Work In Process/Variance/Settlement Processes under different manufacturing scenarios

Material Valuation and Movements throughout the Supply Chain and manufacturing cycle.

This helps to understand Material Ledger/Actual Costing in SAP quickly and seamlessly.

We will discuss about Multiple Currencies and Valuation Approaches as we move forward.

ML(Actual Costing) is another sub-ledger and the configuration mapping is required to achieve the business requirements from Inventory Valuation and reporting perspective. If we approach with this objective, it keeps us less overwhelmed in our understanding.


General Ledger represents the record keeping system for Company’s Financial data in the form of Debit/Credit item records posted. And the GL is validated by a Trial Balance.

Trial Balance is the closing balance of all GL Accounts for a given Date

Balance Sheet represents the financial position as on Date.

Now, our high-level fundamental concepts in place. We will go to the one level below General Ledger ie., Sub-Ledger,  below this level is the Journal Entry Postings.(either within FICO or through integrated postings). Please note some document numbers in CO/ML will appear  as Alphanumeric based on the business scenario/transaction, it is SAP derived based on internal algorithms.

Material Ledger/Actual Costing is one of the Sub-ledgers both from FICO perspective and from Inventory Management Perspective.

Material Ledger/Actual Costing is a Sub-Ledger like AP, AR, Fixed Assets – this gives us some relief indicating ML is just a sub-ledger and we are talking about this sub-ledger functionality.

Material Ledger as a Tool fulfills two basic objectives:

ability to manage material prices in multiple currencies/valuations, actual costing.

ML is a part of CO Module. IMG>Controlling>Product Cost Controlling>Actual Costing/Material Ledger.

This does not mean that ML is restricted for Management Accounting(CO), as the actual costing functionality would be used for valuation of inventory on the balance sheet.

what this ML Sub ledger will do and help business:

Inventory Valuation/revaluation

Visibility of Price changes

Updating Standard Cost with Actual Prices (optional)

Periodic Unit price etc.

Overall, it is the recording of Material related transaction postings either on account of price change/goods receipt or consumption – anything to do with Material in Multiple Currencies/Valuation Approaches


Why ML (not actual costing!) is mandatory in SAP S/4HANA?

ML is a matured stable solution and many customers are using ML in ECC. Due to the data model changes in SAP S/4HANA, some tables like xbew undergone substantial data model changes. Apart from Enhanced features, resulting in activation of Material Ledger is mandatory. During a conversion to SAP S/4HANA, the activation of ML and ML type/currency type assignment will be part of conversion process. (Start and Monitor Data Migration cockpit).  Actual Costing is a different topic, will be covered

Multiple Currencies and Valuation Approaches:

What is Multiple Currencies in ML? What are its objectives?

Multiple currencies or Parallel Currencies is a functionality that allows to record transactions in multiple currencies. It does not mean that user has to enter multiple currencies each time they post a document.

To keep this concept simple, lets take an Example for a Company Code A

Company Code Currency1:  USD

Company Code: Currency2: GBP

Transaction/Document Currency: CAD

If a transaction is posted in CAD say 100$ CAD, we can see the FI document in document currency, company code currency, group currency. This is the simple of multiple currencies/parallel currencies.

In SAP S/4HANA, we can have 8 user defined currencies and two fixed currencies (Local and Global).

Some technical info

 you will know once we look into ACDOCA table.

Local Currency: Company Code Currency (ACDOCA-HSL)

Global Currency/Controlling Area Currency: (ACDOCA-KSL)

User Defined/freely defined: (ACDOC- OSL, VSL, BSL, CSL, DSL,ESL, FSL, GSL).

In ACDOCA table, we can clearly see the field name as Amnt in CompCd Crcy, Amnt in Gl. Crcy, Amount in currency1,2,3…8

T-code: FINSC_LEDGER for currency settings.

Even though, 2 fixed &  8 additional currencies allowed – For ML only three currencies are allowed as we have three valuation views.

What is Multiple Valuation Approaches?

Multiple valuation approach is the ability to value inventory in more than one valuation method.

This approach is required for:

                   1.Legal Valuation – Company Code as a legal entity.

  1. Group Valuation – For overall group (Group consolidation) – Elimination of Inter-company profits, the common term used is “Markup”
  2. Profit Center Valuation – It is the reverse of Group Valuation. Means ‘markup’ is included not eliminated.
Key points:

Currency and Valuation Profile (CVP) – required for Transfer Pricing Scenario

Material Ledger type and currency Type – mandatory (OMX1,OMX2 t-codes). Based on these settings you can find in Accounting Tab1, the currencies maintained.

Assigning the ledgers to valuation views is an important aspect (Ledger from which CO reads actual data/define ledger for CO version) if actual costing/CVP is set up. Else, this  configuration  is not required. Minimum set up is sufficient.

Material Ledger/Actual Costing Configuration

Only Material Ledger Active without Actual Costing:

What does this mean?

It means only Material ledger is active and Actual costing is not active. Indicates that inventories are not valued at Actual Cost based on the Actual Costing Runs.

Material Ledger Active and Actual Costing Active

What does this mean?

It indicates inventories are valuated at actual cost.

Materials are valued at Standard Price which is then adjusted to reflect the difference between the preliminary price and cost.

Each transaction that is relevant to valuation (such as goods receipt, invoice receipt, or production order settlement) records at standard price and the variances against that price such as price difference, exchange rate differences)

At the end of the period, these variances are assigned to Inventories and consumption of the period across multiple production levels.

Material Valuation is therefore based on the periodic actual costs.

In Material Master, accounting tab1 – Price determination: 2 OR 3 determines the actual costing.

If the material is having price determination as 2 (Transaction based)- the price difference gets posted to FI and will not participate in inventory valuation at actual cost, still we can see the data of these materials in Material Price Analysis t-code CKM3N.

The key concepts to understand here are:

Price Determination in Material Master Accounting-1 tab

Revaluation of Consumption

Periodic Unit Price

Actual Costing cockpit (CKMLCP) note in S/4HANA AVR is a part of CKMLCP.

We have the option to default the price det either to 2 or 3 in activation of ML (Tcode: OMX1)

Configuration of Material Ledger:

If we look at the configurable components, ML configurable steps are minimum but its impact is high. We need to be clear about the configuration flow and its purpose. There are certain configuration which cannot be undone after production startup. As such the configuration is to be done with clarity of purpose.


In Material Ledger, the data model is changed resulting in enhanced feature changes in the functionality of certain programs like Actual Costing Run.

Now, let us touch base on high level understanding of Actual Costing Run in SAP S/4HANA.

T-code: CKMLCP – Cost Cockpit: Actual Costing  (Actual Valuation or Alternative Valuation Runs/AVR)

Same transaction code for AVR as well.

In the application area – options for Actual Costing/Alternative Valuation

When we create – options to select Actual Costing Run or AVR etc

We can see the Plants assigned

Sequencing Step: System  sequences the materials by determining which lower-level materials are consumed into higher levels. (Scenarios: Parent-Child relationship of material consumption at higher level materials.

Single level price determination: Any price and exchange rate differences that occur for a material on its own level gets determined. Here, system will calculated Actual Cost ie PUP (Periodic Unit Price) the unique term in ML for Actual Costing valuation.It takes the standard cost of cumulative inventory and adding any price or exchange rate differences posted during that period.

Multi-level price determination: Here the variances of lower level materials gets moved up to any higher-level materials that consumed them as determined in Sequencing step. Here any variances on cost centers which represents the difference between the plan and actual activity rates, will be transferred to the materials on the production orders that consumed these materials. Please see the configuration  step where we tell the system about this.

Revaluation of Consumption: here, any variances on material consumption happened on cost objects (eg: Cost centers ) will be proportionally transferred to these object or to a GL account which represents variance allocated to consumption.

WIP Revaluation: Here, the variance of any materials consumed in Production orders still in progress # to DLV/TECO will get proportionally transferred to WIP or GL account set up for this purpose. Please refer the configuration  step.

Post Closing: The end of the process where the calculations made in the preceding steps gets posted to GL based on the set up. Material status will be set as Closing Entry Complete. At this point no inventory posting to the period just closed above.

The above steps looks complex and overwhelmed. If we draw the flow chart of its logical sequence, will get better understanding as to why each step is required.

The above actual steps may change based on the business requirements and the configuration.

To simplify our understanding, just take a BoM – Bill of Manufacturing and see the parent child relationship, the cost flow including material cost and activity cost, price control set up of respective material. Simulate various scenarios.

Just take an example of Assembling the Desktop Computerlist out the components and resources required to assemble a desktop which is BoM(Bill of Manufacturing). And just visualize this process keeping in view of change in prices of the components due to its dynamic nature, just simulate what would be the actual cost at the time the desktop is ready as a finished product for sale. Just visualize this concept and see if you want to take the actual cost of components semi assembled at the end of the month or do not value at actual cost. We can take help of excel in listing out BOM and related costs/material movements, just to visualize this concept.

If we get into a  product like desktop or a Fan and understand its BoM, cost, etc and visualize the cost and material movements during a month – we can see what would be its Actual Cost (PUP), WIP at Actual Cost required? what is the actual cost difference that should get reflected in our financials.

Advantages of the Material Ledger:

Multiple currencies can be used in parallel: You can update your inventory using up to three currencies

Parallel valuations can be used, for example, to support transfer pricing for internal sales or comply with local legal requirements

You can use actual costing for externally procured materials and materials produced in-house; actual costing combines the advantages of valuation at a standard price with the advantages of using a moving average price

You can split goods usage and price differences between different expense accounts

Optimized real-time reporting

Month-end closing activities are simplified through the integration of MM data into the Universal Journal

Using the SAP material ledger improves the transparency of quantity and value flows for all your material movements and your inventory.


Q: Are the Stock-in-Transit (SIT) functionalities that are available in SAP ECC (with activation of LOG_MM_SIT) also available in SAP S/4HANA? If so, is there any difference in the functionality?

A: The SIT functionalities are also available in SAP S/4HANA. There is not much difference in the functionality itself, however. In SAP ECC, LOG_MM_SIT was an optional activation, while in SAP S/4HANA it is an “always turned on” business function. Also, with the introduction of single valuation ledgers, you could have the group or profit center transfer pricing postings in a separate ledger from the leading ledger.

Q: Is there a functionality in SAP S/4HANA to calculate intercompany transfer prices?

A: The calculation of transfer prices is not a specific functionality per se. The transfer price itself is simply a pricing condition (either in the Sales and Distribution or Profit Center Accounting module) that is set up between an intercompany customer and vendor. Therefore, the functionality is the same as a normal pricing condition. What group valuation (with the Material Ledger) adds to this is that it records the inventory value without the transfer price profit.

Q: Do we need to calculate a standard cost in profit center valuation view, in order to use PC transfer pricing?

A: No, you do not need to calculate standard cost in PC valuation, if you do not want to. In fact, you do not even need to use standard cost—you can have PC valuation with moving average cost. If you do value inventory with standard cost (but do not want to calculate it), you can update the PC valuation view with Transaction MR21.

Q: Can we set the price determination to three (in order to have a better material price analysis view), even though we do not use actual costing?

A: I have had this question before, and the reason seems to be because, with a price determination of 2 in SAP S/4HANA, you lose certain features of material price analysis that were available in SAP ECC. These features in SAP S/4HANA are only available with price determination of 3. While it is technically possible to have price determination 3 without actual cost, I would not recommend it, because price determination 3 implies that you will calculate an actual cost at the end of each month.

Q: Is there a mass processing option for manually changing the actual cost components?

A: Yes, this can be done by using function module CKMMC_MANCHANG_AUTOMATED, and following the instructions in SAP Note 653117 to create an upload program.

Q: Can we use material ledger with different fiscal year variant than core ledger (FI) ?

A: There is no concept of a Fiscal year variant in Material Ledger itself. Fiscal year variants are based on Ledgers in the Universal Journal. If you use Multi-valuation Ledger, then your Fiscal Year variant of the leading ledger will be the same in all Valuations of material ledger. If you use Single Valuation Ledger, then you should be able to have different Fiscal Year variants for the different ledgers (which represent separate valuation views in the Material ledger).

Q: Another question is do we need to close actual costing before we start posting in new period?

A: No. In both S/4 HANA and ECC, you will normally be closing actual costing after the new period has been opened. One of the reasons for this is that the Actual Costing “Post Closing” step reversed the inventory postings with a posting date of the beginning of the new period, therefore this new period needs to be open.

Q: Does ML in S/4 HANA allow negative inventory?

A: ML in S/4 HANA allows negative inventory, however, this needs to be specified in the Material Master and MM Period opening program.

Q: Is it easier to change Material Type or Valuation Classes than in ECC6? 

A: As far as I know, there is no difference with the process of changing Material Type or Valuation classes, as with in ECC 6.0.

Q: The same question about actual material ledger activated and Transfer Price, any point for attention?

A: The configuration for activating Material Ledger is the same as in ECC. One difference is that you need to specify the FI currency types that you want to use in ML. this is because FI now has eight extra currency types, while ML has only three. Transfer Pricing has been much more streamlined with S/4 HANA and you now have the option of having a separate ledger for each valuation view.

Q: Can you explain the differences from ECC to 1709 for how to setup LIFO or other balance sheet valuations?  Any thoughts on how to automate LIFO calculations?

A: To calculate LIFO you will need to define an accounting principle and assign LIFO method to it, and this assigned to material ledger.

Q: Are the MBEW EBEW tables going to be maintained as “views” in S/4Hana, or are they deleted?

A: Yes, the MBEW, EBEW, etc. tables will be maintained as compatibility views so that they can still be read with custom programs.

Q: Similar question, are the old ML tables MLHD, MLIT CKMLPP maintained as “views so that old programs & reports still work in S/4Hana?

A: Yes, these old ML tables are also maintained as compatibility views in S/4 HANA.

Q: Do we have to do new ML config before we execute the Migration steps?

A: yes, you at least need to reconfigure the currency type, if you used 0000. Also there is a new account modification PRL which is to be set up as the offset account key that is used for cost center credit posting (GBB-AUI).

Q: Is it mandatory to activate ML if I don’t have it in my company?

Yes, it is mandatory to activate ML when you move to S/4 HANA even if you did not have it in ECC. Remember however, that Material Ledger is replacing the tables that were used in ECC for Inventory Valuation, therefore there probably is already relevant data in your current system for Material Ledger, even if you do not have it activated. Material Ledger is now the new subledger for inventory valuation but you do not have to activate Actual Costing, if it is not needed.

Q: What is the impact of activating ML in ECC before moving to S/4 if you don’t have ML activated for materials?

A: If you want to activate ML in ECC before moving to S/4, you will need to perform a conversion of Inventory Valuation and Purchase Order history tables to Material Ledger tables. Note that, this this will need to be done anyway when you eventually move to S/4 HANA. The difference is that converting before hand gives the business some time to get used to material Ledger functionality, fosters user adoption, and provides historical information that can be accessed when you move to S/4 HANA. Note that if you Activate Actual Costing in ECC, the Actual Costing Run (CKMLCP) will be revamped when you move to S/4 HANA.