If you are new to MM, pair this with our complete SAP MM tables list to see exactly where each transaction writes its data (EKKO/EKPO for purchasing, MSEG/MKPF for goods movements).
Purchasing TCodes
Purchasing covers purchase requisitions, RFQs, quotations, purchase orders, and outline agreements.
Purchase Requisitions
| TCode | Description |
|---|---|
| ME51N | Create purchase requisition |
| ME52N | Change purchase requisition |
| ME53N | Display purchase requisition |
| ME54 | Release purchase requisition (individual approval) |
| ME55 | Collective release of purchase requisitions |
Requests for Quotation and Quotations
| TCode | Description |
|---|---|
| ME41 | Create request for quotation (RFQ) |
| ME42 | Change request for quotation |
| ME43 | Display request for quotation |
| ME47 | Create quotation from vendor |
| ME48 | Display quotation |
| ME49 | Price comparison list for quotations |
Purchase Orders
| TCode | Description |
|---|---|
| ME21N | Create purchase order |
| ME22N | Change purchase order |
| ME23N | Display purchase order |
| ME28 | Release purchase order (individual) |
| ME29N | Release purchase order |
| ME2N | Purchase orders by PO number (reporting) |
| ME2M | Purchase orders by material (reporting) |
| ME2L | Purchase orders by vendor (reporting) |
| ME2J | Purchase orders by project (reporting) |
Outline Agreements
| TCode | Description |
|---|---|
| ME31K | Create contract |
| ME32K | Change contract |
| ME33K | Display contract |
| ME31L | Create scheduling agreement |
| ME32L | Change scheduling agreement |
| ME33L | Display scheduling agreement |
Purchase Info Records
| TCode | Description |
|---|---|
| ME11 | Create purchasing info record |
| ME12 | Change purchasing info record |
| ME13 | Display purchasing info record |
| ME1M | Info records per material (reporting) |
Inventory Management TCodes
Goods movements — receipts, issues, transfer postings — are the heart of inventory management.
| TCode | Description |
|---|---|
| MIGO | Goods movement (receipt, issue, transfer posting, display) — the single most-used MM transaction |
| MB1A | Goods issue |
| MB1B | Transfer posting |
| MB1C | Other goods receipts |
| MBST | Cancel material document |
| MB51 | Material document list (reporting) |
| MB52 | Display warehouse stocks of material |
| MMBE | Stock overview per material, plant, and storage location |
| MB59 | Material document list for batch (reporting) |
Tip: MIGO replaced the older MB01/MB02/MB03/MB04 series. In interviews, say you use MIGO for all goods movements — it signals current knowledge.
Logistics Invoice Verification TCodes
| TCode | Description |
|---|---|
| MIRO | Enter incoming invoice (vendor invoice posting) |
| MIR4 | Display invoice document |
| MIR6 | Invoice overview (reporting) |
| MR8M | Cancel invoice document |
MIRO is where the vendor invoice is matched against the purchase order and goods receipt — the classic three-way match (PO → GR → IR) that every MM consultant must understand.
Master Data TCodes
Material Master
| TCode | Description |
|---|---|
| MM01 | Create material master |
| MM02 | Change material master |
| MM03 | Display material master |
| MM60 | Material list (reporting) |
Vendor Master
| TCode | Description |
|---|---|
| XK01 | Create vendor (central) |
| XK02 | Change vendor (central) |
| XK03 | Display vendor (central) |
| MK01 | Create vendor: purchasing view |
| MK02 | Change vendor: purchasing view |
| FK01 | Create vendor: accounting view |
Note for S/4HANA: vendors are maintained as Business Partners (transaction BP). The classic XK01/MK01/FK01 transactions may behave differently or be unavailable in newer S/4HANA versions depending on your system’s configuration.
MRP and Planning TCodes
| TCode | Description |
|---|---|
| MD01 | MRP — total planning (online) |
| MD02 | MRP — single-item, multi-level planning |
| MD03 | MRP — single-item, single-level planning |
| MD04 | Stock/requirements list (the key MRP evaluation transaction) |
| MD05 | Display MRP list |
MD04 is the transaction MRP controllers live in — it shows stock, planned receipts, and requirements for a material/plant combination.
Physical Inventory TCodes
| TCode | Description |
|---|---|
| MI01 | Create physical inventory document |
| MI02 | Change physical inventory document |
| MI03 | Display physical inventory document |
| MI04 | Enter inventory count |
| MI07 | Post inventory differences |
How to Remember MM TCodes
A useful pattern: in MM, 1 = create, 2 = change, 3 = display is common (ME21N/ME22N/ME23N, MM01/MM02/MM03, XK01/XK02/XK03). Reporting transactions often end in letters like M (by material), L (by vendor), or N (by document number) — ME2M, ME2L, ME2N.
Procure-to-Pay Walkthrough: TCodes in Sequence
Here is how the TCodes above fit into one end-to-end procurement cycle:
- ME51N — a department creates a purchase requisition for 100 laptops.
- ME54/ME55 — the manager releases the requisition.
- ME41 — purchasing sends requests for quotation to three vendors.
- ME47 — vendor quotations are entered; ME49 compares prices.
- ME21N — the winning vendor gets the purchase order; ME29N releases it.
- MIGO (movement 101) — goods receipt posts when laptops arrive; stock increases.
- MIRO — the vendor invoice is entered and matched against PO and GR.
- F110 — payment is proposed and run through automatic payment.
Follow this chain in an interview and you demonstrate process knowledge, not just memorized codes.
Tips for Cracking MM TCode Interviews
Interviewers rarely ask for bare lists — they ask scenario questions. Prepare these:
- “A PO was created with the wrong price. How do you fix it?” — ME22N to change the PO before goods receipt; after GR/IR, price differences post automatically and you explain the variance.
- “How do you find all POs for a material?” — ME2M (POs by material); for a vendor, ME2L; for a PO number, ME2N.
- “Goods arrived but the PO is wrong. What do you do?” — Consult with the purchasing team to correct the PO in ME22N or reverse the goods receipt with MBST before fixing the invoice variance in MIRO.
- “Where do you check stock before promising a customer?” — MMBE or MB52, and in SD the ATP check reads the same stock data.
Always connect the TCode to the business scenario and the tables it writes (EKKO/EKPO, MSEG/MKPF) — that is what separates consultants from memorizers.
Frequently Asked Questions
Q1. What is the most important SAP MM TCode?
MIGO — it handles goods receipts, goods issues, transfer postings, and display of material documents in one transaction. ME21N (create purchase order) and MIRO (invoice verification) are close behind.
Q2. What is the difference between ME21N, ME22N, and ME23N?
ME21N creates a purchase order, ME22N changes it, and ME23N displays it. This create/change/display pattern (1/2/3) repeats across MM master data and documents.
Q3. Which TCode is used for goods receipt in SAP MM?
MIGO with movement type 101 is the standard transaction for goods receipts. The goods receipt posts a material document (MSEG/MKPF) and, for valuated materials, an accounting document.
Q4. What TCodes are used for vendor master data?
XK01/XK02/XK03 (central), MK01/MK02 (purchasing view), and FK01 (accounting view) in ECC. In S/4HANA, vendors are maintained via Business Partner (BP).
Q5. Which TCode shows stock for a material?
MB52 shows warehouse stocks of a material, and MMBE gives the stock overview per plant and storage location. MB51 lists the material documents behind the stock.
Q6. What is the TCode for invoice verification?
MIRO — enter incoming invoice. It performs the three-way match between purchase order, goods receipt, and vendor invoice.
Conclusion
These are the SAP MM TCodes that appear in daily consulting work and in interviews: ME21N/ME22N/ME23N and ME51N/ME52N/ME53N for purchasing, MIGO and MB52 for inventory, MIRO for invoicing, MM01/XK01 for master data, and MD04 for MRP. Learn what each does, which tables it writes to (see our SAP MM tables guide), and you will navigate any MM project with confidence. Bookmark this page and revisit it before interviews — quick revision of these codes the night before makes a real difference, especially for the tricky reporting transactions like ME2M, ME2L, and MB52.