Now accepting guest editorial from SAP, Oracle, Workday and ServiceNow practitioners.Pitch a guide
The Sign-Off Table

Lesson 2 of 6

Purchase contracts and release orders

7 min

A purchase contract is a longer-term outline agreement with a supplier: Contoso commits to buy a total quantity or value over a period, at agreed prices and terms, and the supplier commits to supply. The contract itself does not trigger deliveries. Deliveries are triggered by release orders: ordinary purchase orders that reference the contract.

Quantity and value contracts

TopicQuantity contract (MK)Value contract (WK)
CommitmentTarget quantity per itemTarget value for the whole contract
Header total valueOptionalRequired
Consumption trackedPer item: quantity released to dateAt header: total release value
Typical itemsSpecific products with known volumeSpecific products or a material group
Contoso exampleHarbor Electric Parts: 7,200 rotors at $40.80, 2027Northpoint Office Supply: $60,000 of office and shop supplies, 2027
The two standard contract types.
The Sign-Off Table · thesignofftable.com/academy/sap-mm-301

Contracts are created in the Manage Purchase Contracts app or with ME31K (change ME32K, display ME33K). The header carries the supplier, purchasing organization 1710, validity period, payment terms and, for value contracts, the target value. Items carry the product (or material group), target quantity, price conditions and plant. A contract item with no plant is valid for all plants of the purchasing organization; one with a plant is plant-specific, which matters for source determination later.

FieldHarbor quantity contract 4600000021
SupplierHarbor Electric Parts
ValidityJanuary 1 to December 31, 2027
Item 10CMC-RTR-200, plant 1710, target 7,200 PC
Price$40.80 per piece; freight $0.60 per piece as a separate condition
TermsNet 45; delivery 30 days after order

The quantity contract created from Harbor's awarded quotation.

Release orders

When MRP or a buyer needs rotors from Harbor, a PO is created with reference to the contract item (in ME21N by entering the outline agreement and item, or in the Manage Purchase Orders app, or automatically when a requisition with the contract as source is converted). The PO inherits price and terms from the contract, and the contract's released quantity increases. The contract's release documentation lists every release order, so a buyer can see at any time how much has been called off.

  1. Contract4600000021: 7,200 rotors at $40.80, released to date 0
  2. RequisitionMRP: 600 rotors for plant 1710 with source 4600000021 item 10
  3. Release orderPO 4500000522 references the contract; price $40.80 copied
  4. ConsumptionReleased to date 600; open target 6,600
  5. Receipt and invoiceAs for any PO: goods receipt 101, invoice matched to PO price
From contract to release order and consumption.
The Sign-Off Table · thesignofftable.com/academy/sap-mm-301
Uncertain volume and priceStandard POs with info records; revisit after a sourcing event
Known volume, uncertain priceQuantity contract with price review clauses
Known price, uncertain volumeValue contract or quantity contract with a conservative target
Known volume and price, repetitiveScheduling agreement for daily or weekly deliveries
Choosing between POs, contracts and scheduling agreements.
The Sign-Off Table · thesignofftable.com/academy/sap-mm-301

What happens when release orders exceed the target? SAP issues a message; whether it is a warning or an error depends on message configuration. Contoso wants a warning at the target and a buyer decision to extend the contract. Expired contracts are not proposed as sources, and a PO referencing an expired contract is refused or warned depending on settings. Both cases belong in testing.

Large groups often negotiate contracts centrally for several companies. SAP S/4HANA supports central contracts for this through its central procurement capabilities, distributing contract information to connected systems. Contoso has one purchasing organization today, but the planned Mexican acquisition would raise the question; record it as a future design topic rather than solving it now.

What would you do?

Harbor's contract has 400 rotors left, and MRP needs 600. A buyer asks whether to create a release order for 600 anyway. What is the best approach?

Key points
  • Quantity contracts (MK) commit item quantities; value contracts (WK) commit a total value.
  • Create in Manage Purchase Contracts or ME31K; plant-specific or for all plants.
  • Release orders are POs referencing the contract; they inherit price and update consumption.
  • Monitor targets, expiry and contract compliance; overruns need a decision.

Check your understanding · not graded

Lesson check

  1. 1. What is a release order?

  2. 2. Which contract type commits a total value at header level?

  3. 3. Which transaction creates a contract in SAP GUI?

  4. 4. A contract item has no plant. Where is it valid?