Scenario 17 — Split Valuation (Same Material, Different Prices by Origin)
Everything structural is confirmed present: OMWC opens, valuation category H exists, and plants PK01/PK02/PK03 all exist. Nothing is blocked — but three objects the steps assume do not exist yet and you will create them as part of the exercise.
| Thing | Live status | What it means for you |
|---|---|---|
| OMWC transaction | ✅ opens — 3 buttons: Global Types · Global Categories · Local Definitions | ready |
| Split valuation switched on in the system | ✅ already on — 85 live entries in T149B and 200+ split rows in MBEW for SAP's demo plants | ⭐ there is NO "activate" step for you to do — see the note below |
Valuation category H (Origin) | ✅ exists (categories present: B, C, G, H, P, R, S, X) | ready — nothing to create |
Plants PK01 / PK02 / PK03 | ✅ all exist (Karachi Factory · Lahore Factory · Karachi DC) | ready |
| A finished example to copy from | ✅ material 2300000000 in plant 3000 — category G, types EXTERNAL/INTERNAL | ⭐ open it in MM03 whenever you are unsure what "done" looks like |
Valuation types LOCAL / IMPORT | ❌ do NOT exist | ⚠️ you create them in 17.1 (Global Types) |
Category H assigned to PK01 | ❌ not assigned — SAP says "No Valuation Types exist(s) for Plant PK01" (msg OM 024) | ⚠️ you assign it in 17.1 (Local Definitions) — the step people forget |
Material SCRAP-STEEL-01 | ❌ does not exist | ⚠️ you create it in 17.2 |
💡 The 18 valuation types that DO exist (useful for the F4 help): 01 · 02 · C1 · C2 · C3 · DAMAGED · EIGEN · EXTERNAL · FREMD · INTERNAL · LAND 1 · LAND 2 · NEW · PRO_EXTERN · PRO_INTERN · RAKTION · REFURB · RNORMAL. LAND 1/LAND 2 are SAP's standard origin types for category H — you could reuse them instead of creating LOCAL/IMPORT, but the named ones read far better while learning.
Verified on the live Create Valuation Type screen (OMWC → Global Types → Create). It asks for:
| Field | What to enter | Why |
|---|---|---|
| Valuation Type | LOCAL (then repeat for IMPORT) | the bucket name |
| Ext. Purchase Orders | copy what LAND 1 uses — 2 | may this bucket be filled by an external PO? Scrap is bought in, so yes |
| Int. purchase orders | copy LAND 1 — 0 | internal (own production) — not relevant for bought scrap |
| Acct cat. reference | 0001 (Reference for raw materials) | ⚠️ mandatory — drives G/L account determination. LAND 1/LAND 2/FREMD all use 0001 for raw materials |
💡 Safest approach: open OMWC → Global Types, look at the LAND 1 row, and copy its three attribute values. That guarantees your new type behaves like a proven one.
VA split material does not have one accounting record. It has one per valuation type PLUS a header record (the header = the row with the valuation type left blank). SAP forces different price controls on them:
| Record | Price control | What you see on Accounting 1 | Why |
|---|---|---|---|
| Header (valuation type blank) | V — moving average (SAP fixes this; you cannot make it S) | a Current Valuation box with Price control, Moving price and Standard price side by side | the header is the weighted average of all the type rows — an average can only "move", so it must be V |
| Each valuation type (LOCAL, IMPORT) | S or V — your choice | the same box, but with its own price for that origin | this is the price that becomes real COGS when that origin's stock is issued |
✅ Proof from our own system: material 2300000000 / plant 3000 — header row = price control V, types EXTERNAL and INTERNAL = price control S, all three sharing valuation class 1030. Our recommendation for this exercise: use V everywhere (header + both types). Moving average matches how PakSteel's other raw materials are set up, and it lets the GR price flow straight in without a standard-price revaluation.
📊 Business Case
Split Valuation lets one material code carry more than one inventory value at the same time — split along a dimension you choose, such as origin (imported vs local), procurement type (in-house vs external), or condition (new vs used). PakSteel buys identical steel scrap both locally and as imports at very different costs, but it is the same physical material. Split valuation keeps each origin valued separately so costing, COGS and margins stay accurate.
🕐 When to use it
The same material is sourced at materially different costs (local vs imported), or exists in states worth different amounts (new vs refurbished) — and you need each valued and reported separately.
❓ Why it matters
Accurate costing and margins. A single blended price hides that imported scrap costs 50% more than local. Separate valuations give true COGS per origin, so pricing and profitability decisions rest on real numbers.
👤 Who triggers it
The buyer picks the valuation type on every PO; the storekeeper carries it through GR/GI; costing and finance read the per-type values in MBEW for valuation and analysis.
🔁 The key distinction
Batch management (Scenario 16) tracks which physical lot; split valuation tracks how much each sub-stock is worth. One material, one stock figure, but several valuation rows in MBEW — one per valuation type plus a header average.
💰 Financial Impact — The Easy-Money Example
PakSteel receives 100 TO of local scrap @ ₨80,000 and 100 TO of imported scrap @ ₨120,000 — same material code SCRAP-STEEL-01. Split valuation holds two valuation sub-totals instead of one misleading blend:
The big idea: a single moving average of ₨100,000/TO would over-cost local issues and under-cost imported ones — distorting every margin. With split valuation, each origin is costed at its true ₨80,000 / ₨120,000, so COGS and profitability are correct per source.
🇵🇰 The Business Story
🎯 What you'll learn
- Valuation Category (e.g.,
Hfor Origin) — what dimension you split on - Valuation Types (e.g., LOCAL, IMPORT, USED, NEW) — the specific buckets within category
- Material master extended with all valuation types
- Every PO + GR + GI must specify valuation type
- MBEW table has multiple rows — one per valuation type
- Your org structure (company code, plant, purch org = your buying team) is already built — Setup Guide.
- The material
SCRAP-STEEL-01exists but has no stock yet — split valuation can only be switched on while the material holds zero stock — Material Master. - A vendor exists as a Business Partner (BP = the vendor's record) for the local + imported buys — BP Guide.
- Goods receipt that names a valuation type can post — Stock-Readiness Checklist.
SCRAP-STEEL-01 (ROH — same steps as RM-IRON-01, different code) — create steps · how to create a ROH.
Goods Receipt · Reference Purchase Order → mvt 101 → pick the valuation type on the line (which valuation bucket the stock lands in). Full guide: MIGO Selection Bar.
🔧 Step-by-Step
| Step | T-code | What it does | Why this step exists |
|---|---|---|---|
| 17.1 | OMWC | Create types LOCAL + IMPORT, hang them under category H, then switch it on for plant PK01 | the system needs the rule book before anything can split |
| 17.2 | MM01 | Material opts in: header record + one accounting record per type, each with own price | each origin needs its own value row (envelope) |
| 17.3 | ME21N + MIGO | PO names the valuation type; GR fills only that bucket | money must land in the right envelope, at its true cost |
⚙️ Config
17.1 — Activate Split Valuation Category · OMWC
⚡ This step will: write the rule book — after saving, the system allows splitting and knows the question (Origin, category H) and the two allowed answers (LOCAL, IMPORT) for your plants; no material has split yet. 📄 paper: — (config entry only) · 📦 stock: no change · 💰 money: no posting
The idea in one line: one material code, but two money envelopes. Like buying the same sugar from two shops at two prices, and keeping one envelope of receipts per shop. OMWC switches this machinery on and names the envelopes. Work top to bottom:
| Step · Field | Fill | What it asks — in plain words | Why we choose this — and the impact if wrong |
|---|---|---|---|
| 1 · | nothing to do | Older guides start with a global on/off switch. On this system it is already on. | Split valuation is already live in this client: T149B holds 85 rows and MBEW over 200 rows that carry a valuation type, and no valuation area carries an activation flag. Impact: hunting for this switch in OMWC only wastes time — the three buttons there are Types, Categories and Local Definitions, nothing else. (If you ever need it on a fresh system, the S/4 transactions are OMW_SPLIT_VAL — per valuation area — and OMW_SPLIT_VAL_GLOB.) |
| 2 · Valuation Types · Global Types | create LOCAL, then IMPORT (4 fields each — see the box above) | What are the allowed answers? These are the buckets (envelopes) stock can land in. Client-wide — not tied to a plant yet. | Local vs imported scrap are our two real cost worlds; each becomes its own value row in MBEW. Impact: keep the list short — every extra type is one more record to maintain on every split material |
| 3 · Valuation Category · Global Categories | H (Origin) — already exists, just add your two types to it | On WHAT question do you split? The category is the QUESTION; the types are the ANSWERS. H asks "where is it from?" | For PakSteel the cost really changes by origin, so H. Impact: if LOCAL/IMPORT are not listed under H, the next step will not offer them for the plant |
| 4 · ⭐ Assign to the plant · Local Definitions verified path below | plant PK01 (add PK02/PK03 only if you want them) | WHICH plants may use this split? A valuation area = the place whose stock value is kept (here, the plant). | Turn it on for the plants that buy both origins. Impact: a plant you skip here can never split by origin — its stock stays single-valued. ⚠️ This is the most-forgotten step — on our IDES PK01 currently has nothing assigned ("No Valuation Types exist(s) for Plant PK01") |
| 5 · Save | — | Commit the rule book. | Config is done, but nothing has split yet. Impact: materials still must opt in (17.2) — saving here alone changes no material's value |
OMWC opens on a small menu with three buttons. Newcomers get lost here because the buttons are not in the order you use them. Use them in this order:
| Order | Button | What you do there |
|---|---|---|
| 1st | Global Types (F5) | See all 18 existing types. Press Create and add LOCAL, then IMPORT (4 fields — see the box above). These are client-wide, not plant-specific. |
| 2nd | Global Categories (F6) | Check category H is there and see which types it permits. On our system H already exists — usually nothing to do. |
| ⭐ 3rd | Local Definitions (F8) | A plant list appears. Put the cursor on PK01, then press Local Types to add LOCAL/IMPORT for that plant, and Cats. → OU to activate category H for it. Without this the material will refuse the valuation category. |
✅ How you'll know step 3 worked: re-enter Local Definitions → PK01 → Local Types and your types are listed. Before you do it, SAP shows "No Valuation Types exist(s) for Plant PK01" — that message is your before/after proof.
17.2 — Extend Material with Valuation Types · MM01
⚡ This step will: make the material itself opt in — after saving, SCRAP-STEEL-01 carries two accounting records (LOCAL @ ₨80,000, IMPORT @ ₨120,000) plus a header average, i.e. separate MBEW value rows that did not exist before. 📄 paper: — (material master records only) · 📦 stock: no change · 💰 money: no posting
Config (17.1) only allowed splitting; here the material itself opts in. You will run MM01 three times for the same material code — once for the header, once for LOCAL, once for IMPORT. That feels strange the first time, but it is exactly how SAP builds the three accounting records.
| Stop | What appears | What you do |
|---|---|---|
| 1. Initial screen | Material · Industry sector · Material type · (Copy from…) | Material SCRAP-STEEL-01, Industry M, Material type ROH |
| 2. Select View(s) popup | a scrolling list of 49 views. Accounting 1 sits far down, just after "Quality management" | tick Basic Data 1, Purchasing, Accounting 1 — then press the Org. Levels button (top of the popup, F6) |
| ⭐ 3. Organizational Levels popup | exactly 7 fields in this order: Plant · Storage Location · Valuation Type · Sales Organization · Distribution Channel · Warehouse Number · Storage Type | Plant PK01 · Valuation Type = leave blank the 1st time, then LOCAL, then IMPORT |
💡 The Valuation Type box is wider than the ones above and below it — that is how you spot it at a glance. If your Organizational Levels popup has no Valuation Type row at all, your SAP GUI is fine — the row is always there; it is only used when the material's valuation category is set.
Run 1 — the header record (Organizational Levels: Plant PK01, Valuation Type blank)
| Where on screen · Field | Fill | What the field asks — in plain words | Why we choose this — and the impact if wrong |
|---|---|---|---|
| Initial screen · Material / Industry / Material Type | SCRAP-STEEL-01 · M · ROH | WHICH material, and what CLASS is it? ROH = raw material (bought, not sold). | Same creation steps as RM-IRON-01 (see the material box above). Impact: the material type controls which views exist, so the wrong type can hide the Accounting view you need |
| Accounting 1 → box "General Data" · Valuation Category right-hand column, 1st row — next to Base Unit of Measure | H | Does THIS material split its value — and on which question? Blank = one price row, like a normal material. | H = "value me separately per origin" — the material's signature on the 17.1 rule book. Impact: leave it blank and the material stays single-valued no matter what config exists. ⚠️ You can only set it while the material has zero stock |
| Accounting 1 → box "Current Valuation" · Valuation Class | 3000 (the class PakSteel uses for raw materials) | Which G/L accounts does this material post to? | Must match the Acct cat. reference 0001 you gave the valuation types in 17.1. Impact: a mismatch shows up later as an account-determination error on the goods receipt, not here |
| Accounting 1 → Price control | V (moving average) | Does this record carry a fixed price or an average that moves with each receipt? | ⚠️ For a split material the header is always V — see the rule box above. Impact: trying to force S here is the classic beginner error |
| Accounting 1 → Moving price | leave 0 | What is one unit worth right now? | The header is only a weighted average of the type rows; it will fill itself once stock arrives. Impact: none — it cannot receive postings directly |
Runs 2 and 3 — one per envelope (same MM01, same material; only the Organizational Levels popup changes)
| Where on screen · Field | Run 2 — LOCAL | Run 3 — IMPORT | Why |
|---|---|---|---|
| Organizational Levels · Plant | PK01 | PK01 | Same plant both times — you are splitting inside one plant, not across plants |
| Organizational Levels · Valuation Type | LOCAL | IMPORT | This is the envelope you are opening. Impact: type it wrong and SAP creates a record for a bucket nothing will ever post to |
| Accounting 1 · header area shows an extra line "Val. type" | reads LOCAL | reads IMPORT | ⭐ Your safety check. If that line is missing, you are editing the header record by mistake — go back to Org. Levels |
| Accounting 1 · Valuation Class | 3000 | 3000 | Normally the same on all three records. Impact: different classes per type is legal and is how some companies post imports to a separate G/L — but keep it simple while learning |
| Accounting 1 · Price control | V | V | Moving average, so the real purchase price flows in from the GR. Impact: with S the GR posts a price difference instead of changing the value |
| Accounting 1 · Moving price | 80,000 PKR / TO | 120,000 PKR / TO | The true cost of that origin. Impact: this is the number that becomes COGS when that origin's stock is issued — the whole point of the scenario |
✅ How you'll know it worked: MM03 the material with Valuation Type blank → you see a Valuation Category H and price control V. Press Org. Levels (top of the screen), type LOCAL, Enter → the header now shows a Val. type line and a different price. That switch between the two is split valuation working.
🔄 Test
17.3 — PO + GR with valuation type
⚡ This step will: prove the split works — a binding PO names the LOCAL envelope, then the goods receipt fills ONLY that envelope's shelf and posts the first money at its own price; repeat for IMPORT and both MBEW rows hold their true costs. 📄 paper: purchase order, then material + accounting document · 📦 stock: ↑ at the plant, into the named valuation type only · 💰 money: on GR, Dr Inventory / Cr GR/IR at the type's price
| Screen | Where the field is | How to find it fast |
|---|---|---|
| ME21N / ME22N | Item detail → Delivery tab → left column → Valuation Type, the row directly under "Stock Type" | Expand Item Detail at the bottom, then click the 4th tab (Material Data · Quantities/Weights · Delivery Schedule · Delivery) |
| MIGO | Two places: ① the item table has its own Valuation Type column, right after Batch · ② item detail → Material tab → right-hand side, next to Material Group | Use the column in the table — it is faster than opening the tab |
⚠️ Do not look on ME21N's "Material Data" tab. That tab holds Material group, Supplier Mat. No., EAN/UPC, Batch and Supplier Batch — but no Valuation Type. Batch and valuation type look like cousins, so people search there first and give up.
| Step · Field | Fill | What it asks — in plain words | Why we choose this — and the impact if wrong |
|---|---|---|---|
| 1 · ME21N · Item detail → Delivery tab · Valuation Type | Material SCRAP-STEEL-01 · Plant PK01 · Valuation Type LOCAL · Net price 80,000 | Which envelope will this stock land in? The buyer must answer on EVERY PO — SAP can't guess the origin. | Like telling the shopkeeper which notebook page to write on. Impact: pick the wrong type and the value posts to the wrong bucket — local costs get mixed into imported and COGS goes wrong |
| 2 · GR (MIGO) · mvt 101 — Valuation Type carried in from the PO | check the Valuation Type column says LOCAL, then Post | Where does the received value go? | The receipt posts quantity and value into the LOCAL row of MBEW, not a blend. Impact: if that column is empty, the PO item never had a type — fix the PO, don't type it here |
| 3 · Check | Stock: LOCAL 100 TO @ 80K · IMPORT 0 TO | Did only the named envelope fill? | Proof the split works — the other bucket stayed empty. Impact: if both moved, the valuation type wasn't carried through and posting logic needs rechecking |
4 · Repeat with IMPORT | same flow, Valuation Type IMPORT @ 120,000 | Now fill the second envelope at its own price. | Two MBEW rows, two true costs, one material code. Impact: this is the end state that keeps margins accurate per origin |
| Message / symptom | What it really means | Fix |
|---|---|---|
| ✅ "No Valuation Types exist(s) for Plant PK01" — OM 024 | You reached OMWC → Local Definitions → PK01 → Local Types before assigning anything. This is the starting state on our system, not an error. | Expected. Assign your types here — that IS step 17.1/4 |
| ✅ Acct cat. reference refuses to stay empty when creating a valuation type | It is a mandatory field, not optional. | Enter 0001 (Reference for raw materials) — the same value LAND 1 uses |
Price control on the header will not accept S | SAP forces V on the header record of a split material. | Leave it V. Set the real prices on the LOCAL / IMPORT records |
| Valuation Category field on Accounting 1 is greyed out or rejected | The material already has stock or open documents. Split valuation can only be switched on at zero stock. | Use a brand-new material code (this is why the scenario creates SCRAP-STEEL-01 fresh rather than reusing RM-IRON-01) |
| PO or GR says the valuation type is not allowed | The type exists client-wide but was never switched on for this plant. | Back to OMWC → Local Definitions → PK01 (the most-forgotten step) |
| Account determination error on the goods receipt | Valuation class on the material does not line up with the account category reference on the valuation type. | Valuation class 3000 ↔ acct cat. reference 0001; check OMSK if unsure |
✅ = confirmed live on our system while pre-checking this scenario. The rest are the standard SAP behaviours this configuration will run into.
✅ Verification
- MM03 → Accounting 1 → press Org. Levels → switch valuation type → the header gains a Val. type line and the price changes per type
- MMBE → SCRAP-STEEL-01 → stock split shown per valuation type
- SE16 →
MBEW→ one row per valuation type (LOCAL, IMPORT) + header row (⚠️ use SE16 —SE16Nis blocked by security policy on this system) - SE16 →
T149B→ confirms categoryHis assigned to your plant (this table was empty for PK* before you start)
🎓 Interview-Ready Answers
Q: What is the difference between a valuation category and a valuation type?
The valuation category is the dimension you split on — e.g. H for origin. The valuation types are the individual buckets within that category — e.g. LOCAL and IMPORT. You set the category on the material's Accounting view, then extend the material with one accounting record per valuation type.
Q: How does split valuation show up in the database?
In table MBEW (material valuation). A split-valuated material has one row per valuation type (each with its own quantity and value/price) plus a header row that holds the weighted-average price across all types. A non-split material has a single MBEW row.
Q: Why must every PO, GR and GI specify a valuation type?
Because the stock and value are tracked separately per type. SAP must know which bucket (LOCAL vs IMPORT) to debit on receipt and which to credit at issue — otherwise it can't post to the right MBEW row or apply the correct cost. The header average is reporting only and can't receive postings.
Q: Split valuation vs batch management — when do you use which?
Batch management answers "which physical lot is this?" for traceability/expiry. Split valuation answers "what is this sub-stock worth?" for costing. They are independent and can be combined — e.g. batch-tracked steel that is also valued separately by local vs imported origin.