SAP Inventory
Inventory Management in MM tracks stock quantities and values across plants and storage locations, recording every goods movement (receipts, issues, transfers) so the business always knows what stock it has and what it is worth.
SAP inventory management records every goods movement, receipt, issue or transfer, through a three-digit movement type such as 101 for a receipt against an order, 261 for issue to a production order and 311 for a transfer, posted in MIGO and reported in MB51 and MMBE. Stock types say whether stock is usable; valued movements post to FI.
- Watch out: Wrong movement type, incorrect stock/value.
What inventory management does
It records goods movements, receipts (into stock), issues (out of stock, e.g. to production or sales), and transfers (between locations), keeping stock quantities and valuation current in real time. Every movement uses a movement type and, where value changes, posts to finance.
Key concepts
- Movement types: classify each movement (101 GR, 261 issue to order, 311 transfer, etc.).
- Stock types: unrestricted, quality inspection, blocked.
- Valuation: standard vs moving average price.
- Physical inventory: counting and reconciling stock.
Movement types, the language of stock
Every stock movement in SAP is a movement type, a three digit code that says what happened and what the system should do about it. Learning a dozen of them is the fastest way to become useful in inventory.
101 is a goods receipt against a purchase order, and 102 reverses it. That pairing holds throughout: a reversal is the movement type plus one. 201 issues stock to a cost centre, 261 issues it to a production order, 601 issues it to a delivery when goods are sold, and 311 transfers stock between storage locations in one plant.
The movement type does three things at once. It decides which stock figure changes, whether the movement is valuated, and which accounts the posting hits through account determination. That is why choosing the wrong one is not a cosmetic error: it moves the value somewhere finance did not expect, and correcting it means a reversal rather than an edit.
Movements are recorded in a material document, which is separate from the accounting document even though both are created at once. The material document says what moved. The accounting document says what it was worth. See goods receipt for the most common movement of all.
Where inventory lives in the system
MIGO posts almost every movement, with the transaction type at the top of the screen
deciding whether you are receiving, issuing or transferring. MB51 lists material
documents and is the report to reach for when somebody asks what happened to stock.
MMBE is the stock overview, showing quantities by plant, storage location and stock
type in one tree.
Physical inventory has its own transactions: MI01 creates a count document,
MI04 enters the counted quantity and MI07 posts the difference. The
difference posting is the one finance cares about, because it writes off or writes up real value.
The tables are MARD for stock by storage location and MBEW for material
valuation, which holds the price and the valuation class that drives account determination. Material
documents live in MATDOC.
Move stock and watch the value follow
Twenty minutes, and it makes the link between quantity and value concrete.
- Check current stock with
MMBEfor a material and plant. Note the unrestricted quantity. - Post a goods issue to a cost centre with
MIGO, movement type 201. Stock falls. - Open the material document and click through to the accounting document. The stock account was credited and the cost centre's expense account debited.
- Now post a transfer with movement type 311 between two storage locations in the same plant. Look for the accounting document: there is not one, because the value did not leave the plant.
- Compare the two in
MB51. Same material, same day, one valuated and one not.
Step four is the point. Not every movement posts to finance, and knowing which do is most of understanding inventory accounting.
Integration
Inventory management sits at the centre of logistics: procurement receipts, production consumption/output, and sales issues all move stock here, and value changes post to FI. Accurate inventory (right quantities, right valuation) is essential for both operations and financial correctness.
The field that decides the accounts is the valuation class on the material master, combined with the movement type, resolved through account determination. A new material type with no valuation class configured will receive fine in a test and fail on the first real goods receipt. See the purchase order for what happens before the receipt and invoice verification for what happens after.
The decisions that shape inventory
- Standard price or moving average. Standard price keeps the valuation stable and pushes differences to a variance account, which is what manufacturing usually wants. Moving average follows the actual purchase price, which suits traded goods. Changing later is a project.
- How many storage locations. Enough to reflect where stock physically is, and not so many that everyone spends their day transferring between them.
- Batch management on or off. Switching it on for a material that already has stock is painful, so it is decided at the start, and it is required outright in food, pharmaceutical and chemical businesses.
- Cycle counting or an annual count. Cycle counting spreads the work across the year and keeps accuracy visible. An annual count is one large disruptive exercise, and it is still what many sites do.
Stock types and special stock
Quantity alone does not tell you whether stock can be used, and that is what stock types are for.
Unrestricted stock is available for anything. Quality inspection stock physically exists and cannot be issued until quality releases it, which is what a goods receipt into inspection produces when quality management is active for that material. Blocked stock is present and deliberately unavailable, usually because it is damaged or under investigation. In transit covers stock that has left one plant and not yet arrived at another.
Availability checks read these, which is why a plant can show a healthy total and still fail to confirm an order. The first question on any stock shortage is not how much is there but how much is unrestricted.
Special stock sits alongside all of that and belongs to somebody other than the plant that holds it. Vendor consignment stock is in your warehouse and remains the vendor's until consumed. Customer consignment is yours until the customer uses it. Subcontracting stock is at the vendor and still yours. Project stock is reserved to a work breakdown structure and cannot be taken for anything else.
Each has its own indicator and its own line in the stock overview, and the common mistake is
reading the total in MMBE without noticing which column the quantity is sitting in. See
the purchase requisition for where replenishment starts when the
unrestricted figure really is too low.
Common pitfalls
- Wrong movement type, incorrect stock/value.
- Valuation method confusion (standard vs moving average).
- Physical inventory not reconciled, stock drift.
- Correcting a wrong movement with another wrong movement. Reverse with the paired reversal type, then post correctly, so the document trail reads honestly.
- Negative stock switched on to get through go-live and never switched off.
- Counting without blocking movements. A count taken while goods are still moving produces a difference that is not a difference.
What changed in S/4HANA
Material documents moved into MATDOC, replacing the older header and item pair, and
aggregate stock tables became views computed on the fly rather than stored totals. That removed a
long-standing source of locking on high volume materials. Any custom report that read the old tables
directly needs rewriting, which is one of the more common findings in a conversion assessment.
Where this goes next
Posting a movement is straightforward, and configuring the account determination that decides where its value lands is the part you do in the course.
The habit worth taking away: before answering any stock question, look at the stock type column rather than the total, and check whether the movement you are about to post is valuated. Those two checks account for most of the confusion inventory generates.