๐ Quick Navigation
- PO Concepts & Lifecycle
- PO Document Types (NB, UB, FO, MK, WK)
- PO Header Fields (Top Section)
- PO Header Tabs (11 tabs)
- PO Item Overview Fields
- PO Item Detail Tabs (13 tabs)
- Item Categories (Standard, K, L, B, D, S, T)
- Account Assignment Categories (K, A, F, P, N, C, E, Q, M, X, U)
- Tax Codes in PO
- Pricing & Conditions
- Common Errors & Fixes (20+)
- PO-Related Configuration T-codes
- PO Database Tables
- T-Code Cheat Sheet
- Interview Q&A (25+)
- Pakistani Context Examples
๐ฏ Purchase Order โ Concepts & Lifecycle
๐ What is a Purchase Order?
Definition: A Purchase Order (PO) is a legally binding commercial document issued by the buyer to a vendor, committing to purchase specified goods/services at agreed prices, quantities, and delivery terms.
In SAP: PO is created via ME21N and stored in tables EKKO (header) + EKPO (items). Once saved, it's the legal source document for vendor billing.
PO Lifecycle in SAP
| Stage | T-Code | Status | Tables Updated | FI Impact |
|---|---|---|---|---|
| 1. Created (Saved) | ME21N | Open | EKKO, EKPO, EKET | None (commitment only) |
| 2. Released (Approved) | ME29N | Released | EKKO-FRGKE | None |
| 3. Sent to Vendor (Output) | ME9F | Printed/EDI sent | NAST | None |
| 4. Goods Received | MIGO (101) | Partial/Full delivery | MSEG, MKPF, MBEW | Inventory Dr / GR-IR Cr |
| 5. Invoice Received | MIRO | Invoiced | RBKP, RSEG, BKPF, BSEG | GR-IR Dr / Vendor Cr |
| 6. Payment Made | F-53 or F110 | Paid | BKPF, BSEG, BSAK | Vendor Dr / Bank Cr |
| 7. Closed | Auto | Final | EKKO-LOEKZ | None |
๐ PO Document Types โ When to Use Each
SAP ships with 11+ standard PO document types. Configured via OMEC. Each has its own number range, field selection, and item categories allowed.
NB Standard PO
Most common (~80% of POs). Used for stock procurement, services, consumables, capex โ anything bought from a vendor. Default if not specified.
Pakistani example: Mughal Steel iron ore order, Aisha Steel coal order, Lucky Cement HAWA purchase.
UB Stock Transport Order (Intra-Company)
Plant-to-plant transfer WITHIN same Company Code. No external vendor โ supplying plant is treated as "internal vendor." Free of cost (no AP posting).
Pakistani example: Steel scrap transferred from PK01 Karachi Factory to PK03 Karachi DC for distribution.
UB Stock Transport Order (Cross-CC)
Stock transfer across Company Codes (different legal entities). Uses delivery + billing (SD). Inter-company invoice generated.
Pakistani example: Finished goods from PSPK (Pakistan) to PSAE (UAE) for re-export.
FO Framework Order / Limit Order
Open value-based PO for recurring services or supplies. Vendor delivers/invoices over time until budget exhausted. No specific quantity or delivery date.
Pakistani example: Annual maintenance contract (AMC) with TCS Logistics, security services from a contractor.
MK Quantity Contract
Outline Agreement โ commits to buying X tons of material over Y months at fixed price. Released via individual call-off POs (RV doc type).
Pakistani example: 1000-ton iron ore contract with Mughal Steel for 12 months @ 250,000 PKR/ton.
WK Value Contract
Similar to MK but committed by VALUE not quantity. Useful when prices fluctuate but budget is fixed.
Pakistani example: 50-crore PKR steel scrap contract โ buy whatever you can until value exhausted.
LP Scheduling Agreement (with release docs)
Long-term agreement with periodic delivery schedules. Vendor delivers per agreed schedule. Each call-off generates a "release order" doc.
Pakistani example: Monthly cement delivery from Lucky Cement per fixed schedule.
LPA Scheduling Agreement (without release docs)
Same as LP but no separate release docs โ schedule lines themselves are the calls.
Use case: Simpler scheduling. Less audit trail.
RV Outline Agreement Release Order
The actual PO created against a contract (MK/WK). References the contract โ counts against target qty/value.
๐ง Document Type Configuration (OMEC)
| Setting | Where | Purpose |
|---|---|---|
| Doc Type code (4 chars) | OMEC header | Unique identifier |
| Number Range | OMEC + SNRO | Internal/external range, range # |
| Field Selection Key | OMEB | Which fields are mandatory/optional/hidden |
| Item Categories Allowed | OMEC item config | K (consignment), L (subcon), S (third-party), etc. |
| Release Strategy | SPRO โ Release Procedure | Required approval workflow |
| Output Determination | NACE | How PO is sent to vendor (print/email/EDI) |
๐ PO Header Fields โ Top Section (Above Tabs)
These appear at the very top of ME21N screen, above all tabs. Mandatory unless noted.
Document Type EKKO-BSART MANDATORY
Purpose: Defines PO type (NB/UB/FO/MK/etc.). Drives number range, field selection, item categories allowed, release strategy.
How to fill: Defaults to NB (Standard). Override via dropdown.
Where stored: EKKO-BSART
Changeable after save: No (changes require recreation).
Supplier (Vendor) EKKO-LIFNR MANDATORY
Purpose: The vendor you're buying from. Pulls vendor master data (address, payment terms, currency, incoterms).
How to fill: Enter vendor number (e.g., MUGHAL21) or F4 to search.
Validation: Vendor must be (a) created via BP, (b) extended to the Purch Org (LFM1), (c) not blocked.
Changeable after save: No (would change entire commitment context).
Doc Date EKKO-BEDAT AUTO
Purpose: The date the PO was created. Used for reporting and aging.
How to fill: Defaults to today. Editable but rarely changed.
Difference from Posting Date: Doc Date = when PO created. Posting Date = when financial impact happens (typically at MIGO/MIRO).
Purchasing Organization EKKO-EKORG MANDATORY
Purpose: The legal/organizational entity that negotiates with the vendor and owns the PO.
How to fill: Auto-fills from Plant (via OMKI) OR Personal Settings default OR enter manually.
Validation: Must be assigned to the Plant (OX17) AND to the vendor (LFM1).
Where: Org. Data tab โ auto-fills to header.
Purchasing Group EKKO-EKGRP MANDATORY
Purpose: The team/buyer responsible for this PO. Used for workload assignment and reporting.
How to fill: Auto-defaults from material master (Purchasing view) OR Personal Settings OR enter manually.
Examples (Pakistani): RMT (Raw Materials Trading), PKG (Packaging), MRO (Maintenance/Repair/Ops), ITS (IT & Services), SRV (Services), CPX (Capex), URG (Urgent).
Company Code EKKO-BUKRS AUTO
Purpose: The legal financial entity for accounting impact. Determines G/L postings at MIGO/MIRO.
How to fill: Auto-derived from Purchasing Organization (via OX01 assignment).
Where stored: EKKO-BUKRS
Note: If Purch Org is cross-company (no OX01 assignment), CC determined per item from Plant's CC (OX18).
๐ PO Header Tabs โ All 11 Tabs Explained
After saving header, ME21N shows multiple tabs. Each tab groups related header-level fields.
๐ Delivery/Invoice Tab
Payment, currency, exchange rate, GR/IV behavior.
| Field | Code | Required? | Source | Purpose |
|---|---|---|---|---|
| Payment Terms | EKKO-ZTERM | Required | Vendor LFM1 | When invoice due + cash discount. e.g., 0003 = 14d 2%/30d net |
| Payment in (days) | EKKO-ZBD1T | Auto | From ZTERM | Discount tier 1 days |
| Currency | EKKO-WAERS | Required | Vendor LFM1 | Order currency (PKR, USD, AED) |
| Exchange Rate | EKKO-WKURS | Auto if foreign | OB08 (daily rates) | Conversion to CC currency |
| Fixed Exch.Rate | EKKO-KUFIX | Optional | Manual | If checked โ freeze the rate |
| GR Message | EKPO-WEBRE | Optional | Manual | Send confirmation to vendor at GR |
| Goods Receipt | EKPO-WEPOS | Required | Doc type config | Is GR required? (tick if stock material) |
| Invoice Receipt | EKPO-REPOS | Required | Doc type config | Is IR required? |
| GR-Based IV | EKPO-WEBRE | Optional | Vendor master | Invoice based on GR qty (recommended) |
๐ฐ Conditions Tab (Header Level)
Header-level pricing conditions (freight, discounts, taxes that apply to whole PO).
| Field | Purpose |
|---|---|
| Pricing Procedure | Determined via M/06 โ calc schema (e.g., RM0000) |
| Net Value (Header) | Sum of all item values + header conditions |
| Header Freight | If freight applies to whole PO (e.g., FRC1 freight condition) |
| Header Discounts | Cross-item discounts (e.g., 5% for order above 1 cr) |
๐ Texts Tab
Free-text fields for PO notes, terms, special instructions.
| Text ID | Purpose |
|---|---|
| F01 Header Text | General notes โ printed on PO output |
| F02 Header Note | Internal note (not printed) |
| F03 Pricing Type | Pricing instructions |
| F04 Terms of Delivery | Delivery instructions |
| F05 Terms of Payment | Payment instructions (e.g., LC details) |
๐ Address Tab
Delivery address for the PO. Defaults to plant address.
Override use case: Drop-ship to customer site (not plant), or to specific project site (construction).
๐ Communication Tab
Phone, email, fax for vendor contact during this PO. Inherits from vendor master.
๐ฅ Partners Tab
Defines who plays which role for THIS PO. Examples:
| Partner Function | Purpose |
|---|---|
| LF โ Supplier | Who you order from (main vendor) |
| BA โ Ordering Address | Where to send PO (e.g., regional office) |
| RS โ Invoice Issuer | Who sends invoice (may differ from goods supplier) |
| WL โ Goods Supplier | Who actually ships (sub-supplier) |
| ZP โ Forwarding Agent | Logistics handler |
๐ Additional Data Tab
Custom Z-fields, supplementary info, attachments, references.
๐ข Org Data Tab
Purchasing Organization, Purchasing Group, Company Code โ these auto-fill but can be reviewed here.
๐ Status Tab
Shows release status, document statistics, processing status.
| Field | Meaning |
|---|---|
| Released? | Yes/No โ based on release strategy |
| Ordered Value | Total PO value |
| Statistics: Delivered | How much GR'd so far |
| Statistics: Invoiced | How much MIRO'd so far |
๐ณ Payment Processing Tab
House Bank, Payment Method, Payment Block.
| Field | Purpose |
|---|---|
| House Bank | Which bank account to pay from (HBL, MCB, UBL) |
| Payment Method | How to pay (T=Transfer, C=Cheque, B=Bank, E=Electronic) |
| Payment Block | Block payment until released (e.g., quality hold) |
๐ข Incoterms Tab
International commercial terms โ who bears freight/risk/customs.
| Code | Meaning | Pakistani Use |
|---|---|---|
| EXW | Ex Works โ buyer picks up | Rare for imports |
| FOB | Free On Board โ vendor ships to port | Standard for local steel |
| CFR | Cost & Freight โ vendor pays shipping | Common for imports |
| CIF | Cost, Insurance, Freight โ full vendor responsibility | Premium imports |
| DDP | Delivered Duty Paid โ door delivery | Convenience purchases |
๐ PO Item Overview Fields โ The Item Table
Each PO has one or more items (lines). The item table shows multiple fields per row.
| Column | Code | Required? | Purpose |
|---|---|---|---|
| S (Selected) | โ | Auto | Selection checkbox |
| Item Number (Itm) | EKPO-EBELP | Auto | Auto-incrementing (10, 20, 30...) |
| A (Acct Asgn Cat) | EKPO-KNTTP | Conditional | K, A, F, P, etc. (blank = inventory) |
| I (Item Category) | EKPO-PSTYP | Conditional | blank=Standard, K, L, B, D, S, T |
| Material | EKPO-MATNR | Conditional | Material number (if stock item) |
| Short Text | EKPO-TXZ01 | Required | Description (auto-fills from material) |
| PO Quantity | EKPO-MENGE | Required | Quantity to buy |
| OUn (Order Unit) | EKPO-MEINS | Required | Unit (TO, KG, PC, M) |
| C (Compl Goods) | EKPO-ELIKZ | Optional | "Delivery completed" indicator |
| Deliv. Date | EKET-EINDT | Required | Expected delivery date |
| Net Price | EKPO-NETPR | Required | Price per unit (defaults from Info Record) |
| Curr. (Currency) | EKKO-WAERS | Auto | From header |
| Per | EKPO-PEINH | Required | Price unit (e.g., 1 = per 1 ton) |
| OPU (Order Price Unit) | EKPO-BPRME | Auto | Pricing unit (usually = OUn) |
| Matl Group | EKPO-MATKL | Auto | From material master |
| Plant | EKPO-WERKS | Required | Receiving plant |
| Stor. Location | EKPO-LGORT | Conditional | SLoc for stock receipt |
| Tax Code | EKPO-MWSKZ | Conditional | I0, V0, V1 (input tax) |
| Purchase Requisition | EKPO-BANFN | Optional | Link to PR if PO from PR |
| PR Item | EKPO-BNFPO | Auto | PR item # linked |
| Tracking Number | EKPO-BEDNR | Optional | External tracking ref |
| Info Record | EKPO-INFNR | Auto | Linked info record |
| Returns | EKPO-RETPO | Optional | Mark as returns PO |
| Free Indicator | EKPO-UMSON | Optional | Free goods (no payment) |
๐๏ธ PO Item Detail Tabs โ All 13 Tabs Explained
Click an item row โ bottom area shows multiple tabs with deeper item-level fields.
1๏ธโฃ Material Data Tab
Material identification fields, manufacturer info.
| Field | Purpose |
|---|---|
| Material | Material number (RM-IRON-01) |
| Material Description | Auto from MARA |
| Manufacturer Part Number (MPN) | Vendor's catalog number |
| Vendor Material Number | How vendor codes the material |
| Revision Level | For engineering change tracking |
2๏ธโฃ Quantities/Dates Tab
All quantities, prices, schedule lines.
| Field | Purpose |
|---|---|
| PO Quantity | Order quantity |
| Delivery Date | Expected delivery |
| Statistics: Delivered Qty | How much GR'd so far |
| Statistics: Open Qty | Quantity yet to receive |
| Schedule Lines | Multiple delivery dates (partial deliveries) |
3๏ธโฃ Valuation Tab
Material valuation context โ price control, valuation class.
| Field | Purpose |
|---|---|
| Price Control | V (Moving Avg) or S (Standard) โ from material master |
| Valuation Class | e.g., 3000 (Raw Materials) |
| Moving Avg Price | Current MAP from MBEW |
| Standard Price | Current SP from MBEW |
4๏ธโฃ Conditions Tab (Item Level)
Pricing breakdown for this item. The big one. Shows gross price, discounts, freight, taxes.
| Condition Type | Purpose |
|---|---|
| PBXX / P000 | Gross price (base price) |
| RA00 / RA01 | % discount |
| RB00 / RB01 | Absolute discount |
| ZB00 / ZB01 | Surcharge |
| FRA1 / FRA2 / FRB1 | Freight (% / per unit / absolute) |
| JEXC / JEXT | Customs duty (for imports) |
| NAVS | Non-deductible tax |
5๏ธโฃ Account Assignment Tab
Critical for non-stock items. Where the financial impact goes (cost center, asset, project).
Fields visible depend on Account Assignment Category (see below).
| If Acct Asgn Cat is... | Required Fields |
|---|---|
K Cost Center | G/L Account + Cost Center |
A Asset | G/L Account + Asset Number + Sub-number |
F Internal Order | G/L Account + Order Number |
P Project (WBS) | G/L Account + WBS Element |
N Network | G/L Account + Network + Activity |
6๏ธโฃ Source of Supply Tab
Where the source determination logic shows. Fixed Vendor, Info Record, Source List entries, Outline Agreements.
| Field | Purpose |
|---|---|
| Fixed Vendor | Locked-in vendor for this PR/PO |
| Info Record | Active info record (price source) |
| Agreement / Item | Reference outline agreement if applicable |
| Source List Active | Indicates if Source List required |
| Assign Source | Button to run source determination |
7๏ธโฃ Confirmations Tab
Vendor confirmations โ order acknowledgment, shipping notification, delivery confirmation.
| Confirmation Type | Purpose |
|---|---|
| AB Order Acknowledgment | Vendor confirms accepting PO |
| LA Shipping Notification | Vendor confirms ship date + qty |
| LB Rough Goods Receipt | Pre-receipt advice |
| Acknowledge. Required | Checkbox โ block if not confirmed |
8๏ธโฃ Texts Tab (Item Level)
Free-text fields specific to this item.
9๏ธโฃ Delivery Address Tab
Override default plant address with specific delivery address (drop-ship, project site).
๐ Notes Tab
Long-text item notes.
1๏ธโฃ1๏ธโฃ Status Tab
Item-specific status (delivery, invoice, returns, blocked).
1๏ธโฃ2๏ธโฃ Purchase Order History Tab
Only after MIGO/MIRO posted. Shows all goods movements and invoices linked to this item.
| Doc Type | Meaning |
|---|---|
| WE | Goods Receipt |
| RE-L | Invoice Receipt |
| WE-L | Reversed GR |
| RE | Final Invoice |
1๏ธโฃ3๏ธโฃ Customer Data Tab (Third-Party Only)
For third-party drop-ship (Item Cat S). Customer info from Sales Order.
๐ท๏ธ Item Categories โ When to Use Which
Item Category controls procurement type. Configured via OMEC.
| Code | Name | Stock Update? | Material Required? | GR Required? | IR Required? | Use Case |
|---|---|---|---|---|---|---|
| (blank) | Standard | โ Yes | โ Yes | โ Yes | โ Yes | Standard stock procurement (most POs) |
K | Consignment | โ ๏ธ Special | โ Yes | โ Yes | โ No (MRKO settles) | Vendor owns stock until consumed |
L | Subcontracting | โ Yes (FG) | โ Yes | โ Yes | โ Yes | Send components, receive finished goods |
B | Limit | โ No | โ No | โ No (or limit) | โ Yes (within limit) | Framework orders (FO doc type) |
D | Service | โ No | โ No | โ ๏ธ ML81N entry sheet | โ Yes | Service procurement |
S | Third-Party | โ No | โ Yes | โ ๏ธ Optional | โ Yes | Drop-ship from vendor to customer |
T | Text | โ No | โ No | โ No | โ No | Pure text line โ for notes/instructions |
P | Pipeline | โ ๏ธ Special | โ Yes | โ No | โ No (MRKO) | Pipeline materials (gas/water) |
U | Stock Transfer | โ Yes | โ Yes | โ Yes | โ No (intra) | STO (UB doc type) |
๐ก Item Category ร Doc Type matrix
Not all item categories are allowed in all doc types. Example:
- NB (Standard PO) allows: blank, K, L, B, D, S, T
- UB (STO) allows only: U
- FO (Framework) allows only: B, D
- MK (Quantity Contract) allows: blank, K, L, M, W
Configured in OMEC โ Item Categories per Document Type.
๐ผ Account Assignment Categories โ Where Money Goes
For items NOT going to inventory, Account Assignment Category determines the cost object. Configured via SPRO โ MM โ Purchasing โ Account Assignment.
| Code | Name | Required Fields | GR Effect | Use Case |
|---|---|---|---|---|
| (blank) | Inventory | None (auto from material) | Stock โ, G/L from OBYC | Standard stock procurement |
A | Asset | Asset # + Sub# | Direct to asset (capitalized) | Machinery, vehicles, IT equipment |
F | Internal Order | Order # | Direct to CO order | Marketing campaigns, R&D |
K | Cost Center | Cost Center + G/L | Consumption to cost center | Office supplies, MRO, services |
N | Network | Network + Activity | Direct to PS network | Project network costs |
P | Project (WBS) | WBS Element | Direct to project WBS | Construction projects, IT implementations |
C | Sales Order | Sales Order # | For SO consumption | MTO production materials |
E | Sales Order w/ Stock | SO # + Stock segment | Stock for SO use | Customer-specific MTO stock |
Q | Project Stock | WBS Element | Stock for project | Project-segregated inventory |
M | Indiv w/o KD-CGS | Sales Order # | Customer-individual | Highly customized MTO |
U | Unknown | None (TBD later) | Hold until assigned | Open-ended POs (FO) |
X | Multiple | List of multiple assignments | Distribute across cost objects | Cost split (e.g., 50% A, 50% B) |
T | Returns to Vendor | None special | Returns posting | Quality reject returns |
๐ต๐ฐ Pakistani Examples
- Office supplies (stationery): Acct Cat =
K, Cost Center = Admin - New CNC machine for factory: Acct Cat =
A, Asset = AS-CNC-001 - Construction of new warehouse: Acct Cat =
P, WBS = WBS-WH-2026 - Marketing campaign for Eid: Acct Cat =
F, Internal Order = MKT-EID-2026 - Iron ore (stock): Acct Cat = blank (Inventory) โ material RM-IRON-01
๐ธ Tax Codes in PO
Tax Code drives input tax calculation in MIRO. Configured via FTXP.
| Code | Prefix Meaning | Purpose | Rate (Standard IDES) |
|---|---|---|---|
I0 | I = Input Tax | Zero-rated input tax (no tax) โ use for non-taxable purchases | 0% |
I1 | I = Input Tax | Standard input tax | varies by country |
V0 | V = Vendor / Output (in some configs) | Zero-rated | 0% |
V1 | V = Vendor / Output | Standard rate (varies โ 17% in Pak default IDES, 19% EU) | varies |
๐ต๐ฐ Pakistani Tax Codes (to configure via FTXP)
| Code | Purpose | Rate |
|---|---|---|
PIN0 | Pakistan Input Zero | 0% |
PIN1 | Pakistan General Sales Tax (input) | 17% |
PWHT | Pakistan Withholding Tax (input) | 1-5% |
PCST | Pakistan Sales Tax โ Sindh (provincial) | 13% |
PWHS | Withholding Sales Tax | 4.5% |
These need configuration in FTXP per company code. Most Pakistani projects implement these.
๐ต Pricing & Conditions in PO
Pricing Procedure Determination
SAP determines which pricing procedure (calc schema) to apply based on:
| Factor | Source |
|---|---|
| Schema Group: Vendor | Vendor master LFM1 |
| Schema Group: Purch Org | OMFR config |
| Calc Schema | Determined by combo via OMFO (Schema Determination) |
Standard Pricing Procedure: RM0000
Default for purchase procurement. Configured via M/08.
| Step | Cond Type | Purpose |
|---|---|---|
| 10 | PBXX / P000 | Gross Price |
| 20 | RA00 | Discount % from net |
| 30 | โ | Subtotal: Net Price |
| 40 | FRA1 | Freight % |
| 50 | FRB1 | Freight (Absolute) |
| 60 | FRC1 | Freight (per Unit) |
| 70 | โ | Subtotal: Net + Freight |
| 80 | NAVS | Non-deductible Tax |
| 90 | โ | Effective Price |
Where Net Price comes from (Priority Chain)
- Info Record (ME11) โ first priority, has master price for material+vendor+POrg
- Outline Agreement (contract) โ if PO references contract
- Last PO price โ if "Info Update" was unticked
- Manual entry โ if no above source
๐จ Common PO Errors & Fixes (25+ scenarios)
ME062 โ Account assignment mandatory for material
Cause: Material has no Accounting view OR Material Type "Value Update" not active in OMS2.
Fix: (1) MM02 โ Material โ Accounting 1 view โ fill Valuation Class + Price Control + Price. (2) OMS2 โ Material Type โ Quantity/Value Updating โ check Value Update for plant.
M8 215 โ Maintain tolerance limits for tolerance key PE (CoCode XXX)
Cause: Tolerance Key PE not configured for the Company Code (new CC issue).
Fix: SPRO โ MM โ Purchasing โ Purchase Order โ Set Tolerance Limits for Price Variance โ New Entries โ PE + CC + limits. (Don't use OMR6 โ PE not in its F4 list.)
M8 462 โ Maintain tolerance limits for PP
Cause: Invoice tolerance PP not configured.
Fix: OMR6 โ New Entries โ PP + CC + limits.
06 105 โ Plant XXXX not assigned to Purch Org YYYY
Cause: Missing OX17 assignment.
Fix: Run OX17, add Purch Org โ Plant row.
06 010 โ Vendor not extended to Purch Org
Cause: Vendor LFM1 (Purchasing data) missing for the Purch Org.
Fix: BP transaction โ switch role to "Vendor (Purchasing)" โ add Purch Org + currency + terms.
06 401 โ Source not allowed (Source List required)
Cause: Material has "Source List Required" flag ON but vendor not in source list.
Fix: (1) ME01 โ add vendor to source list, OR (2) MM02 โ Purchasing view โ untick "Source List".
06 424 โ No source of supply found
Cause: No valid source list entry covers PO delivery date.
Fix: ME01 โ check Valid From/To dates cover the PO date.
ME083 โ Net price is 0
Cause: No info record exists or net price not entered.
Fix: (1) ME11 โ create info record with price, OR (2) Manually enter price in PO item line.
06 207 โ Output determination not configured
Cause: NACE/MN04 not set up for PO type.
Fix: (1) NACE โ EF (Purchasing) โ maintain condition records. (2) Or ignore โ yellow warning, PO saves.
ME017 โ Reminder days defined in vendor master
Cause: Vendor master has reminder days set. Informational only.
Fix: Ignore (yellow warning). Vendor reminders will trigger via ME92F batch.
06 005 โ Realistic delivery date
Cause: Entered delivery date earlier than calculated (today + Planned Delivery Time + GR Processing).
Fix: (1) Ignore (warning only), OR (2) Adjust delivery date, OR (3) Reduce Planned Delivery Time in vendor LFM1.
06 116 โ Currency not maintained for vendor + Purch Org
Cause: Vendor LFM1 currency missing.
Fix: BP โ Vendor (Purchasing) โ set Order Currency.
06 121 โ Vendor blocked for Purchasing
Cause: Vendor has block flag set.
Fix: BP โ check Status/Block โ remove block. Or use different vendor.
M7 432 โ Posting period not open
Cause: MM period not open via OMSY (or FI via OB52).
Fix: OMSY โ set current period for the CC. OB52 โ check FI periods.
BU 134 โ BP can't be used as vendor in this Purch Org
Cause: CVI sync issue โ BP exists but LFM1 not created.
Fix: BP โ add Vendor (Purchasing) role โ Purch Org โ save (CVI auto-creates LFM1).
ME 083 โ Net price is zero
Cause: Info Record price is 0 or expired.
Fix: ME12 โ update Info Record price and validity dates.
00 055 โ Release strategy not found
Cause: Release strategy configured but classification missing.
Fix: SPRO โ Release Procedure for PO โ check Class/Characteristic config (CT04/CL02).
06 217 โ Net price varies by more than X%
Cause: Net Price varies beyond PE tolerance.
Fix: (1) Adjust price to within tolerance. (2) Or update tolerance limits in SPRO PO Price Variance config.
06 122 โ Material XXXX not maintained for plant YYYY
Cause: Material exists but no plant-specific view (MARC).
Fix: MM01 โ extend material โ select Purchasing + Plant Data/Storage views โ plant key โ save.
FA 766 โ Asset master record incomplete
Cause: Acct Cat A used but Asset master is incomplete.
Fix: AS02 โ complete the asset master record.
KI 235 โ Cost center not assigned to G/L account
Cause: Acct Cat K used with G/L that's not allowed for that cost center.
Fix: KS02 โ assign cost center to G/L โ OR use different G/L account.
M8 521 โ Tax code not entered
Cause: Tax Code mandatory but not entered.
Fix: Enter I0 (zero tax) or appropriate tax code in Invoice tab.
06 113 โ Net price not within tolerance to last PO
Cause: Price differs from last PO by more than tolerance.
Fix: Verify price is correct โ ignore warning or adjust to match.
M8 138 โ Account assignment differs from PO
Cause: MIRO invoice has different acct assignment than PO.
Fix: Match invoice to PO assignment OR change at MIRO level (if allowed).
06 110 โ Goods receipt-based invoice verification active
Cause: GR-Based IV ticked but no GR yet.
Fix: Post GR first via MIGO before MIRO.
โ๏ธ All PO-Related Configuration T-codes
| T-Code | Purpose | SPRO Path |
|---|---|---|
| OMEC | PO Document Types definition | MM โ Purchasing โ Purchase Order โ Define Document Types |
| OMEB | PO Field Selection per doc type | MM โ Purchasing โ Purchase Order โ Define Field Selection |
| SNRO | Number Ranges for documents | via OMEC linkage |
| OMR6 | Invoice tolerance limits (PP, BD, DQ, VP, etc.) | MM โ LIV โ Set Tolerance Limits |
| SPRO PO Tolerance | PO Price Variance tolerance (PE, SE) | MM โ Purchasing โ Purchase Order โ Set Tolerance Limits for Price Variance |
| OMC0 | GR tolerance limits (B1, B2, VP) | MM โ Inv Mgmt โ Goods Receipt โ Set Tolerance Limits |
| OMRM | Message control (Error โ Warning) | MM โ LIV โ Define System Messages |
| OMS2 | Material Type config (incl. value update) | Logistics General โ Material Master โ Material Types |
| OMSK | Valuation Class definition | FA โ Materials Mgmt โ Valuation |
| OBYC | Automatic Account Determination | MM โ Valuation and Account Assignment โ Account Determination |
| M/06 | Condition Types (pricing) | MM โ Purchasing โ Conditions โ Condition Types |
| M/08 | Calculation Schema (pricing procedure) | MM โ Purchasing โ Conditions โ Calculation Schema |
| OMFO | Schema Determination (vendor + purch org) | MM โ Purchasing โ Conditions โ Schema Determination |
| NACE | Output Determination (print/email PO) | Cross-Application โ NAST โ Output |
| MN04 | PO Output Condition Records | Logistics โ MM โ Master Data โ Messages โ PO โ MN04 |
| CT04 | Classification Characteristics (for release strategy) | Cross-Application โ Classification |
| CL02 | Classification Class | Cross-Application โ Classification |
| SPRO Release Procedure | Release strategy for PO | MM โ Purchasing โ Purchase Order โ Release Procedure |
| OMD9 | Special Procurement Keys | Production โ Master Data โ Special Procurement Types |
| OMKI | Standard Purch Org per Plant | Enterprise Structure โ Assignment โ MM โ Assign Standard Purch Org to Plant |
| OX17 | Assign Purch Org to Plant | Enterprise Structure โ Assignment โ MM |
| OX01 | Assign Purch Org to Company Code | Enterprise Structure โ Assignment โ MM |
| FTXP | Tax Codes | FI โ Global Settings โ Tax on Sales/Purchases |
๐๏ธ PO Database Tables
| Table | Content | Key Fields |
|---|---|---|
EKKO | PO Header | EBELN (PO #), BSART (Doc Type), LIFNR (Vendor), EKORG, EKGRP, BUKRS, WAERS |
EKPO | PO Items | EBELN, EBELP (Item), MATNR, MENGE, NETPR, WERKS, LGORT |
EKET | PO Delivery Schedule | EBELN, EBELP, EINDT (Delivery Date), MENGE |
EKPV | Shipping Data for PO | EBELN, KZAZU (Shipping) |
EKKN | Account Assignment per PO Item | EBELN, EBELP, KOSTL (Cost Ctr), ANLN1 (Asset), AUFNR (Order), PS_PSP_PNR (WBS) |
EKBE | PO History (GR, IR, etc.) | EBELN, EBELP, VGABE (Trans Type), BEWTP (Doc Type WE/RE) |
EKBES | PO History โ Tax | EBELN, EBELP, tax data |
EKBZ | PO History โ Charges | EBELN, EBELP, planned costs |
EKES | Vendor Confirmations | EBELN, EBELP, EBTYP (Conf Type) |
EKKI | Item-level Conditions | EBELN, EBELP, condition records |
KONV / KONP | Condition Values / Records | KNUMV (Condition Doc), KSCHL (Cond Type) |
EBAN | Purchase Requisitions (linked) | BANFN (PR #), referenced from EKPO-BANFN |
NAST | Output / Messages | OBJKY (PO #), KAPPL (EF for PO), KSCHL (Output Type) |
๐ฏ PO T-Code Cheat Sheet
Daily-Use Transactions
| T-Code | Purpose |
|---|---|
| ME21N | Create PO โญ |
| ME22N | Change PO โญ |
| ME23N | Display PO โญ |
| ME29N | Release/Approve PO |
| ME9F | Print/Output PO |
| ME54N | Release PR (precursor to PO) |
| ME57 | Assign and Process PR (convert to PO) |
| ME58 | Ordering from Assigned PRs |
| ME59N | Auto-create POs from PRs โญ |
PO Reporting
| T-Code | Purpose |
|---|---|
| ME2L | POs by Vendor |
| ME2M | POs by Material |
| ME2N | POs by PO Number |
| ME2K | POs by Account Assignment |
| ME2W | POs by Supplying Plant |
| ME80FN | General Analysis of Purch Documents |
| ME81N | Analysis of Order Values |
PO Document History
| T-Code | Purpose |
|---|---|
| ME23N | Display PO + history |
| ME92F | Monitor/Process Order Acknowledgments |
| MIR4 | Display Invoice |
| MIGO | Display Material Doc (GR linked to PO) |
๐ Interview-Ready Q&A (25+ Questions)
๐ต๐ฐ Pakistani Business Context Examples
Example 1: Mughal Steel Iron Ore Order
- Vendor: MUGHAL21 (Mughal Steel Industries Pvt Ltd, Karachi)
- Material: RM-IRON-01 (Iron Ore Lump Grade A 50-100mm)
- Doc Type: NB (Standard PO)
- Plant: PK01 (Karachi Factory)
- Purch Org: PKLO (Pakistan Local)
- Purch Group: RMT (Raw Materials Trading)
- Quantity: 50 tons
- Net Price: 250,000 PKR/ton
- Currency: PKR
- Incoterms: FOB Karachi
- Payment Terms: 0003 (14d 2%/30d net)
- Tax Code: I0 (no tax for now; later configure PIN1 for 17% GST)
Example 2: New CNC Machine for Production (Asset)
- Vendor: Foreign vendor (Japan)
- Material: ASSET-CNC-001 (capex item)
- Doc Type: NB
- Plant: PK01
- Acct Assignment Cat: A (Asset)
- Asset Number: 100001 (from AS01)
- Currency: USD
- Incoterms: CIF Karachi Port
- Payment Terms: LC60 (60 days LC)
- Customs Duty: planned as PO condition
Example 3: Office Supplies (Cost Center)
- Vendor: Local stationery shop
- Item: text only (no material master)
- Doc Type: NB
- Acct Assignment Cat: K (Cost Center)
- Cost Center: 1000 (Admin)
- G/L Account: 470000 (Office Supplies Expense)
- Currency: PKR
- Payment Terms: 0001 (Immediate)
Example 4: Subcontracting (Steel cutting)
- Vendor: Cutting service provider
- FG Material: SEMIFG-PLATE-CUT (cut steel plates)
- Component (sent): RM-PLATE-RAW (raw plates)
- Item Category: L (Subcontracting)
- BOM: required (CS01) โ defines RM-PLATE-RAW โ SEMIFG-PLATE-CUT
- Plant: PK01
- Movements: 541 (send RM), 543 (RM consumed), 101 (receive FG)
Example 5: Inter-Company STO (PSPK โ PSAE)
- Doc Type: NB (with vendor = receiving plant's customer master)
- Supplying Plant: PK01 (PSPK)
- Receiving Plant: AE01 (PSAE โ UAE)
- Material: FG-PIPE-001
- Inter-company invoice via SD (VF01)
- FI: Inter-company posting via OBYA
๐ Final Verification Checklist Before First PO
| Check | How to verify |
|---|---|
| Company Code exists | OX02 โ check CC |
| Plant created and assigned to CC | OX10 + OX18 |
| Purch Org created and assigned to Plant + CC | OX08 + OX17 + OX01 |
| Standard Purch Org for Plant | OMKI |
| Material exists with all views | MM03 โ check Basic, Plant, Storage, Purchasing, Accounting |
| Vendor (BP) exists with Purchasing role | BP โ vendor โ confirm Vendor (Purchasing) role for Purch Org |
| Info Record exists with price | ME13 โ check material+vendor+POrg |
| Source List (if required) | ME03 โ check material+plant |
| OBYC configured (BSX, WRX, GBB, PRD) | OBYC โ verify rules for valuation class |
| Tolerance Keys (PE, PP, BD, DQ) configured | SPRO PO Price Variance + OMR6 |
| MM Period open (OMSY) | OMSY โ check current period |
| FI Period open (OB52) | OB52 โ check current period |
| Tax Codes (I0, V0) exist | FTXP โ check |
๐ Sources: Verified against help.sap.com (S/4HANA) ยท learning.sap.com ยท saponlinetutorials.com ยท community.sap.com