MM Inventory Valuation Part 3: Actual Costing, Periodic Unit Price and Period-End Closing
Material ledger actual costing in S/4HANA: collecting price and exchange rate differences during the period, the actual costing run (CKMLCP) that calculates periodic unit prices, multilevel settlement through production, revaluation of ending inventory and COGS, and typical closing issues.
Explanation
📌 KEY POINTS
✅ Material ledger is always active for valuation in S/4HANA; actual costing is optional.
✅ During the period, materials are valued at standard; differences are collected.
✅ The actual costing run (CKMLCP) calculates periodic unit prices and rolls differences through production levels.
✅ Closing revalues ending inventory and consumption (optionally COGS) with actual costs.
⚠️ Unresolved errors (missing prices, open steps) block the closing run for dependent materials.
━━━━━━━━━━━━━━━━━━━━
▶ WHERE WE ARE
Part 2 covered price control. Now actual costing.
━━━━━━━━━━━━━━━━━━━━
▶ 1. DURING THE PERIOD
- Standard price postings; differences collected per material.
━━━━━━━━━━━━━━━━━━━━
▶ 2. COSTING RUN
- CKMLCP steps: selection, determine sequence, settlement (single/multilevel), revaluation, post closing.
━━━━━━━━━━━━━━━━━━━━
▶ 3. PERIODIC UNIT PRICE
- Actual price per period; optional price update for next period.
━━━━━━━━━━━━━━━━━━━━
▶ 4. REVALUATION
- Ending inventory and consumption revalued.
━━━━━━━━━━━━━━━━━━━━
▶ 5. CLOSING ISSUES
- Materials with errors, cyclic structures, missing activity prices; reversal and rerun.
━━━━━━━━━━━━━━━━━━━━
▶ STEP BY STEP
- Post GRs with differences during the period.
- Run CKMLCP steps in test then update mode.
- Analyse results and error materials.
✅ CHECKPOINT: all materials settled without errors and closing entries posted.
Code example
===== STEP 1: cockpit =====CKMLCP: selection → sequence → single-level settlement → multilevel settlement → revaluation of consumption → post closing ===== STEP 2: analysis =====CKM3 material price analysis | error logs per step ===== STEP 3: typical issues =====Missing activity prices | cyclic production | materials with status errors | late postings after closingReal project scenario
A plant had a large actual-costing variance that couldn't be allocated because several materials failed in multilevel settlement due to missing activity prices. The team fixed prices, reran settlement and added a pre-closing checklist (activity prices, open postings, material status).
Common mistakes
- Running closing without test mode.
- Ignoring error materials.
- Late postings after closing.
- Missing activity prices.
- No closing checklist.
Best practices
- Use test runs.
- Resolve errors per step.
- Block late postings.
- Maintain activity prices.
- Use a closing checklist.
Interview angle
Questions: "What is actual costing?", "What does CKMLCP do?", "What is the periodic unit price?"
Strong answer: ML in S/4, differences collection, CKMLCP steps, PUP, revaluation, error handling.
Practice this lesson
Quick check
1. What does the periodic unit price in actual costing represent?
2. A team proposes running the actual costing closing without test runs to save time. What is the risk?
3. Multilevel settlement fails for several materials in CKMLCP. What is a typical cause?
Interview questions
1. During period-end close, actual costing settlement in CKMLCP fails for several materials with an error indicating that quantity structure or price differences cannot be settled. As the architect responsible, how would you diagnose and resolve this systematically?
Answer it in your own words first, then compare.
2. After running actual costing close (CKMLCP) for the period, the price difference account (PRD) still shows a residual balance instead of being fully cleared into inventory and COGS. What are the likely causes and how would you troubleshoot it?
Answer it in your own words first, then compare.
Reference-verified: the steps are checked against official SAP documentation and tutorials, and object and field names in the sample code are checked for consistency. The code has not been compiled or run on an SAP system by ERPClimb. Syntax marked release-dependent varies by SAP release, so check it in your own system.