🧱 Create Any Material in SAP β€” the first-timer's guide

Never created a material before? Start here. One transaction β€” MM01 β€” builds every material, from raw iron to finished rebar to a packaging bag. This page teaches the flow that's the same every time, explains why you fill each field in plain words, then shows the few things that change per material type.

🧠 First, the mental model (read this once)

A material master is not one form. Think of it as a profile card with many tabs β€” and each tab ("view") belongs to a different department:
View (tab)Owned byAnswers the question…
Basic DataEveryoneWhat is it, what unit, what group? (global β€” same in every plant)
PurchasingMM buyerHow do we buy it?
MRP 1–4PlanningHow do we replenish it β€” buy or make, how much, when?
Work SchedulingProductionHow is it made? (only for made goods)
SalesSDHow do we sell it? (only for sold goods)
AccountingFIWhat's it worth, which G/L does it hit?
CostingCOWhat does it cost to make?
You only fill the tabs your job needs. A material you just buy needs Basic + Purchasing + Accounting. A material you make adds MRP + Work Scheduling + Costing. A material you sell adds Sales.
Two questions decide everything when you create a material:
  1. What kind of thing is it? β†’ that's the Material Type (ROH, HALB, FERT, HAWA…). It pre-sets which tabs are allowed, the default valuation class, and whether you track value.
  2. Do you buy it or make it? β†’ that's the Procurement Type (F = buy, E = make). It decides which tabs you actually fill.

πŸ” The universal MM01 flow (same every time)

  1. Run MM01. Enter the Material number (e.g. RM-IRON-01), Industry sector (M = Mechanical Eng.), and Material type (e.g. ROH). Press Enter.
  2. Select Views. A list pops up β€” tick only the tabs you need (see the per-type table below). Don't tick views you won't fill.
  3. Organizational Levels. Tell SAP where: Plant PK01, Storage Location (e.g. RAWM), and Sales Org / Distribution Channel only if you picked Sales views.
  4. Fill each view left β†’ right (Basic Data first, Accounting last). Mandatory fields show a ⬛ tick/highlight; you can't save until they're filled.
  5. Save (Ctrl+S). SAP confirms "Material … created" and writes the database rows.
First-timer tips: β‘  If a tab looks greyed-out and you can't type, you're in display mode (MM03) or didn't select that view β€” use MM01 to create / MM02 to change. β‘‘ Stuck on a code field? Press F4 β€” SAP shows only the valid values. β‘’ "Material already exists" β†’ it's made; switch to MM02 to edit instead.

πŸ” MM01 vs MM02 β€” create, extend, or change?

