- Home
- Modules
- Material ledger
Material Ledger (CO-PC-ACT)
How SAP S/4HANA values inventory in several currencies and, with actual costing, turns standard prices into actual costs at period end.
Overview
The material ledger is the inventory subledger of SAP S/4HANA. It records every valuation-relevant goods movement and invoice per material, in each of its currencies and valuations.
It does two jobs:
- Parallel currencies and valuations are always on. Inventory is valued in the company code currency and in up to two more currencies.
- Actual costing is optional. At period end it calculates an actual price for each material and can revalue inventory and cost of goods sold.
| Function | In SAP S/4HANA |
|---|---|
| Inventory valuation by material | Always active |
| Several currencies per valuation area | Configured; up to 3, or 10 with universal parallel accounting |
| Legal, group and profit center valuation | Optional |
| Actual costing (periodic unit price) | Optional, switched on per plant |
| Actual cost component split | Optional |
| Work in process at actual cost | Optional |
| Alternative valuation runs | Optional |
- Mandatory
Active for every valuation area in SAP S/4HANA. It cannot be switched off.
- 3 → 10
Currencies: three in the classic material ledger, up to ten with universal parallel accounting.
- 3 views
Legal, group and profit center valuation of the same goods movements.
- Per plant
Actual costing is optional and is switched on plant by plant.
Price control and price determination
Two fields on the Accounting 1 view of the material master decide how a material is valued: the price control during the period, and the price determination at period end.
Standard price
Price control S
Goods movements are valued at a fixed price for at least one period, usually from the released standard cost estimate. Differences go to price difference accounts.
Advantages
- The same price all period, so production variances stay visible
- A benchmark for production methods and for margins in margin analysis (CO-PA)
- The base price for actual costing (price determination 3)
Watch out
- Does not follow purchase prices or production changes during the period
- Without actual costing, differences stay in price difference accounts and never reach inventory or cost of goods sold
- The gap grows with every level of a multilevel bill of materials
Moving average price
Price control V
The price is recalculated after each goods receipt, invoice receipt or order settlement: total inventory value divided by total quantity in stock.
Advantages
- Inventory value follows the actual purchase price
- Few price differences to analyze
- Simple for purchased goods with steady flows
Watch out
- Depends on posting order: an invoice posted after the goods issue never reaches the quantity already issued
- A wrong quantity or value changes the price at once, and every later issue uses it
- Backdated postings use the current price, not the price of that period
- No benchmark for production, and goods movements lock the material exclusively
| 2 · Transaction-based | 3 · Single-/multilevel | |
|---|---|---|
| Price control | S or V | S only |
| During the period | Valued at the standard or moving average price | Valued at the standard price (preliminary valuation) |
| At period end | Nothing more is calculated | The costing run calculates a periodic unit price and can revalue inventory and consumption |
| Used for | Materials outside actual costing | Materials in actual costing |
| Material | With actual costing | Without |
|---|---|---|
| Finished and semi-finished goods | S, price determination 3 | S |
| Raw materials and packaging | S, price determination 3 | S or V |
| Trading goods | S, price determination 3 | V is common |
| Spare parts and consumables | Usually left out: V, price determination 2 | V |
Statistical moving average price. For materials with price control S, SAP S/4HANA can stop updating the statistical moving average price. Goods movements then no longer lock the material exclusively, which speeds up high-volume posting. The switch cannot be undone.
Currencies and valuations
Each goods movement is updated in every material ledger currency at the exchange rate of the posting date. Inventory can then be read in a hard currency even when the local currency loses value.
Legal valuation
Each company code is a separate legal entity, and transfer prices between company codes stay in inventory. Always present.
Group valuation
The group is one entity. Intercompany profit is taken out of inventory.
Profit center valuation
Each profit center is treated as independent, with transfer prices between profit centers.
| Type | Currency | Valuation |
|---|---|---|
10 | Company code currency | Legal |
11 | Company code currency | Group |
12 | Company code currency | Profit center |
30 | Group currency | Legal |
31 | Group currency | Group |
32 | Group currency | Profit center |
40 | Hard currency | Legal |
50 | Index-based currency | Legal |
60 | Global company currency | Legal |
| Classic material ledger | Universal parallel accounting | |
|---|---|---|
| Currencies | Up to 3 per valuation area | Up to 10 |
| Currency settings | Material ledger typesOMX2OMX3 | Ledger and currency type settings in Financial Accounting |
| Valuations | Group and profit center valuation share a multi-valuation ledger, or each gets its own ledger | Each valuation in its own ledger, for example 0L, 2L and a group ledger |
| Material prices | One legal price per material | A price per ledger |
| Actual costing | One run for the valuation areas selected | A costing run per ledger |
| Available | All SAP S/4HANA releases | From SAP S/4HANA 2022, first for new implementations; profit center valuation from 2023 |
Actual costing
During the period, materials move at the standard price and the material ledger keeps every difference per material. At period end, the costing run turns those differences into a periodic unit price.
Preliminary valuation
Goods movements post at the standard price. Purchase price, production, exchange rate and revaluation differences are kept per material and per currency.
Single-level
The material’s own differences, such as purchase price variances or the variances of its production orders, are spread over its ending inventory and its consumption.
Multilevel
The share that went to consumption moves up to the products that consumed it, following the actual quantity structure of the period, not the planned bill of materials.
Periodic unit price (beginning inventory + receipts of the period, at actual cost) ÷ (beginning quantity + quantity received)
The costing run step by step
The actual costing cockpit (CKMLCP) was simplified in SAP S/4HANA. Switch the release to compare the steps.
SAP S/4HANA: five steps. Settlement does in one step what four steps did before.SAP ERP (ECC): eight steps. Four of them are merged into Settlement in SAP S/4HANA.
Selection
Selects the materials and activity types of the plants in the run.
Preparation
Builds the settlement records for each value flow: ending inventory, consumption and work in process.
Settlement
Single-level and multilevel price determination, consumption revaluation and WIP revaluation in one step. Calculates the periodic unit price.
Post closing
Posts the revaluation of ending inventory and, if chosen, of consumption. The inventory revaluation is reversed on the first day of the next period.
- Optional
Mark prices
Proposes the periodic unit price as the standard price for the next period.
Selection
Selects the materials of the plants in the run.
Determine sequence
Sets the costing levels from the actual quantity structure of the period.
- Now in Settlement
Single-level price determination
Spreads each material’s own differences over its inventory and consumption.
- Now in Settlement
Multilevel price determination
Rolls consumption differences up to the products that consumed them.
- Now in Settlement
Revaluation of consumption
Revalues consumption at the periodic unit price.
- Now in Settlement
WIP revaluation
Revalues work in process at actual prices.
Post closing
Posts the revaluation of ending inventory and consumption.
- Optional
Mark material prices
Proposes the periodic unit price as the next standard price.
Before the run
- All goods movements and invoices of the period are posted
- Product costing period-end is done: work in process, variances and order settlement (see Product costing)
- The next materials management period is open (
MMPV) - The previous period is closed in the material ledger
Alternative valuation runs
CKMLCPAVRruns actual costing over several periods, such as a cumulative year-to-date run, for parallel cost of goods manufactured, or with other valuation rules such as LIFO. It does not change the periodic run.
Worked example
One raw material and one finished product, in one currency (BRL), with no opening stock. All raw material consumed goes into the finished product.
| Standard price | 10.00 |
|---|---|
| Received at invoice price 10.80 | 1,000 units |
| Consumed by orders of F | 600 units |
| Ending stock | 400 units |
| Standard price (6 × R at 10.00 + 20.00 conversion) | 80.00 |
|---|---|
| Produced; actual conversion 2,200.00 vs 2,000.00 | 100 units |
| Sold | 80 units |
| Ending stock | 20 units |
Purchase
R is received at 10.00 and invoiced at 10.80: 1,000 × 0.80 = 800.00 price difference.
Single-level (R)
Periodic unit price 10,800.00 ÷ 1,000 = 10.80. Ending stock gets 320.00; consumption gets 480.00.
Multilevel (F)
480.00 from R plus 200.00 own production variance = 680.00. Periodic unit price (8,000.00 + 680.00) ÷ 100 = 86.80.
Post closing
F sold (80 × 6.80) adds 544.00 to cost of goods sold, F stock adds 136.00 and R stock adds 320.00.
- R stock 320.00 (32%)
- F stock 136.00 (13.6%)
- Cost of goods sold 544.00 (54.4%)
Period-end balances
Switch to see the balances with and without actual costing.
| Balance | Calculation | BRL |
|---|---|---|
| R ending stock | 400 × 10.00400 × 10.80 | 4,000.004,320.00 |
| F ending stock | 20 × 80.0020 × 86.80 | 1,600.001,736.00 |
| Cost of goods sold | 80 × 80.0080 × 86.80 | 6,400.006,944.00 |
| Differences left in the P&L | Price difference 800.00 + production variance 200.00Moved into inventory and cost of goods sold | 1,000.000.00 |
| Total cost of the period | Purchases 10,800.00 + conversion 2,200.00 | 13,000.00 |
The total is the same either way. Actual costing only moves the differences out of the price difference and variance accounts and into inventory and cost of goods sold. The cost of goods sold share needs revaluation of consumption in the run.
Transactions, apps and tables
The ones you meet most in a material ledger project.
| Period end | |
|---|---|
CKMLCP | Actual costing cockpit (costing run) |
CKMLCPAVR | Alternative valuation run |
CKMDUVMAT | Distribute usage variances of materials, such as inventory differences, to the orders that consumed them |
CKMDUVACT | Distribute usage variances of activity types |
MMPV | Open the next materials management period |
| Analysis | |
CKM3 | Material price analysis |
CKMVFM | Value flow monitor: differences not yet distributed |
CKM9 | Material ledger settings of a material |
| Prices | |
MR21 | Price change |
MR22 | Debit or credit a material |
CKMM | Change price determination (2 or 3) |
CKME | Activate planned prices |
CKMPCD | Price change documents |
ACDOCA | Universal Journal: inventory values, differences and closing postings in every ledger and currency |
MATDOC | Material documents: quantities of goods movements |
MLDOC | Actual costing documents per period and costing run: quantities, values, price and exchange rate differences. Written only where actual costing is active. |
MLDOCCCS | Cost component split of the MLDOC values |
MLDOC_EXTRACT | Compressed totals, condensed at the period shift (MMPV); MLDOCCCS_EXTRACT holds the cost components |
CKMLHD | Material ledger header: the cost estimate number (KALNR) of each material and valuation area |
MBEW | Material valuation master data; quantities and values are read from the material ledger |
FMLT_PRICE | Material prices per ledger (universal parallel accounting) |
SAP Fiori apps
- Manage Material Valuations
- Material Inventory Values – Line Items
- Material Inventory Values – Balance Summary
- Upload Material Inventory Prices
More on the Universal Journal in ACDOCA, ACDOCP and ACDOCU.
Configuration
The main Customizing activities, in order. They sit under IMG › Controlling › Product Cost Controlling › Actual Costing/Material Ledger, except the valuation level.
| # | Activity | Transaction | What to know |
|---|---|---|---|
| 1 | Define valuation level | OX14 | Under Enterprise Structure › Definition › Logistics - General. Plant level is needed for production planning and product costing. It cannot be changed later without a data conversion. |
| 2 | Assign currency types and define material ledger types | OMX2 | Enter the currency types explicitly. In SAP S/4HANA a material ledger type can no longer take them from FI or CO, and there is no default type 0000. |
| 3 | Assign material ledger types to valuation areas | OMX3 | Required for every valuation area. |
| 4 | Activate material ledger for valuation areas | OMX1 | The material ledger is always active in SAP S/4HANA. Here you set the default price determination. |
| 5 | Maintain number ranges for material ledger documents | OMX4 | |
| 6 | Configure dynamic price changes | OMX5 | Rules for price changes in the previous period. |
| 7 | Reasons for price changes | IMG activity | Gives a price change reason its own revaluation account (account key UMB). |
| 8 | Define and assign movement type groups | IMG activity | Groups movement types, for example consumption by orders or by sales, for the material update structure. |
| 9 | Define and assign the material update structure | OMX9OMX8 | Links movement type groups to process categories, such as consumption, and the structure to valuation areas. |
| 10 | Activate actual costing | IMG activity | Switched on plant by plant. |
| 11 | Activate actual cost component split | IMG activity | Shows the periodic unit price by cost component, such as material, labor and overhead. |
| 12 | Activate WIP at actual costs | OMXW | Values work in process of open orders at actual prices. |
| 13 | Check the settings | CKM9 | Displays the material ledger settings of a material and valuation area. |
With universal parallel accounting, the currencies come from the ledger settings in Financial Accounting instead of steps 2 and 3.
Why it matters in Brazil
Many manufacturers in Brazil run actual costing in the material ledger. Three reasons:
Income tax rules on inventory
The income tax regulation (RIR/2018) values products in process and finished products at production cost, from a cost system integrated and coordinated with the rest of the bookkeeping.
Without one, inventory is arbitrated: finished goods at 70% of the highest sales price of the period, and products in process at 80% of that value or 1.5 times the highest raw material cost.
Accounting standard
CPC 16 (R1), the Brazilian version of IAS 2, accepts standard cost only when the result approximates actual cost. Actual costing brings standard to actual every month.
A second currency
A group or hard currency, often USD, beside BRL keeps inventory comparable for foreign parent companies and through periods of high inflation.
A summary, not tax advice: check the current rules with your tax advisors. See also Brazil localization and Brazil taxation.
What changed from SAP ERP (ECC)
Worth knowing for a conversion project.
| Topic | SAP ERP (ECC) | SAP S/4HANA |
|---|---|---|
| Material ledger | Optional | Mandatory for every valuation area |
| Where values live | MBEW and material ledger tables such as MLIT, CKMLPP and CKMLCR | ACDOCA and MATDOC; MLDOC where actual costing is active |
| Costing run | 8 steps | 5 steps: Settlement replaces four of them |
| Delta posting runs | Available | Removed; alternative valuation runs post periodically |
| Price changes in the period | A late price change was needed once goods had moved | The standard price can change within the period |
| Rounding | Rounding differences in the distribution | Two-dimensional distribution avoids them, also by cost component |
| Statistical moving average price | Always updated | Can be switched off for S materials; cannot be undone |
| Currencies | A material ledger type could reference FI or CO currencies | Currency types entered explicitly; up to ten with universal parallel accounting |
Frequently asked questions
Is the material ledger mandatory in SAP S/4HANA?
Yes. It is active for every valuation area and cannot be switched off. Actual costing stays optional.
What is the difference between price determination 2 and 3?
With 2 (transaction-based), the material stays at its standard or moving average price. With 3 (single-/multilevel), it is valued at the standard price during the period and gets a periodic unit price from the actual costing run.
Can a material with moving average price be part of actual costing?
No. Price determination 3 needs price control S. Materials with price control V stay at price determination 2.
How many currencies can the material ledger hold?
Three per valuation area in the classic material ledger: the company code currency plus two more. With universal parallel accounting, up to ten.
When should the actual costing run be executed?
After all postings of the period and the product costing period-end, once MMPV has opened the next period. Post closing posts in the closed period and reverses the inventory revaluation on the first day of the new period.
Does the periodic unit price replace the standard price?
No. It values the closed period only, and the standard price stays for the next period. The optional Mark prices step can propose it as the next standard price.
What is the difference between CKMLCP and CKMLCPAVR?
CKMLCP is the periodic costing run for one period. CKMLCPAVR is the alternative valuation run, which covers several periods or applies other valuation rules without changing the periodic results.
Related pages
References
- Describing Material LedgerSAP Learning
- Material ledger innovations in SAP S/4HANA 1610SAP Community
- Universal parallel accounting in SAP S/4HANASAP Community
- Inventory accounting with universal parallel accountingSAP Community
- The material ledger and actual costing with SAP S/4HANASAP PRESS
- SAP Help Portalhelp.sap.com