MB1B — MB1B Transfer Posting Between Plants and Storage Locations
MB1B is the transaction for transfer postings: moving stock between plants, storage locations, or stock categories without going through a purchase order or sales order. It covers a wide range of movement types (301, 311, 321, 411, and others) under one screen, which is why the movement type chosen, not the transaction itself, determines the accounting and stock behavior.
This page covers MB1B, the transfer posting transaction used for plant-to-plant stock moves, storage-location transfers, and stock category changes such as releasing quality inspection stock. It focuses on the movement-type selection errors and account determination surprises that account for most support tickets against this transaction, and how to trace a posting back through MSEG once it has gone wrong.
Reviewed by an ERPClimb SAP consultant on 15 Sept 2026· 1,194 words
Purpose
MB1B posts a transfer of material stock that is not tied to a purchase order or sales order. It is a single-transaction wrapper around a large family of movement types: plant-to-plant transfer (301), storage-location-to-storage-location transfer (311), stock category change out of quality inspection (321), release from GR blocked stock (411), and several others. The structural fact that explains most confusion is that MB1B does not know or enforce which movement type is 'correct' for a given business intent; the user selects the movement type manually, and the system posts whatever accounting and stock consequences that movement type carries. Two very different transfers can be entered on the identical MB1B screen and produce completely different GL postings, simply because a different four-digit movement type was typed into one field.
When it is used
MB1B is reached for when stock needs to move somewhere a purchase order or sales order process does not cover: rebalancing stock between plants for production, moving material between storage locations within a plant, releasing quality inspection stock to unrestricted use, or clearing GR blocked stock after inspection. It sits outside the standard procure-to-pay document chain, so it does not appear in purchase order history and is not settled through invoice verification. In S/4HANA the equivalent functional coverage exists in MIGO with transaction 'Transfer Posting' selected, and in the Fiori 'Post Goods Movement' app, both of which use the same movement types underneath. Consultants still use MB1B directly for mass entry, for movement types not well supported in the Fiori tile layout, or when working a batch-input or LSMW-driven mass transfer.
How to use it in practice
- Determine the business intent first: plant change, storage location change, or stock category change, and look up the movement type that matches it before opening the transaction.
- Open MB1B and enter the movement type, plant, and storage location for the sending side.
- Enter the receiving plant and/or storage location; for cross-plant moves these fields sit on a second tab.
- Enter material, quantity, and batch (if batch managed) on the item line.
- Check the 'via stock transfer' or two-step indicator on the movement type before posting; some movement types (351/352) post the material into transit and require a second confirmation posting rather than completing in one step.
- Review the item list for valuation and account assignment warnings before saving.
- Save and note the material document number for tracing.
Key data objects
- MKPF - material document header: document number, posting date, document date, entering user.
- MSEG - material document line items: movement type, plant, storage location, quantity, batch, special stock indicator, and the moving average or standard price used for valuation.
- MARD - plant/storage location stock quantities updated by the posting.
- MCHB - batch stock quantities, updated when the material is batch managed.
- BKPF/BSEG - accounting document created when the movement type is value-relevant, carrying the GL postings driven by account determination (OBYC).
- MBEW - material valuation record, read to determine price and updated when the movement changes valuated stock.
How to prove it in the data
Pull MSEG filtered on BWART for the relevant movement types (301, 311, 321, 411, 351/352) and on MATNR and WERKS for the material and plant in question. Join to MKPF on MBLNR and MJAHR to get posting date and user. Compare WERKS and LGORT on the sending line against the receiving line to confirm the transfer actually moved stock where it was supposed to. If a value discrepancy is reported, take the same MBLNR/MJAHR pair into BKPF/BSEG to see which GL accounts were hit and compare the amount to the valuation in MBEW at the time of posting.
ECC vs S/4HANA
MB1B still functions in S/4HANA as a compatible transaction, but the underlying data model has changed: MKPF and MSEG are compatibility views over the consolidated material document table, and the accounting effects are reflected directly in the universal journal rather than a separate FI document in the classic sense. SAP steers new builds toward MIGO or the Fiori 'Post Goods Movement' app for the same movement types. Reporting and joins written against MSEG in ECC generally still work, but consultants should be aware the physical storage has moved.
Common pitfalls and how to diagnose them
- Wrong movement type selected: the single most common error. A user posts 311 (storage-location transfer) when the intent was 301 (plant transfer), or vice versa, and the material lands in the wrong plant's stock. Diagnose by comparing the BWART actually used in MSEG against the movement type the business process document says should have been used.
- Two-step transfer left incomplete: movement types like 351/352 post stock into transit and require a second, separate posting to bring it into the receiving plant. If stock appears to have vanished from the sending plant but never arrived at the receiving plant, check for an open transit posting rather than assuming the document is wrong.
- Account determination differences between plants: when the sending and receiving plant have different valuation areas or valuation classes, MB1B can trigger unexpected price-difference postings. Diagnose in BSEG for a price difference account posted alongside the stock account, and check OBYC configuration for the valuation classes involved before assuming the posting is an error.
- Batch or special stock mismatch: transferring a batch-managed material into a plant where the batch master is not extended, or transferring sales-order or project stock without the correct special stock indicator, causes the posting to fail or to land in the wrong stock segment. Check MCHB and the special stock indicator on the MSEG line.
- Reversal handled the wrong way: manually posting the opposite movement type instead of using a proper document reversal leaves an inconsistent audit trail and can double-count in reporting. Use the dedicated cancellation route, and confirm in MKPF that the storno flag ties the reversal document back to the original.
Whose problem this is
Functional MM issue in almost every case: movement type selection, stock category logic, and batch handling belong to the MM consultant. Account determination discrepancies get handed to FI/CO for OBYC review. Basis involvement is rare and limited to authorization objects for movement types or plants. A good handover includes the material document number, the movement type used, and whether the posting was one-step or two-step.
Related SAP objects
Reviewed pages this object connects to in the ERPClimb knowledge graph.
Source: ERPClimb — https://erpclimb.com/sap-tcodes/mb1bERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.