The idea that confuses everyone
A material isn't one flat record β€” it's built from segments at different organizational levels: Client (global) β†’ Plant β†’ each Storage Location β†’ each Sales Org. Each segment is created once. MM01 means "create a segment" β€” so the same transaction both makes a brand-new material and extends an existing one (adds a view, plant, storage location or sales org it doesn't have yet). It is not re-creating the whole material.
You want to…UseHow
Create a brand-new materialMM01New material number + industry + type, pick views
Add a view / plant / storage location / sales org it doesn't have yetMM01 (extend)Same material number β†’ pick the view β†’ enter the NEW org level
Change a value in something that already existsMM02Edit the existing view / org level
Just look (read-only)MM03Display
Why you saw "already exists / already maintained"
You pointed MM01 at a segment that's already there β€” so there's nothing to create. Example: RM-IRON-01 already has Plant PK01 + Storage Location RAWM (from Scenario 1), so choosing the storage view with RAWM says "already exists." To add store WIPS, enter the new storage location WIPS in the Organizational Levels popup β€” not the old one. (Or use MMSC, the dedicated "add storage locations" tool β€” no view-picking.)

Rule of thumb: "already exists" = that part is done β†’ either type a new org level (to extend), or switch to MM02 (to change what's there).

πŸ“ What each field is β€” and why you fill it

These are the fields you'll meet most often, grouped by view, in plain English. (Optional fields you can leave blank are not listed β€” focus on what matters.)

Initial screen β€” the 3 choices that shape everything
FieldExampleWhy you set it
Material numberRM-IRON-01The unique ID. Type your own meaningful code (external numbering) so it's readable β€” not a random 4000001.
Industry sectorMControls which fields/screens appear. Pick one (M for us) and stay consistent β€” it can't be changed later.
Material typeROHThe biggest decision: it pre-decides allowed views, default valuation class, internal/external procurement, and whether value is tracked. "Tells SAP what KIND of thing this is."
Basic Data 1 β€” global identity (every material has this)
FieldExampleWhy you fill it
DescriptionIron Ore LumpThe human-readable name shown on POs, reports, stock lists.
Base Unit of MeasureTOThe unit stock & value are kept in. Everything converts to it. Very hard to change once stock exists β€” choose carefully.
Material Group(F4 β†’ 001)A grouping key for reporting & purchasing analysis. Mandatory; pick an existing one via F4.
Division(if sold)An SD product-line unit β€” only needed if you'll sell it.
Gross/Net weight, VolumeoptionalUsed by shipping/warehouse logistics. Skip for learning.
Purchasing β€” only for materials you buy
FieldExampleWhy you fill it
Purchasing GroupRMTThe buyer / buying desk responsible β€” drives reporting & who gets the workflow.
Order UnitTOOnly if you buy in a different unit than you stock (e.g. buy in bags, stock in kg).
Purchasing value keyoptionalBundles reminder/dunning days & tolerances for this material.
MRP 1–4 β€” planning (how it gets replenished)
FieldExampleWhy you fill it
MRP TypePDHow SAP plans it. PD = full MRP, VB = reorder point, ND = no planning.
MRP ControllerPK1The planner responsible (a config code β€” create once if your plant has none).
Lot SizeEXHow SAP groups demand into orders. EX = exact (make/buy just what's needed).
Procurement TypeF or EThe buy-vs-make switch. F = buy externally, E = make in-house, X = both.
Schedule Margin Key000Buffer (float) days around production/delivery (config code).
Availability Check02How SAP checks/promises whether stock is available (ATP).
Work Scheduling β€” only for materials you make (HALB/FERT)
FieldExampleWhy you fill it
Production SchedulerPK1Who runs the shop floor for it (config code).
Production Storage LocationWIPS / FNGDWhere the production order puts the finished output by default.
In-house Production Time2 daysHow long a lot takes β€” drives scheduling dates.
Accounting 1 β€” the bridge to Finance (valuated materials)
FieldExampleWhy you fill it
Valuation Class3000The single most important FI field. Via OBYC it decides which G/L account every stock posting hits. Wrong class β†’ wrong G/L. Press F4 β€” SAP lists only the classes allowed for your material type.
Price ControlV or SHow SAP values the stock. V = moving average (use for bought goods β€” price varies per delivery). S = standard (use for made goods β€” a fixed plan price; differences post as variances).
Moving price / Standard price250000The money value of one base unit (₨/TO). With S you must enter a value; with V SAP updates it from each goods receipt.
Price Unit1The price is "per N units" (per 1 TO here).
Costing 1/2 & Sales β€” for made / sold goods
Field (view)ExampleWhy you fill it
With Qty Structure (Costing 1)βœ”Lets SAP cost the material automatically from its BOM + routing.
Profit Center (Costing 1)PSPK-PCAssigns the material's results to a profit center. S/4HANA expects one.
Sales Org / Distr. Channel (Sales 1)PKLO / 10Which sales channel can sell it β€” only for sold goods (FERT/HAWA).
Tax classification, Item category group (Sales)defaultsHow it's taxed and how it behaves on a sales order.

πŸ“¦ What changes per material type

The flow above is identical for all of them. Only these few things differ. (For valuation class, the safe move is always F4 β€” SAP only offers the classes allowed for that type.)

TypeWhat it isBuy/MakeKey views to pickVal. classPrice ctrlProc.
ROHRaw material (bought, consumed)BuyBasic, Purchasing, MRP, Accounting3000VF
HALBSemi-finished (made in-house)MakeBasic, MRP, Work Sched, Accounting, Costing7900SE
FERTFinished good (made, sold)Make+SellBasic, Sales, MRP, Work Sched, Accounting, Costing7920SE
HAWATrading good (bought to resell)Buy+SellBasic, Purchasing, Sales, Accounting3100VF
ERSASpare part (stocked)BuyBasic, Purchasing, MRP, AccountingF4VF
VERPPackagingBuyBasic, Purchasing, AccountingF4VF
UNBWNon-valuated (qty only, no value)BuyBasic, Purchasing, Storageβ€” noneβ€”F
NLAGNon-stock (never inventoried)BuyBasic, Purchasingβ€” noneβ€”F

UNBW tracks quantity but no money (no Accounting valuation). NLAG isn't stocked at all β€” its PO is account-assigned (charged straight to a cost center), so it has no MRP/Accounting stock views.

⚠️ Two "materials" that are NOT made in MM01

🚨 First-timer errors & fixes

Message / symptomCauseFix
"Valuation class … not allowed"Class not linked to this material typeF4 to pick an allowed class; or OMSK (rare in IDES)
"Enter MRP controller / scheduler / margin key"That config key doesn't exist for PK01Create it once (OMD0 / OPPF / OPJ9), then return
"Standard price must be > 0"Price control S needs a valueType a standard price on Accounting 1
Fields are greyed / can't typeYou're in display (MM03) or didn't select the viewUse MM01/MM02; tick the view
"Material already exists"It's already createdSwitch to MM02 to change it

βœ… Check it worked

β–Ά Worked examples
See this guide applied end-to-end: Create the Production Materials (HALB billet + FERT rebar) Β· Create the Remaining Scenario Materials (trading, spares, packaging, non-stock, service, asset, Z) Β· Scenario 1 step 1.1 (raw material RM-IRON-01). Full type reference: Material Master.
← Reference
Material Master β€” all types
Worked example β†’
Create Billet & Rebar (field by field)