- Home
- Modules
- SAP MM
SAP MM: from purchase requisition to paid invoice
How Materials Management buys, receives, stores and values everything a company uses, and why every move lands in Finance.
10004711Ball bearing 6204 · 100 PCNeeded by18.11.20264500018273- Item 10 · Bearing 6204100 × 12.00
- Goods receipt ·
101100 PC - Supplier invoice · MIRO1,200.00
- GR/IR clearingCleared
Overview
What MM is, if you have never seen it
SAP Materials Management, MM for short, is the part of SAP that buys, receives, stores, counts and values the materials a company uses: raw materials, spare parts, packaging, office supplies and services. This page explains MM to people who do not work with it every day, follows one purchase from the first request to the paid invoice and lists the transactions that users and consultants actually open.
Every company buys things. What makes MM interesting is that nothing in it stands alone. A purchase order turns into a goods receipt, the goods receipt into stock and an accounting entry, the supplier invoice is checked against both, and the payment run pays it. Each step leaves a document, so years later anyone can follow the trail. That is why finance people meet MM sooner or later, even if they never create a purchase order.
- SAP S/4HANA
- SAP ECC 6.0
ME21NMIGOMIROMMBEUse the User | Consultant switch at the top of the page to show or hide the technical layer: tables, Customizing transactions and what happens under the hood.
Purchasing
Requisitions, quotations, contracts and purchase orders, with agreed prices kept in info records and approvals in release strategies. In SAP S/4HANA this area is called Sourcing and Procurement.
ME51NME21N
Inventory management
Every receipt, issue and transfer is a goods movement with a three-digit movement type. Quantities are kept by plant and storage location, and every movement with a value also posts to the general ledger.
MIGOMMBE
Invoice verification
The supplier invoice is checked against the purchase order and the goods receipt: the three-way match. Differences above tolerance block the invoice for payment until someone decides.
MIROMRBR
Valuation and planning
Each material carries a standard or moving average price that values its stock. Planning compares stock with requirements and tells purchasing what to reorder, and when.
MM03MD04
Who works in MM every day
- Requesterasks for what is needed, with a requisition
- Buyerpicks the supplier and places the order
- Warehouseposts receipts, issues, transfers and counts
- Plannerruns MRP and watches reorder points
- AP clerkenters supplier invoices and releases blocks
- Accountantwatches prices, variances and the GR/IR account
Older than most of its users
1975SAP’s RM system integrated purchasing, inventory management and invoice verification in 1975, and SAP calls it its second product pillar. Those three functions are still the backbone of MM, half a century later.
Source: SAP company history, 1972–1980The skeleton
Where things happen, and what is being moved
Two things decide almost everything in MM: the organizational structure, which says where something happens, and the material master, which says what is being moved. Pick a level to see what it means; the Consultant view adds the Customizing transactions and tables.
Client
The whole group, in one system
A client is a self-contained unit of the SAP system, usually one per company group and per system (development, test, production). Everything defined at client level is shared by every company in it: the basic data of the material master, business partners and movement types.
In practice: Material 100-200 exists once in client 100, whichever company buys it.
Under the hood
Client-level material data sits in MARA and MAKT. Clients themselves are administered by Basis (SCC4), not by MM.
MARAMAKTSCC4
Customizing transactions and tables for this level are in the Consultant view.
Basics of the SAP organizational structure; client-level tables per the SAP Help Portal.
Company code
The legal entity with its own books
A company code is a company with its own balance sheet and profit and loss statement. Every goods movement with a value ends up in the books of one company code, which is why MM and FI meet here: the materials period and the accounting period are both kept per company code.
In practice: Northwind Brasil Ltda (1000) has its own CNPJ, books and materials period.
Under the hood
Company codes are defined in FI (OX02). MMPV opens the next materials period per company code, and MMRV decides whether the previous one stays open.
OX02MMPVMMRVT001
Customizing transactions and tables for this level are in the Consultant view.
Sources: SAP Learning, plants; message M7053.
Plant · valuation area
Where materials are planned, stored and valued
A plant subdivides the company for production, procurement, maintenance and materials planning. It can be a factory, a warehouse or a distribution center. Most of the material master (purchasing, MRP, storage) is kept per plant, and when the valuation area is the plant, each plant values its own stock.
In practice: The São Paulo factory (1100) plans and values its own bearings, separately from the Recife plant.
Under the hood
Plants are defined in OX10 and assigned to a company code in OX18. The valuation level (plant or company code) is set once in OX14. EC02 copies a plant with its dependent tables. Plant data sits in T001W and MARC.
OX10OX18OX14EC02T001W
Customizing transactions and tables for this level are in the Consultant view.
Sources: SAP Learning, defining and assigning plants; IMG activity OX14.
Storage location
Where stock physically sits inside a plant
A storage location is a place within a plant where stock is kept: a raw materials store, a finished goods warehouse, a quarantine area. Quantities are tracked per storage location; values are not, because value is kept at the valuation area. Its key must be unique within the plant but can repeat across plants.
In practice: Moving bearings from store 0001 to line-side store 0002 changes quantities only (movement type 311).
Under the hood
Storage locations are defined in OX09 (table T001L). In SAP S/4HANA the stock fields of MARD are calculated from MATDOC through the view NSDM_V_MARD.
OX09T001LMARDNSDM_V_MARD
Customizing transactions and tables for this level are in the Consultant view.
Sources: SAP Learning, defining and assigning plants; SAP Community, NSDM.
Purchasing organization
The unit that negotiates with suppliers
A purchasing organization procures for one or more plants and agrees the conditions with suppliers. Several purchasing organizations can serve one plant: a local one, a cross-plant one, a cross-company-code one, or separate ones for materials and services.
In practice: Central purchasing (1000) negotiates bearing prices for every Brazilian plant.
Under the hood
Defined in OX08, assigned to a company code in OX01 and to plants in OX17. Info records are kept per purchasing organization (EINE). Table T024E.
OX08OX01OX17T024E
Customizing transactions and tables for this level are in the Consultant view.
Source: SAP Learning, defining and assigning plants.
Purchasing group
The buyer, or the desk
A purchasing group is the buyer or group of buyers responsible for certain materials or purchases. It is printed on purchase orders as the contact and is used to filter work lists and release strategies. It is not assigned to any other organizational unit.
In practice: Group 001 handles packaging; group 002 handles spare parts.
Under the hood
Maintained in OME4 (table T024). Often used as a characteristic in release strategies and in authorizations.
OME4T024
Customizing transactions and tables for this level are in the Consultant view.
Source: SAP Learning, purchasing.
One material, many departments
A material master is one record with many views. Each department fills its own, at its own organizational level, which is why creating a new material often takes four or five people. Filter by who fills it.
| View | Filled by | Level | Key fields | Table |
|---|---|---|---|---|
| Basic data 1 and 2 | Master data team | Client | Material type, base unit of measure, material group, weights, old material number | MARA |
| Classification | Master data team | Client | Classes and characteristics, for example for batches | AUSP |
| Purchasing | Buyers | Plant | Purchasing group, order unit, goods receipt processing time, automatic PO | MARC |
| Foreign trade | Trade and tax | Plant | Commodity code (NCM in Brazil), country of origin, CFOP category in Brazil | MARC |
| Sales: sales org 1 and 2 | Sales | Sales org and channel | Delivering plant, tax classification, item category group | MVKE |
| Sales: general/plant | Sales and logistics | Plant | Availability check, loading group, transportation group | MARC |
| MRP 1 to 4 | Planners | Plant or MRP area | MRP type, reorder point, lot size, safety stock, planned delivery time | MARC |
| Work scheduling | Production | Plant | Production scheduler, in-house production time, delivery tolerances | MARC |
| Plant data / storage | Warehouse | Plant and storage location | Storage conditions, shelf life, storage bin | MARD |
| Quality management | Quality | Plant | Inspection setup, QM control key | MARC |
| Accounting 1 and 2 | Finance | Valuation area | Valuation class, price control (S or V), standard or moving average price; material usage and origin in Brazil | MBEW |
| Costing 1 and 2 | Controlling | Plant and valuation area | With quantity structure, origin group, overhead group, costing lot size | MBEW |
In SAP S/4HANA the storage location MRP fields are gone from the MRP 4 view (MRP areas replace them), the commodity code is maintained with the Fiori app Classify Product, and accounting view prices are kept in every material ledger currency. Sources: SAP Learning, material master simplifications; SAP Community, Brazil material master fields.
The MM process
Follow one purchase through MM
Eight steps, from the moment someone needs something to the moment the supplier is paid. Consultants call it procure-to-pay. Pick a step to see what happens, where you see it and, in the Consultant view, what sits under the hood.
Step 1 of 8 · What happens
A need appears
Most purchases start as a purchase requisition: an internal request that says what is needed, how much and by when. A person can type it, the MRP run can create it when stock will not cover planned requirements, or a project or maintenance order can generate it. A requisition commits nothing towards the supplier; it only tells purchasing that something is needed.
Who: Planner, requester or the MRP run
Where you see it
Requesters create requisitions in ME51N or the Create Purchase Requisition app and display them in ME53N; planners see the requirement in the stock/requirements list.
ME51NME53NMD04
Under the hood
Requisitions are stored in table EBAN. In SAP S/4HANA the MRP run is MRP Live (MD01N). Planning parameters come from the MRP views of the material master, kept per plant or per MRP area.
EBANMD01NMARC
Tables, Customizing transactions and technical details for this step are in the Consultant view.
Sources: SAP Learning, purchasing and classic stock lists (MD04); SAP Learning, material master simplifications.
Step 2 of 8 · What happens
Purchasing finds the source
Before ordering, the buyer decides where to buy. SAP can propose the supplier from a purchasing info record (the price and conditions agreed with a supplier for a material), a source list (which suppliers are allowed, and when) or a contract. For new purchases, a request for quotation collects offers and a price comparison picks the winner.
Who: Buyer
Where you see it
Buyers maintain info records in ME11, source lists in ME01 and contracts in ME31K, and assign sources to open requisitions in ME57.
ME11ME01ME31KME57
Under the hood
Info records live in EINA (general data) and EINE (per purchasing organization), source lists in EORD, and contracts and scheduling agreements in EKKO and EKPO like orders. Requests for quotation are created in ME41, quotations entered in ME47 and compared in ME49.
EINAEINEEORDME41ME49
Tables, Customizing transactions and technical details for this step are in the Consultant view.
Source: SAP Learning, Business Processes in SAP S/4HANA Sourcing and Procurement.
Step 3 of 8 · What happens
Someone approves it
Purchases above a value, for some material groups or for some cost centers need approval. SAP calls it releasing: a release strategy decides who must approve a requisition or a purchase order, and in which order. A purchase order that still waits for release cannot be output to the supplier.
Who: Managers and budget owners
Where you see it
Approvers release requisitions in ME54N (one) or ME55 (many) and purchase orders in ME29N or ME28. In SAP Fiori, approval tasks arrive in My Inbox.
ME54NME55ME29NME28My Inbox
Under the hood
Classic release strategies use classification: characteristics (CT04) and classes (CL02) hold the values, such as total value, plant or purchasing group, that select a strategy. SAP S/4HANA also offers flexible workflow for requisitions and purchase orders, set up in Fiori apps.
CT04CL02CL24N
Tables, Customizing transactions and technical details for this step are in the Consultant view.
Source: SAP Learning, Business Processes in SAP S/4HANA Sourcing and Procurement.
Step 4 of 8 · What happens
The purchase order goes out
The purchase order is the formal request to the supplier: material, quantity, price, delivery date, plant and storage location. Its item category says what kind of purchase it is, such as standard, consignment, subcontracting, service or stock transfer. Its account assignment category says who pays when the goods are not for stock, for example a cost center or a project.
Who: Buyer
Where you see it
Buyers create and change orders in ME21N and ME22N or in Manage Purchase Orders; anyone can display them in ME23N. ME2N, ME2L and ME2M list orders by number, supplier or material.
ME21NME23NME2NManage Purchase Orders
Under the hood
Header, items and schedule lines sit in EKKO, EKPO and EKET, account assignments in EKKN and the order history (every receipt and invoice) in EKBE. Item categories: blank standard, K consignment, L subcontracting, D service, U stock transfer. Account assignment categories include K cost center, F order, P project and A asset.
EKKOEKPOEKETEKKNEKBE
Tables, Customizing transactions and technical details for this step are in the Consultant view.
Sources: SAP Help, purchasing applications (Release 4.6 Enjoy); SAP Learning, purchasing.
Step 5 of 8 · What happens
The goods arrive
When the truck arrives, the warehouse posts a goods receipt against the purchase order with movement type 101. Stock goes up in the plant and storage location, the order shows what is still open, and SAP writes two documents at once: a material document for the quantity and an accounting document for the value, debiting stock and crediting the GR/IR clearing account.
Who: Warehouse clerk
Where you see it
Warehouse clerks post in MIGO or the Post Goods Receipt for Purchasing Document app; MB51 and the Material Documents Overview app show what was posted.
MIGOMB51Material Documents Overview
Under the hood
In SAP S/4HANA every material document goes into one table, MATDOC; MKPF and MSEG still answer as compatibility views. The accounting entry comes from automatic account determination: key BSX for the stock account and WRX for GR/IR, assigned per valuation class in OBYC. A receipt can go to quality inspection, to blocked stock or, with movement type 103, to non-valuated GR blocked stock.
MATDOCOBYCBSXWRX103
Tables, Customizing transactions and technical details for this step are in the Consultant view.
Sources: SAP Community, NSDM; SAP Learning, account determination; SAP Help, movement types.
Step 6 of 8 · What happens
Stored, moved and counted
Once in stock, material moves: from quality inspection to unrestricted use (321), between storage locations (311), to a cost center (201) or to a production order (261). At least once a year it is counted. A physical inventory document records the count, and the differences are posted as a surplus (701) or a shortage (702), which corrects the books as well.
Who: Warehouse, production and quality
Where you see it
MMBE shows one material across all levels, MB52 the stock of many materials and MB5B the stock on any past date. Counts are entered in MI04 or the Manage Physical Inventory Count app.
MMBEMB52MB5BMI04
Under the hood
Stock is not stored as a number in SAP S/4HANA: MARD and the other stock tables are computed on the fly from MATDOC through CDS views such as NSDM_V_MARD, helped by the condensed table MATDOC_EXTRACT. Physical inventory documents are created in MI01 and differences posted in MI07, which uses GBB with account modifier INV.
NSDM_V_MARDMATDOC_EXTRACTMI01MI07
Tables, Customizing transactions and technical details for this step are in the Consultant view.
Sources: SAP Learning, classic stock lists; SAP Community, NSDM; SAP KBA 3614732.
Step 7 of 8 · What happens
The invoice is checked
The supplier invoice is entered with reference to the purchase order. SAP proposes quantities and values from what was received and compares the three documents: what was ordered, what arrived and what is charged. Within tolerance, the invoice posts and the GR/IR account is cleared. Above tolerance it still posts, but blocked for payment, so nobody pays for goods that did not arrive or at a price nobody agreed.
Who: Accounts payable
Where you see it
AP enters invoices in MIRO or the Create Supplier Invoice app, parks them in MIR7, displays them in MIR4 and releases blocked ones in MRBR. MR8M cancels a wrong one.
MIROMIR4MRBRMR8M
Under the hood
Invoice header and items sit in RBKP and RSEG. Tolerance limits such as price variance (PP) and quantity variance (DQ) are set per company code in OMR6. Small differences can be written off to key DIF, and freight planned on the order is cleared on FRE.
RBKPRSEGOMR6DIFFRE
Tables, Customizing transactions and technical details for this step are in the Consultant view.
Source: SAP Learning, Invoice Verification in SAP S/4HANA.
Step 8 of 8 · What happens
Paid, and the period closed
The invoice is now an open item on the supplier account, and the payment run pays it like any other. At month end the materials period is moved forward so goods movements post into the new month, and the GR/IR account is analyzed: goods received but not invoiced, and invoiced but not received. Differences that will never close are cleared.
Who: Accounts payable and accountants
Where you see it
Accountants review GR/IR balances with MB5S or the Reconcile GR/IR Accounts app; MR11 clears differences that will never be invoiced or delivered.
F110MB5SMR11Reconcile GR/IR Accounts
Under the hood
The next materials period is opened with MMPV, and MMRV allows postings to the previous one. If the period is not shifted, users get message M7053. Period closing also runs the pre-compaction of MATDOC_EXTRACT. Reconcile GR/IR Accounts (F3302) and Monitor GR/IR Account Reconciliation (F3303) can add machine learning proposals with a separate license.
MMPVMMRVF3302F3303
Tables, Customizing transactions and technical details for this step are in the Consultant view.
Sources: SAP Learning, GR/IR apps; message M7053; SAP Community, NSDM.
Four documents, one trail
Every purchase leaves the same chain of documents. The purchase order history (EKBE) links them, so from any one of them you can reach the others.
- InternalPurchase requisitionWhat is needed, how much, by when. Commits nothing.
10004711EBAN - To the supplierPurchase orderThe commitment: material, price, date, plant.
4500018273EKKO/EKPO - Quantity + valueMaterial documentThe goods receipt, with its accounting document beside it.
5000003921MATDOC - What is owedSupplier invoiceChecked against both, then posted to the supplier.
5105600118RBKP/RSEG
Document numbers are examples; number ranges differ in every system.
MM meets FI
Every goods movement is also an accounting entry
This is the part finance people care about. Each goods movement with a value, and each supplier invoice, posts to the general ledger by itself through automatic account determination. The movement says what happened, a transaction key says which kind of account, and the valuation class of the material picks the actual G/L account. Pick a key.
Inventory posting
Every change in valued stock: goods receipts, issues, transfers between valuation areas and inventory differences all hit the stock account of the material’s valuation class.
Example
Goods receipt for a stock purchase order (101)- DebitInventory (BSX)
- CreditGR/IR clearing (WRX)
Accounts per key are maintained in OBYC; OMWB opens the same settings with a Simulation. Each MM transaction has a fixed value string, such as WE01 for a goods receipt, that lists the keys it uses: value strings cannot be changed, only the accounts behind them.
GR/IR clearing
Credited by the goods receipt for a purchase order and debited by the invoice. Its balance is what was received but not yet invoiced, or invoiced but not yet received.
Example
Supplier invoice in MIRO- DebitGR/IR clearing (WRX)
- CreditSupplier
Accounts per key are maintained in OBYC; OMWB opens the same settings with a Simulation. Each MM transaction has a fixed value string, such as WE01 for a goods receipt, that lists the keys it uses: value strings cannot be changed, only the accounts behind them.
Price differences
For standard-price materials, any difference between the standard price and the order or invoice price. For moving-average materials, invoice differences that no longer have stock to land on.
Example
Receipt of a standard-price material above its standard- DebitInventory (BSX) at standard, plus price differences (PRD)
- CreditGR/IR clearing (WRX) at the order price
Accounts per key are maintained in OBYC; OMWB opens the same settings with a Simulation. Each MM transaction has a fixed value string, such as WE01 for a goods receipt, that lists the keys it uses: value strings cannot be changed, only the accounts behind them.
Offsetting entry for inventory posting
The other side of goods issues, scrapping, inventory differences and receipts without a purchase order. One key, many accounts: the account modifier picks which one.
Account modifiers
VBRConsumption: issues to cost centers and orders (201, 261)VNGScrapping (551)INVInventory differences (701, 702)BSAInitial entry of stock balances (561)ZOBGoods receipt without a purchase order (501)VAX / VAYGoods issue for a sales delivery (601)
Example
Goods issue to a cost center (201)- DebitConsumption (GBB-VBR), charged to the cost center
- CreditInventory (BSX)
Accounts per key are maintained in OBYC; OMWB opens the same settings with a Simulation. Each MM transaction has a fixed value string, such as WE01 for a goods receipt, that lists the keys it uses: value strings cannot be changed, only the accounts behind them.
Revaluation gain or loss
Price changes that affect stock already valued in a previous period, and some standard-price postings that cross periods.
Example
Price change that reaches back into the previous period- DebitInventory (BSX)
- CreditRevaluation gain (UMB)
Accounts per key are maintained in OBYC; OMWB opens the same settings with a Simulation. Each MM transaction has a fixed value string, such as WE01 for a goods receipt, that lists the keys it uses: value strings cannot be changed, only the accounts behind them.
Consignment payables
When you take supplier consignment stock into your own stock or consume it, the liability to the supplier arises here. The consignment settlement (MRKO) later moves it to the supplier account.
Example
Consignment stock to own stock (411 K)- DebitInventory (BSX)
- CreditConsignment payables (KON)
Accounts per key are maintained in OBYC; OMWB opens the same settings with a Simulation. Each MM transaction has a fixed value string, such as WE01 for a goods receipt, that lists the keys it uses: value strings cannot be changed, only the accounts behind them.
Freight clearing
Delivery costs planned in the purchase order are credited here at goods receipt and cleared when the freight invoice is posted.
Example
Goods receipt for an order with planned freight- DebitInventory (BSX), goods plus freight
- CreditGR/IR clearing (WRX) and freight clearing (FRE)
Accounts per key are maintained in OBYC; OMWB opens the same settings with a Simulation. Each MM transaction has a fixed value string, such as WE01 for a goods receipt, that lists the keys it uses: value strings cannot be changed, only the accounts behind them.
Expense or revenue from stock transfer
Transfer postings between materials or valuation areas that carry different prices, for example material to material (309).
Example
Material to material (309) at different prices- DebitInventory of the receiving material (BSX)
- CreditInventory of the issuing material (BSX); the difference goes to AUM
Accounts per key are maintained in OBYC; OMWB opens the same settings with a Simulation. Each MM transaction has a fixed value string, such as WE01 for a goods receipt, that lists the keys it uses: value strings cannot be changed, only the accounts behind them.
Exchange rate differences
Foreign-currency orders whose invoice is posted at a different exchange rate than the goods receipt, when the difference is not posted to stock.
Example
Invoice in US dollars at a new rate- DebitGR/IR clearing (WRX) at the goods receipt rate
- CreditSupplier at the invoice rate; the difference goes to KDM
Accounts per key are maintained in OBYC; OMWB opens the same settings with a Simulation. Each MM transaction has a fixed value string, such as WE01 for a goods receipt, that lists the keys it uses: value strings cannot be changed, only the accounts behind them.
Small differences in invoice verification
Invoice differences below the small-difference tolerance, written off automatically instead of blocking the invoice.
Example
Invoice 0.30 above the expected amount- DebitGR/IR clearing (WRX), plus 0.30 to DIF
- CreditSupplier
Accounts per key are maintained in OBYC; OMWB opens the same settings with a Simulation. Each MM transaction has a fixed value string, such as WE01 for a goods receipt, that lists the keys it uses: value strings cannot be changed, only the accounts behind them.
Sources: SAP Learning, Setting Up Account Determination for Specific Transactions; SAP Help, movement types. The supplier line uses the reconciliation account in the supplier master, not OBYC.
Standard price or moving average? Try it
Starting point: 100 units in stock at 10.00 each, so 1,000.00 of stock. A purchase order for 50 units is received, then the supplier invoice arrives. Change the prices and watch where the differences go.
Price control
Units still in stock when the invoice arrives
Only matters for moving average: an invoice difference can only land on stock that is still there.
Example: order price 12.00, invoice price 12.50, all 150 units still in stock when the invoice arrives. Switch the price control to compare.
| Account | Debit | Credit |
|---|---|---|
Inventory BSX | 500.00 | |
Price differences PRD | 100.00 | |
GR/IR clearing WRX | 600.00 |
| Account | Debit | Credit |
|---|---|---|
GR/IR clearing WRX | 600.00 | |
Inventory BSX | ||
Price differences PRD | 25.00 | |
| Supplier (reconciliation account) | 625.00 |
- Price after receipt10.00
- Price after invoice10.00
- Price differences125.00
With standard price the stock always stays at 10.00. Every difference, at goods receipt and at invoice, goes to price differences, where controlling can see it.
| Account | Debit | Credit |
|---|---|---|
Inventory BSX | 600.00 | |
Price differences PRD | ||
GR/IR clearing WRX | 600.00 |
| Account | Debit | Credit |
|---|---|---|
GR/IR clearing WRX | 600.00 | |
Inventory BSX | 25.00 | |
Price differences PRD | ||
| Supplier (reconciliation account) | 625.00 |
- Price after receipt10.67
- Price after invoice10.83
- Price differences0.00
With moving average the goods receipt changes the price at once, and the invoice difference goes onto the stock, changing the price again.
Simplified: one order line, no taxes, no freight, one currency. In SAP S/4HANA the material ledger also records these differences per material, and actual costing, where it is active, revalues stock and consumption with them at period end. See Material ledger.
Movement types
The three-digit language of the warehouse
Every goods movement carries a movement type. SAP Help defines it as the three-digit key that tells the system how to update quantities, which stock and consumption accounts to post and which fields to show on the screen. Learn twenty of them and most of MM starts to make sense.
Rule of thumb: the reversal is the next number. 101 is reversed by 102, 261 by 262.
101Goods receipt for a purchase order
- Stock
- Up in unrestricted, quality inspection or blocked stock, as the order and material say.
- Accounting
- Debit inventory (BSX), credit GR/IR (WRX). For an order with account assignment, the debit goes to the consumption account of the order instead.
- Reversal
- 102
- Posted in
- MIGO, Post Goods Receipt for Purchasing Document
The most posted movement type in most systems. The order history (EKBE) keeps every 101 and 102 per order item.
103Goods receipt into GR blocked stock
- Stock
- Into GR blocked stock: received but not yet accepted.
- Accounting
- None. The stock is not valued yet.
- Reversal
- 104
- Posted in
- MIGO
Used when goods must be checked before they count as yours. Movement type 105 then releases them into valued stock.
105Release from GR blocked stock
- Stock
- From GR blocked stock into valued stock.
- Accounting
- Debit inventory (BSX), credit GR/IR (WRX).
- Reversal
- 106
- Posted in
- MIGO
The accounting entry of a two-step receipt happens here, not at 103.
122Return delivery to the supplier
- Stock
- Down, with reference to the original receipt.
- Accounting
- Reverses the receipt: credit inventory (BSX), debit GR/IR (WRX).
- Reversal
- 123
- Posted in
- MIGO, Return Delivery
Unlike 102, a return says the goods physically went back. Reasons for movement are kept, and MBGR lists them.
501Goods receipt without a purchase order
- Stock
- Up in unrestricted stock.
- Accounting
- Debit inventory (BSX), credit the offsetting account GBB with modifier ZOB.
- Reversal
- 502
- Posted in
- MIGO
Handy for exceptions; if it becomes routine, someone is buying outside purchasing.
561Initial entry of stock balances
- Stock
- Up, to load opening stock at go-live.
- Accounting
- Debit inventory (BSX), credit GBB with modifier BSA, usually a migration clearing account.
- Reversal
- 562
- Posted in
- MIGO, or migration tools
The migration clearing account must end at zero once the opening balances from FI are loaded.
201Goods issue to a cost center
- Stock
- Down in unrestricted stock.
- Accounting
- Debit consumption (GBB-VBR) on the cost center, credit inventory (BSX).
- Reversal
- 202
- Posted in
- MIGO
Typical for maintenance materials, office supplies and samples.
261Goods issue to an order
- Stock
- Down in unrestricted stock.
- Accounting
- Debit consumption (GBB-VBR) on the production or maintenance order, credit inventory (BSX).
- Reversal
- 262
- Posted in
- MIGO, or automatically by backflush and order confirmation
In production it is rarely typed by hand: confirmations post it.
551Withdrawal for scrapping
- Stock
- Down in unrestricted stock.
- Accounting
- Debit scrapping (GBB-VNG), credit inventory (BSX).
- Reversal
- 552
- Posted in
- MIGO
Variants 553 and 555 scrap from quality inspection and blocked stock.
601Goods issue for a sales delivery
- Stock
- Down in unrestricted stock.
- Accounting
- Debit cost of goods sold (GBB-VAX or VAY), credit inventory (BSX).
- Reversal
- 602
- Posted in
- Posted from the outbound delivery (VL02N)
The sales side (SD) creates it; MM records the movement and FI the cost.
311Transfer between storage locations
- Stock
- Moves within the same plant, in one step.
- Accounting
- None: same plant, same valuation area.
- Reversal
- 312
- Posted in
- MIGO
The classic example of a goods movement with a material document but no accounting document.
301Transfer between plants in one step
- Stock
- Down in the issuing plant, up in the receiving plant.
- Accounting
- Credit inventory in the issuing plant, debit inventory in the receiving plant; price differences go to a difference account.
- Reversal
- 302
- Posted in
- MIGO
For transfers with a delivery and a shipping process, companies use stock transport orders instead.
309Transfer posting material to material
- Stock
- Down for one material, up for another.
- Accounting
- Inventory of both materials (BSX); if their prices differ, the difference goes to AUM.
- Reversal
- 310
- Posted in
- MIGO
Used when a material is renumbered or goods were received under the wrong material.
321Release from quality inspection
- Stock
- From quality inspection to unrestricted use.
- Accounting
- None: the stock was already valued.
- Reversal
- 322
- Posted in
- MIGO, or the QM usage decision
With QM active, the usage decision posts it for you.
343Transfer from blocked to unrestricted
- Stock
- From blocked to unrestricted use.
- Accounting
- None.
- Reversal
- 344
- Posted in
- MIGO
344, its reversal, is also how many warehouses block stock.
411 KSupplier consignment to own stock
- Stock
- From special stock K (the supplier’s) to your own stock.
- Accounting
- Debit inventory (BSX), credit consignment payables (KON): now you owe the supplier.
- Reversal
- 412 K
- Posted in
- MIGO
The liability is settled later with the consignment settlement, MRKO.
541Transfer to stock with subcontractor
- Stock
- To special stock O at the subcontractor.
- Accounting
- None: it is still your stock.
- Reversal
- 542
- Posted in
- MIGO, or from the subcontracting order
MBLB shows what each subcontractor holds.
641Goods issue to stock in transit
- Stock
- Down in the issuing plant, up in stock in transit of the receiving plant.
- Accounting
- The value moves with the stock to the receiving plant.
- Reversal
- 642
- Posted in
- Posted from the delivery of a stock transport order
MB5T shows what is in transit; the receiving plant posts 101 when it arrives.
701Physical inventory: surplus
- Stock
- Up in unrestricted stock.
- Accounting
- Debit inventory (BSX), credit inventory differences (GBB-INV).
- Reversal
- Opposite: 702
- Posted in
- MI07, or the physical inventory apps
Posted from the physical inventory document, never typed directly.
702Physical inventory: shortage
- Stock
- Down in unrestricted stock.
- Accounting
- Debit inventory differences (GBB-INV), credit inventory (BSX).
- Reversal
- Opposite: 701
- Posted in
- MI07, or the physical inventory apps
Shortages above a limit often need approval before MI07 posts them.
Stock types: can I use it?
- UnrestrictedFree to use, issue and sell.
- Quality insp.Waiting for a quality decision; valued, not yet usable.
- BlockedValued but not usable, for example damaged goods.
- GR blockedReceived but not accepted yet; not valued (103).
- In transitLeft one plant, not yet received in the other.
Special stocks: whose is it?
KSupplier consignment: in your warehouse, still the supplier’s until you use it.OWith subcontractor: yours, at the supplier, to be processed.ESales order stock: reserved for one customer order.QProject stock: belongs to a WBS element.WConsignment at customer: yours, at the customer, until they use it.
Stock tables: MKOL (special stocks from supplier), MSLB (with supplier), MSKA (sales order), MSPR (project), MSKU (with customer). In SAP S/4HANA they are computed from MATDOC like MARD.
Sources: SAP Help, What Is a Movement Type?; SAP Learning, classic stock lists and account determination; SAP Community, SAP S/4HANA inventory management tables (NSDM).
Quick test
Which movement type would you use?
Eight things that happen in a warehouse every week. Guess the movement type first, then open the card. Projects can add their own movement types, but these are the standard ones everybody knows.
A pallet arrives for a purchase order and goes straight to the shelfShow the answer
101Goods receipt for a purchase order. Stock goes up and the order shows the quantity as delivered.
Accounting: debit BSX, credit WRX
Yesterday’s receipt was posted against the wrong orderShow the answer
102Cancel it in MIGO: SAP posts 102 against the 101 as a new material document. Nothing is deleted, both stay.
Accounting: the opposite of the 101
Twenty boxes arrived damaged and go back to the supplierShow the answer
122A return delivery refers to the original receipt and records the reason. Unlike 102, it says the goods physically went back.
Accounting: credit BSX, debit WRX
Maintenance takes ten filters for a cost centerShow the answer
201Goods issue to a cost center: stock goes down, consumption goes up on that cost center.
Accounting: debit GBB-VBR, credit BSX
Production takes resin for a process orderShow the answer
261Goods issue to an order. In real life it is often posted by backflush when the order is confirmed.
Accounting: debit GBB-VBR, credit BSX
Stock moves from the main store to the line-side store, same plantShow the answer
311Storage location to storage location in one step. Quantity moves, value does not.
Accounting: no accounting document
Quality approves a lot that was waiting for inspectionShow the answer
321Quality inspection to unrestricted use. With QM active, the usage decision posts it automatically.
Accounting: no accounting document
Go-live: loading the opening stock from the old systemShow the answer
561Initial entry of stock balances. The offset goes to a migration clearing account that must end at zero.
Accounting: debit BSX, credit GBB-BSA
Reference
The MM transactions people actually use
Most MM transactions start with ME (purchasing), MB or MI (inventory and physical inventory), MR or MIR (invoice verification) and MM (material master). Start here shows the ones worth bookmarking; the other tabs split the rest between users and consultants, plus the Fiori apps and the tables behind them. Type a code or a word to search all of them.
| Code or app | For | What it does | Who opens it | Source |
|---|---|---|---|---|
ME21N | User | Create a purchase order. ME22N changes it and ME23N displays it. | Buyers | SAP Help, Release 4.6 Enjoy |
ME51N | User | Create a purchase requisition. ME52N changes it and ME53N displays it. | Requesters, planners | SAP Help, Release 4.6 Enjoy |
MIGO | User | Post any goods movement: receipt, issue, transfer, return or reversal. In SAP S/4HANA it replaces MB1A, MB1B, MB1C and MB01. | Warehouse | Message M7499 |
MIRO | User | Enter a supplier invoice with reference to the purchase order and check it against the goods receipt. | Accounts payable | SAP Learning, invoice verification |
MMBE | User | Stock overview: one material across all plants, storage locations and stock types. | Everyone | SAP Learning, stock lists |
MB51 | User | Material document list: every goods movement, filterable by material, movement type, user and date. | Everyone | SAP Learning, stock lists |
MM03 | User | Display a material master, view by view. MM01 creates it and MM02 changes it. | Everyone | SAP Learning, material master |
ME2N | User | Purchase orders by number; ME2L by supplier and ME2M by material. Selection parameter WE101 keeps only orders still open for goods receipt. | Buyers | Selection parameters |
MB5B | User | Stock on a posting date: opening and closing stock and the movements in between. | Inventory, finance, auditors | SAP Learning, stock lists |
MB52 | User | Warehouse stock of many materials, with quantities and values; can show only negative stocks. | Inventory controllers | SAP Learning, stock lists |
MD04 | User | Stock/requirements list: current stock and all requirements of one material in one plant. | Planners, buyers | SAP Learning, stock lists |
ME54N | User | Release (approve) one purchase requisition. ME55 releases several at once. | Approvers | SAP Learning, purchasing |
ME29N | User | Release a purchase order. ME28 releases several at once. | Approvers | SAP Learning, purchasing |
ME57 | User | Assign sources to open requisitions and turn them into purchase orders. | Buyers | SAP Learning, purchasing |
ME11 | User | Create a purchasing info record: the price and conditions agreed with a supplier for a material. ME13 displays it. | Buyers | SAP Learning, purchasing |
ME01 | User | Maintain the source list: which suppliers may supply a material, and when. | Buyers | SAP Learning, purchasing |
ME31K | User | Create a contract. ME31L creates a scheduling agreement. | Buyers | SAP Learning, purchasing |
ME41 | User | Create a request for quotation. ME47 records the quotation and ME49 compares prices. | Buyers | SAP Learning, purchasing |
MIR4 | User | Display a supplier invoice posted in MIRO. | Accounts payable | SAP Learning, invoice verification |
MIR7 | User | Park a supplier invoice to complete or approve it later. | Accounts payable | SAP Learning, invoice verification |
MRBR | User | Release invoices blocked for payment. | Accounts payable | SAP Learning, invoice verification |
MR8M | User | Cancel a posted supplier invoice. | Accounts payable | SAP Learning, invoice verification |
MB53 | User | Plant stock availability of one material across plants. | Sales, buyers | SAP Learning, stock lists |
MB5T | User | Stock in transit between plants, from stock transport orders. | Inventory controllers | SAP Learning, stock lists |
MBLB | User | Stock held at subcontractors. | Buyers, inventory | SAP Learning, stock lists |
MBSM | User | Cancelled material documents with their originals. | Inventory, auditors | SAP Learning, stock lists |
MBGR | User | Material documents that carry a reason for movement, such as returns. | Inventory, quality | SAP Learning, stock lists |
MI01 | User | Create a physical inventory document. MI04 enters the count and MI07 posts the differences. | Warehouse | SAP KBA 3614732 |
MB5S | User | List of GR/IR balances per purchase order. | Accountants | SAP Learning, invoice verification |
MR11 | User | GR/IR account maintenance: clears differences that will never be invoiced or delivered. | Accountants | SAP Learning, invoice verification |
MR51 | User | Accounting documents for a material. | Accountants | SAP Learning, stock lists |
SPRO | Consultant | Customizing. MM lives under Materials Management; account determination under Valuation and Account Assignment. | Consultants | SAP Learning, account determination |
OBYC | Consultant | Automatic account determination: G/L accounts per transaction key, valuation class and account modifier. | MM and FI consultants | SAP Learning, account determination |
OMWB | Consultant | The same settings as OBYC, plus the Simulation that shows which account a movement would hit. | MM and FI consultants | SAP Learning, account determination |
OMJJ | Consultant | Movement type configuration. | Consultants | SAP Help, movement types |
MMPV | Consultant | Open the next materials posting period. MMRV allows postings to the previous period. | Consultants, key users | Message M7053 |
OX10 | Consultant | Define plants. OX09 defines storage locations and OX08 purchasing organizations. | Consultants | SAP Learning, plants |
OX18 | Consultant | Assign plant to company code. OX01 assigns a purchasing organization to a company code and OX17 to a plant. | Consultants | SAP Learning, plants |
OX14 | Consultant | Valuation level: plant or company code. | Consultants | IMG activity OX14 |
EC02 | Consultant | Copy, delete and check a plant, including the plant-dependent tables. | Consultants | SAP Learning, plants |
OME4 | Consultant | Purchasing groups: the buyers or desks shown on documents. | Consultants | SAP Learning, purchasing |
OMS2 | Consultant | Material types: views, number range and price control per type. | Consultants | SAP Learning, material master |
MMNR | Consultant | Number ranges for material master records. | Consultants | SAP Learning, material master |
FLETS | Consultant | Activate the extended material number fields (40 characters) in SAP S/4HANA. OMSL sets the output format. | Consultants | SAP Learning, material master |
OMR6 | Consultant | Tolerance limits for invoice verification, per company code: price variance (PP), quantity variance (DQ) and others. | Consultants | SAP Learning, invoice verification |
CT04 | Consultant | Characteristics, used with classes (CL02) to build release strategies. | Consultants | SAP Learning, purchasing |
OMWC | Consultant | Split valuation: valuation categories and types, so one material can carry several prices, such as domestic and imported. | Consultants | SAP Learning, plants |
MB80 | Consultant | Checks the DDL files behind the MATDOC compatibility views (SAP Note 2542130). | Consultants, developers | SAP Community (NSDM) |
| Manage Purchase Orders | Fiori app | Create, change, copy and follow purchase orders. | Buyers | SAP Learning, purchasing |
| Create Purchase Requisition | Fiori app | Self-service requisition from a catalog or free text. | Requesters | SAP Learning, purchasing |
| Manage Purchase Requisitions | Fiori app | Find, change and follow requisitions. | Buyers, requesters | SAP Learning, purchasing |
| Post Goods Receipt for Purchasing Document | Fiori app | Post a goods receipt against a purchase order (app F0843). | Warehouse | SAP KBA 2381460 |
| Material Documents Overview | Fiori app | Recently posted material documents; the Material Document app opens one and can reverse the movement. | Warehouse | SAP Learning, analytical apps |
| Stock – Single Material | Fiori app | Stock of one material, with barcode scanning, safety stock comparison and 11 months of history. | Warehouse, planners | SAP Learning, analytical apps |
| Stock – Multiple Materials | Fiori app | Stock quantities and values of many materials on a reporting date, exportable to a spreadsheet. | Inventory managers | SAP Learning, analytical apps |
| Slow or Non-Moving Materials | Fiori app | Materials with stock but no consumption over a period: candidates for scrapping or transfer. | Inventory managers | SAP Learning, analytical apps |
| Dead Stock Analysis | Fiori app | Materials whose stock value grew over a period despite consumption. | Inventory managers | SAP Learning, analytical apps |
| Goods Movement Analysis | Fiori app | Goods movements by dimension and key figure, down to the material document item. | Inventory managers | SAP Learning, analytical apps |
| Monitor Purchase Order Items | Fiori app | Overdue purchase order items and items waiting for approval. | Buyers | SAP Learning, analytical apps |
| Manage Physical Inventory Count | Fiori app | Enter counts for physical inventory documents. | Warehouse | SAP KBA 3614732 |
| Reconcile GR/IR Accounts | Fiori app | Worklist of order items where receipt and invoice differ, with smart facts, status, root cause and write-off (F3302). | Accountants | SAP Learning, GR/IR apps |
| Monitor GR/IR Account Reconciliation | Fiori app | KPI overview of open GR/IR items (F3303). | Finance managers | SAP Learning, GR/IR apps |
MATDOC | Table | Material documents, header and items, in SAP S/4HANA. Insert-only; stock is computed from it. | Consultants | SAP Community (NSDM) |
MKPF / MSEG | Table | ECC material document header and items; compatibility views on MATDOC in SAP S/4HANA. | Consultants | SAP Community (NSDM) |
MATDOC_EXTRACT | Table | Condensed extract of MATDOC used to compute stock quickly; compacted at period close. | Consultants | SAP Community (NSDM) |
MARA | Table | Material master, client level: basic data. | Consultants | SAP Help Portal |
MARC | Table | Material master, plant level: purchasing, MRP, foreign trade (NCM in Brazil). | Consultants | SAP Community (Brazil) |
MARD | Table | Storage location data; in SAP S/4HANA its stock fields come from MATDOC through NSDM_V_MARD. | Consultants | SAP Community (NSDM) |
MBEW | Table | Material valuation: price control, prices, valuation class; material usage and origin in Brazil. | Consultants | SAP Community (Brazil) |
EBAN | Table | Purchase requisitions. | Consultants | SAP Help Portal |
EKKO / EKPO | Table | Purchasing document header and items: orders, contracts, scheduling agreements, requests for quotation. | Consultants | SAP Help Portal |
EKET | Table | Purchase order schedule lines (delivery dates). | Consultants | SAP Help Portal |
EKBE | Table | Purchase order history: every goods receipt and invoice per item. | Consultants | SAP Help Portal |
EKKN | Table | Account assignment of purchase order items. | Consultants | SAP Help Portal |
EINA / EINE | Table | Purchasing info records: general data and data per purchasing organization. | Consultants | SAP Help Portal |
EORD | Table | Source list. | Consultants | SAP Help Portal |
RBKP / RSEG | Table | Supplier invoice header and items (MIRO). | Consultants | SAP Help Portal |
T156 | Table | Movement types. | Consultants | SAP Help Portal |
T030 | Table | Automatic account determination, as maintained in OBYC. | Consultants | SAP Help Portal |
MKOL / MSLB / MSKA | Table | Special stocks: supplier consignment, with subcontractor, sales order stock. | Consultants | SAP Help Portal |
Nothing matches. Try another word, or pick All.
Transactions work in SAP ECC 6.0 and SAP S/4HANA unless noted. Projects can restrict them through roles, and some Fiori apps depend on the release, so check your own system before you write them into a manual.
SAP S/4HANA
What changed when MM moved to SAP S/4HANA
The business process is the same: requisition, order, receipt, invoice. What changed is underneath, plus a few things users notice on day one. With mainstream maintenance for SAP ECC 6.0 ending at the close of 2027, this list is the MM part of many conversion projects.
If you remember one thingIn SAP S/4HANA, stock is not a number stored in a table. It is calculated every time from the material documents.
| Topic | SAP ECC | SAP S/4HANA |
|---|---|---|
| Material documents | MKPF (header) and MSEG (items), plus totals tables such as MARD that stored stock quantities | One insert-only table, MATDOC. Stock is computed on the fly; the old tables answer through compatibility views. SAP Note 2206980. |
| Posting goods movements | MB1A, MB1B, MB1C, MB01, MB0A, MB11, MB31 and others, beside MIGO | MIGO only. The MB transactions answer with message M7499, Transaction is obsolete (SAP Note 1804812). |
| Suppliers | Vendor master in XK01, MK01 and FK01 | Business partner, transaction BP; the XK and MK transactions point to it. |
| Material number | 18 characters | Up to 40 characters, switched off by default; activated per system with FLETS and OMSL. |
| Valuation | Material ledger optional | Material ledger mandatory, with prices in every valuation currency. Actual costing stays optional. |
| Planning | Storage location MRP in the MRP 4 view | Storage location MRP removed; MRP areas instead. The MRP run is MRP Live (MD01N). |
| Foreign trade data | Commodity code typed in the material master | Maintained with the Fiori app Classify Product. |
| GR/IR | MB5S and MR11, analysis in spreadsheets | Reconcile GR/IR Accounts and Monitor GR/IR Account Reconciliation, with optional machine learning proposals (separate license). |
| Stock reporting | MB51, MB52, MMBE, MB5B | Same transactions, plus Fiori apps such as Stock – Multiple Materials, Slow or Non-Moving Materials and Dead Stock Analysis. |
| AI | None | Joule assistants for spend management announced in May 2026, among them requisition, sourcing, buying, receiving and invoicing assistants. |
Sources: SAP Community, inventory management tables (NSDM); message M7499; SAP Learning, material master simplifications and GR/IR Fiori apps; SAP News, May 2026; SAPinsider on SAP support deadlines.
Brazil
MM in Brazil: every material carries a tax ID
In Brazil a purchase is never just a purchase. Each item needs the data that decides its taxes and its CFOP, and every inbound shipment comes with an electronic nota fiscal that must match the order. That is why Brazilian MM consultants spend so much of their time with tax people.
- Material master
Tax data lives in the material
The NCM code (MARC-STEUC, foreign trade view) drives the IPI rate. The material CFOP category (MARC-INDUS), the material usage (MBEW-MTUSE) and the material origin (MBEW-MTORG) feed the CFOP determination when the nota fiscal is created.
Source: SAP Community, Material Master Brazil Localization - Origin 0 to 8
Nine origins, one digit
Material origin says whether goods are national or foreign and how much imported content they carry, from 0 (national) to 8 (national, imported content above 70%). It shows on the Brazil tab of the purchase order item, and split valuation and stock transfer scenarios have their own known pitfalls.
Source: SAP Community, Material Origin (MATORG) - Invoice · NF-e
MIRO meets the nota fiscal
The supplier’s invoice is an NF-e, an XML authorized by the tax authority before the goods leave. Purchasing must match it to the order and the receipt with the right tax code and CFOP. Posting in MIRO also writes SAP’s nota fiscal document, shown in J1B3N, and SAP’s inbound NF-e solution (SAP GRC NF-e, today SAP DRC) receives and checks the XML.
Related: SAP e-reporting in Brazil
Documented, but little known
18 tips for users and consultants
Each tip comes from SAP documentation, an SAP knowledge base article or a published source, linked under the tip.
- 01Users
Stock on any past date
MB5B shows the stock at the start and end of a period, the receipts and issues in between and the material documents behind them. It is the report auditors ask for at year end.
MB5B
- 02Users
Show only the negative ones
MB52 can be limited to negative stocks, a quick way to find where postings went wrong when negative stock is allowed.
MB52
- 03Users
Find the reversals
MBSM lists cancelled material documents together with the originals, but only reversals made with the Cancel function. MBGR lists the movements that carry a reason for movement.
MBSMMBGR
- 04Users
Open orders without filters
In ME2N, ME2L and ME2M the selection parameter WE101 keeps only orders still open for goods receipt. Customizing holds the full list of selection parameters.
ME2NWE101
- 05Users
Reverse from the app
In SAP Fiori, the Material Document app shows a single material document and lets you reverse the goods movement from there.
Material Document
- 06Users
Find money sitting on shelves
Slow or Non-Moving Materials lists stock with no consumption over a period, and Dead Stock Analysis finds materials whose stock value keeps growing. Both are good starting points for scrapping or transfers.
Slow or Non-Moving MaterialsDead Stock Analysis
- 07Users
Error M7053 is usually the date
The posting date is outside the two open materials periods. Check the date first. One documented trap: in Manage Physical Inventory Count the count date of uncounted items defaults to today, which blocks counts for last month.
M7053MMPV
- 08Users
Stock on your phone
Stock – Single Material supports barcode scanning, compares stock with the safety stock and shows 11 months of history.
Stock – Single Material
- 09Consultants
Simulate before you post
Account determination cannot be simulated in the application. OMWB has a Simulation that shows every factor and the account each key would hit, and can check that the accounts exist in the chart of accounts.
OMWBOBYC
- 10Consultants
You assign accounts, not logic
Each MM transaction has a fixed value string, such as WE01 for a goods receipt, listing the transaction keys it uses. Value strings and their keys cannot be changed; Customizing only decides the G/L accounts.
WE01OBYC
- 11Consultants
MARD is a view now
In SAP S/4HANA a SELECT on MARD is redirected to the CDS stack behind NSDM_V_MARD, which reads master data from MARD and adds stock from MATDOC_EXTRACT. Code that needs only master data can read V_MARD_MD.
NSDM_V_MARDV_MARD_MD
- 12Consultants
Period close also compacts stock
MMPV runs the pre-compaction of MATDOC_EXTRACT automatically, and report NSDM_MTDCSA_PRECOMP runs it on demand.
MMPVNSDM_MTDCSA_PRECOMP
- 13Consultants
Old recordings on MB1A will break
The MB goods movement transactions are obsolete in SAP S/4HANA and answer with message M7499 (SAP Note 1804812). Interfaces and batch input built on them must move to MIGO-based logic before go-live.
M7499Note 1804812
- 14Consultants
M8147 without a GR/IR line
MIRO can raise Account determination for entry … WRX … not possible even for orders without a valuated goods receipt. SAP covers the case in a knowledge base article.
M8147KBA 1802639
- 15Consultants
Consignment between plants
Transferring supplier consignment stock between plants with a stock transport order can fail with M7021, Deficit of SL unrestricted-use, even though the stock is there.
M7021KBA 1619355
- 16Consultants
40 characters is a decision
The long material number is off after an upgrade and in new installations. It is switched on per system, FLETS for the fields and OMSL for the format, and affects every system the material number travels to.
FLETSOMSL
- 17Consultants
Machine learning for GR/IR
Reconcile GR/IR Accounts can propose the next step, priority and root cause from past decisions. It needs a separate subscription license.
F3302F3303
- 18Consultants
Check the views behind MATDOC
Transaction MB80, delivered with SAP Note 2542130, helps check the DDL files behind the MATDOC compatibility views when a stock report misbehaves.
MB80Note 2542130
Myths
Things people get wrong about MM
Myth
MM is just purchasing.FactPurchasing is one of three pillars. SAP integrated purchasing, inventory management and invoice verification in its RM system in 1975, and MM also values stock and plans reorders.
Myth
Reversing a goods receipt deletes it.FactNothing is deleted. A reversal is a new material document, for example 102 against 101, and both stay. MBSM lists the pairs.
Myth
Every transfer creates an accounting document.FactOnly when value moves. A 311 between storage locations of the same plant changes quantities only, so there is nothing for finance to post.
Myth
The GR/IR account should be zero at month end.FactIt carries real timing differences: goods received but not invoiced, and invoices for goods not yet received. What matters is that every balance is explained and old ones are cleared.
Myth
SAP S/4HANA dropped MKPF and MSEG.FactThey live on as compatibility views on MATDOC, so old reports and custom code that read them still work.
Myth
Standard price means no variances.FactVariances still happen; they just do not change the stock price. They go to price differences (PRD), at goods receipt and again at invoice.
Myth
The vendor master is gone in SAP S/4HANA.FactSupplier data is still there. It is maintained through the business partner, transaction BP, instead of XK01 and MK01.
Myth
MIGO is a new transaction.FactMIGO arrived with R/3 Release 4.6 for goods receipts and took over the other goods movements from 4.6C. What is new in SAP S/4HANA is that it is the only option.
Evolution
From RM in 1975 to Joule assistants
MM is one of SAP’s oldest functions. Its tables and its screens changed many times, but the purchase order, the goods receipt and the invoice check are still the backbone. Gold dots mark the turning points.
- 1974Thermal-Werke and SchottDevelopment of purchasing software starts at Thermal-Werke, and the glass maker Schott becomes the first company to implement it later that year.
- 1975RMRM, SAP’s new materials management system and its second product pillar, integrates purchasing, inventory management and invoice verification.
- 1979SAP R/2SAP R/2 is launched. Its materials management area, RM, includes purchasing (RM-PUR), inventory management and more.
- 1992SAP R/3SAP R/3 is released, and Materials Management becomes the MM module most consultants learned.
- 4.6The Enjoy releasePurchase orders and requisitions are completely revamped with ME21N and ME51N, and MIGO posts goods receipts in a single screen.
- 4.6CMIGO growsMIGO takes over the other goods movements, while the old MB transactions stay fully functional beside it.
- 2006SAP ERP 6.0SAP ERP 6.0, better known as ECC 6.0, is released; enhancement packages keep it current for years.
- 2015SAP S/4HANAOne material document table, stock calculated on the fly, MIGO as the only goods movement transaction and the business partner for suppliers.
- LaterFiori and machine learningGR/IR reconciliation moves into Fiori apps that can learn from past decisions; inventory analysis gets apps for slow-moving and dead stock.
- 2026May, SAP SapphireSAP announces Joule assistants for spend management, from requisition and sourcing to receiving and invoicing.
- 2027End of the yearMainstream maintenance for SAP ECC 6.0 ends; extended maintenance runs to the end of 2030 at a premium.
What MM is called
| System | Name |
|---|---|
| SAP R/2 | RM (materials management) |
| SAP R/3 and ECC | MM module |
| SAP S/4HANA | Sourcing and Procurement, Inventory Management |
Consultants still say MM. SAP Learning groups the S/4HANA content as Sourcing and Procurement.
Threes worth knowing
- 3core functions since 1975: purchasing, inventory management, invoice verification
- 3digits in every movement type
- 3documents matched before an invoice is paid
- 40characters a material number can have in SAP S/4HANA, once switched on
The questions people ask most
What is SAP MM, in simple words?
The part of SAP that buys, receives, stores, counts and values materials. Purchasing places the orders, inventory management records every movement of stock and invoice verification checks what suppliers charge. Each step creates a document, and every movement with a value also posts to the general ledger.
What is the difference between a purchase requisition and a purchase order?
A requisition is internal: someone, or the MRP run, says what is needed. It commits nothing. A purchase order is external: it goes to the supplier and becomes the reference for the goods receipt and the invoice. Requisitions become orders in ME21N, through ME57, or automatically.
What is the GR/IR account, and why does it never seem to clear?
GR/IR (goods receipt/invoice receipt) is a clearing account: the goods receipt credits it and the invoice debits it. A balance means one side is missing: goods received but not invoiced, or invoiced but not received. Differences that will never close, such as a short delivery the supplier will not invoice, are cleared with MR11, and Reconcile GR/IR Accounts helps analyze the rest.
Standard price or moving average price?
With standard price (S), stock always carries the same price and every difference goes to price differences, which suits manufactured materials and cost control. With moving average (V), receipts and invoices change the price, which suits purchased and traded goods. Try both in the simulator in the MM meets FI section.
How do I reverse a goods receipt?
In MIGO choose Cancellation and enter the material document. SAP posts 102 against the 101, and both documents stay. If the goods physically go back to the supplier, use a return delivery (122) instead. Check the purchase order history first, so you reverse the right document.
Why do I get “Posting only possible in periods …” (M7053)?
The posting date is outside the two open materials periods of the company code. Check the date first. If it is correct, the period has to be shifted with MMPV, usually at month end. MMRV controls whether the previous period stays open.
What does “Deficit of SL unrestricted-use” (M7021) mean?
You are taking more out of a storage location than its unrestricted stock. Check MMBE: the stock may be in another storage location, in quality inspection, in a different batch or not received yet. SAP also documents special cases, such as consignment transfers between plants (KBA 1619355).
How do I see the stock on a past date?
MB5B, Stocks for Posting Date, shows opening and closing stock and the movements in between. In SAP Fiori, Stock – Multiple Materials works with a reporting date, and Analyze Stock in Date Range covers a period.
What does a movement type control?
According to SAP Help, the movement type is the three-digit key that decides how quantities are updated, which stock and consumption accounts are posted and which fields appear on the screen. 101 receives for a purchase order, 201 issues to a cost center and 321 releases from quality inspection.
What is the difference between consignment and subcontracting?
In consignment (special stock K) the supplier’s material sits in your warehouse and stays theirs until you use it; then you owe them. In subcontracting (special stock O) your material sits at the supplier, who processes it and sends it back with an invoice for the work.
How does MM post to FI without anyone typing accounts?
Through automatic account determination. Each movement uses a fixed set of transaction keys, such as BSX for stock, WRX for GR/IR, PRD for price differences and GBB for offsetting entries, and OBYC assigns a G/L account to each key per chart of accounts and valuation class. OMWB simulates the result.
Why can’t my purchase order be sent to the supplier?
Often because it is not released yet. If a release strategy applies, the order needs every approval before it can be output. Check the release strategy tab in ME23N and release it in ME29N, or look for the approval task in My Inbox.
Is it still called MM in SAP S/4HANA?
Consultants still say MM, and the main transactions are the same. SAP groups the area as Sourcing and Procurement, with inventory management beside it. Underneath, the big changes are the MATDOC table, MIGO as the only goods movement transaction, business partners for suppliers and the mandatory material ledger.
Related pages
References
Checked in November 2026. SAP Notes and knowledge base articles need an SAP for Me login. Transaction and app names can differ between releases; check them in your own system.
- SAP company history, 1972–1980sap.com
- Purchasing applications with new interactive design (Enjoy, Release 4.6)help.sap.com
- MIGO: goods movements (Release 4.6C)help.sap.com
- What is a movement type?help.sap.com
- Enabling autonomous spend management (May 2026)news.sap.com
- Using classic stock lists and document listslearning.sap.com
- Using analytical apps for inventory managementlearning.sap.com
- Setting up account determination for specific transactionslearning.sap.com
- Using Fiori apps for GR/IR reconciliationlearning.sap.com
- Performing GR/IR account maintenancelearning.sap.com
- Listing simplifications for the material master in SAP S/4HANAlearning.sap.com
- Defining and assigning plantslearning.sap.com
- Business processes in SAP S/4HANA Sourcing and Procurementlearning.sap.com
- 2206980: Material inventory management, change of data model in S/4HANASAP for Me
- 1804812: MB transactions, limited maintenanceSAP for Me
- 2542130: MB80, checking the MATDOC viewsSAP for Me
- KBA 3614732: physical inventory count blocked by M7053SAP for Me
- KBA 1619355: consignment transfer between plants, M7021SAP for Me
- KBA 1802639: WRX account determination in MIRO, M8147SAP for Me
- KBA 2381460: Post Goods Receipt for Purchase Order (F0843)SAP for Me
- SAP S/4HANA inventory management tables (NSDM)SAP Community
- Message M7053: Posting only possible in periodsmichaelmanagement.com
- Message M7499: Transaction is obsoletemichaelmanagement.com
- SAP S/4HANA obsolete transaction codesmichaelmanagement.com
- List reporting selection parametersMichael Management blog
- IMG activity OX14, define valuation levelsapdatasheet.org
- SAP R/2Wikipedia
- SAP support deadlines 2027, 2030, 2033SAPinsider
- Material master Brazil localizationSAP Community
- Material origin (MATORG)SAP Community