Scenario 15 — Outline Agreements (Contracts & Scheduling Agreements)

TIER 5 · PROCESS CONTROL ★★★☆☆ ⏱️ ~2 hours ME31K (contract) → ME21N (release order) · ME31L (sch agr) → ME38 (sch lines)
← Previous
Scenario 14: Source Management
Next →
Scenario 16: Batch Management
⚠️ Not yet live-tested
This page is built from researched standard-SAP content and has not yet been executed end-to-end in our IDES. The T-codes, fields, and accounts follow SAP standard but may need small adjustments on your S/4HANA 2023 system — we'll confirm and correct them when you run this scenario live. Hit a snag? See the Troubleshooting Center.

📊 Business Case

An outline agreement is a long-term purchasing arrangement with a vendor — a commitment to buy a target quantity or value over a period at agreed terms, instead of negotiating every order from scratch. The two flavours are contracts (a price/quantity framework you call off against with release orders) and scheduling agreements (the delivery schedule is built into the agreement itself). Both lock pricing and commit volume, which protects you from spot-market volatility and cuts the paperwork on every shipment.

🕐 When to use it

Repeated buying of the same material from the same vendor over months: a yearly raw-material supply deal, or a steady JIT delivery cadence into production.

❓ Why it matters

It locks the price for the whole period and secures capacity. You're insulated from price swings, and each call-off auto-fills terms from the agreement — faster, consistent, and auditable against the committed volume.

👤 Who triggers it

Strategic purchasing negotiates and creates the agreement (ME31K / ME31L). Operational buyers then raise release orders (ME21N) or the schedule lines (ME38) drive deliveries automatically.

🔁 The key distinction

Contract = framework + separate release orders. Scheduling agreement = framework with the delivery schedule embedded (no separate PO per shipment). Contracts suit volume guarantees with flexible timing; scheduling agreements suit predictable JIT cadence.

💰 Financial Impact — The Easy-Money Example

This is a control scenario — the win is the cost it avoids. PakSteel locks 1000 TO of iron ore at PKR 250,000/TO for a year. Now imagine the spot price climbs mid-year. Here is the money story:

📜 Contract locked
PKR 250,000/TO
1000 TO committed for 12 months. Price fixed in the agreement, regardless of the market.
📈 Spot price jumps
Market → 290,000/TO
A spot buyer now pays PKR 40,000 more per TO. PakSteel still pays the locked 250,000.
💰 Saving banked
~PKR 40M avoided
40,000 × 1000 TO of volatility sidestepped — plus guaranteed supply when others are scrambling.

The big idea: a contract converts an unknown future price into a known one. The agreement doesn't move the P&L by itself — it's the release orders (or schedule lines) that drive the actual GR and invoice — but it caps your input cost and guarantees the volume, which is exactly the protection a steel mill needs against commodity swings.

💡 Lesson: Lock price + commit volume up front, then call off against it. You trade a little flexibility for price certainty and secured supply — avoiding spot-market volatility on a material you know you'll keep buying.

🇵🇰 The Business Story

PakSteel signs a 1-year contract with Mughal Steel for 1000 TO at PKR 250,000/TO. Throughout the year, they release smaller POs (release orders) against the contract — 100 TO this month, 80 TO next, etc. The contract guarantees price + capacity. Alternative: a Scheduling Agreement with the delivery schedule built-in (less paperwork per shipment).

🎯 What you'll learn — Contract vs Scheduling Agreement

AspectContract (ME31K)Scheduling Agreement (ME31L)
What it isLong-term price/qty agreementLong-term delivery schedule
Release Order needed?Yes (ME21N referencing contract)No — delivery schedule embeds releases
Document TypeMK (quantity) or WK (value)LP (with release docs) or LPA (without)
Use whenVolume guarantee + flexible schedulingJIT, predictable cadence
📦 Material needed — create first (just-in-time)

RM-IRON-01 (ROH, raw) — create steps. New to MM01? the why behind every field.

🔧 Step-by-Step

🔄 Contract Flow

15.1 — Create Quantity Contract · ME31K
  1. ME31K · Agreement Type MK (Quantity Contract) · Vendor MUGHAL21 (Mughal)
  2. Header: Validity From-To · Purch Org PKLO · Purch Group RMT
  3. Line: Material RM-IRON-01 · Target Qty 1000 TO · Net Price 250,000/TO · Plant PK01
  4. Save → Contract # (e.g., 4600000010)
15.2 — Create Release Order · ME21N referencing contract
  1. ME21N · Doc Type NB · Vendor MUGHAL21
  2. Document Overview ON → My Contracts → drag contract line
  3. Qty 100 TO (release portion) · system auto-fills price + plant from contract
  4. Save → Release PO # · Contract released qty updated (now 100/1000 consumed)

Track contract usage: ME33K → display contract → release qty visible.

🔄 Scheduling Agreement Flow

15.3 — Create Scheduling Agreement · ME31L
  1. ME31L · Agreement Type LP · Vendor
  2. Header validity · Line: Material · Target Qty 1000 TO · Price · Plant
  3. Save → SA # (e.g., 5500000010)
15.4 — Add Delivery Schedule · ME38
  1. ME38 · SA # · select line · Delivery Schedule tab
  2. Add rows: Date 15-Jan, Qty 100 · Date 15-Feb, Qty 100 · etc.
  3. Save

The system treats each schedule line as a "release" — GR/IV is done against the SA + schedule line directly.

✅ Verification

#T-codeCheck
1ME33KDisplay the contract → target qty 1000 TO and net price 250,000/TO are stored; released qty updates after each release order
2ME21NThe release PO auto-fills price + plant from the contract; you cannot exceed the target without a warning
3ME33LDisplay the scheduling agreement → header + line target qty present
4ME38Schedule lines (15-Jan, 15-Feb …) are saved against the SA line and drive GR/IV directly

🎓 Interview-Ready Answers

Q: What's the difference between a contract and a scheduling agreement?

A contract (ME31K) is a long-term price/quantity framework — you call it off with separate release orders (ME21N) whenever you need stock, so timing is flexible. A scheduling agreement (ME31L) embeds the delivery schedule in the agreement itself (ME38), so deliveries are driven by schedule lines with no separate PO per shipment — ideal for predictable JIT cadence.

Q: What's the difference between a quantity contract (MK) and a value contract (WK)?

An MK quantity contract commits to a target quantity (e.g. 1000 TO) — releases consume against that quantity. A WK value contract commits to a target value (a money cap, e.g. ₨50 crore) and is useful when you'll buy many different items from one vendor up to a spend limit rather than a single fixed quantity.

Q: How does a release order know the price?

When you create the release order in ME21N referencing the contract (via Document Overview → My Contracts), SAP copies the net price, plant, and conditions from the contract line. The buyer only enters the call-off quantity; the agreement guarantees the locked price, and the contract's released quantity is updated so you can track consumption (visible in ME33K).

Q: How does an outline agreement link to source determination?

You can reference the agreement in the source list (ME01 — see Scenario 14): set the Agreement number and item on the vendor's row. Then PRs/POs auto-pull that contract as the source, so call-offs consume the agreement automatically and invoice verification validates against its terms.

← Previous
Scenario 14: Source Management
Next →
Scenario 16: Batch Management