ME32K — Change Contract (Outline Agreement)
ME32K changes an existing purchasing contract (outline agreement of category K), letting a buyer update validity dates, target value or quantity, item prices, plants, or blocking flags. It does not create purchase orders itself; release orders drawn against the contract inherit its terms but are not automatically re-priced when the contract is changed after they exist.
This page covers ME32K, the transaction for changing a value or quantity contract in MM. It focuses on the tables the change writes, the release-documentation link that most incidents actually revolve around, and the diagnostic order for validity, value-exceeded, and price-not-propagated failures.
Reviewed by an ERPClimb SAP consultant on 15 Sept 2026· 1,069 words
Purpose
ME32K changes a purchasing contract - an outline agreement with document category K, created originally in ME31K. A contract has a header (vendor, validity period, overall target value or quantity, terms) and items (material or material group, price, plant, target quantity or value per item). The structural fact that drives most confusion: a contract is not a purchase order. It is a framework that release orders (standard POs referencing the contract as source of supply) draw against. Changing a price or value in ME32K affects future release orders and the remaining open value, but existing release documents already created against the contract keep their own price and quantity unless separately changed. Buyers frequently expect a contract price change to retroactively update already-issued release POs, and it does not.
When it is used
ME32K is reached for after a contract exists and something about it needs to move: price renegotiation with the vendor, extending or shortening validity, raising or lowering the target value/quantity, blocking an item so no further release orders can be created against it, or correcting a plant or material assignment. It sits between contract creation (ME31K) and the day-to-day release order process (ME21N referencing the contract, or automatic sourcing). Consultants also use it reactively, when a release order fails with a contract-related error and the fix requires extending validity or raising the target value rather than touching the requisition or PO itself.
How to use it in practice
- Call ME32K and enter the contract number directly, or use the matchcode search by vendor, material, or purchasing organization.
- Review header data first: validity start and end date, target value, currency, and purchasing organization.
- Check the release documentation tab to see cumulative value or quantity already drawn by release orders before changing target value.
- Make the header or item change: price, plant, target quantity/value, blocking indicator, or validity extension.
- Save. If the contract carries a release (approval) strategy, check whether the change resets approval status.
- Re-check release documentation after save to confirm the remaining open value reflects the new target correctly.
Key data objects
- EKKO - contract header: document category, vendor, validity dates, currency, release strategy status.
- EKPO - contract items: material/material group, plant, target quantity, target value, price, deletion and blocking indicators.
- EKBE - history of release orders drawn against the contract, used to compute cumulative consumed value or quantity.
- KONH and KONP - pricing condition records held at contract item level.
- CDHDR and CDPOS - change documents for the purchasing document object, showing who changed what field and when.
How to prove it in the data
In SE16 on EKKO, filter by the contract number and confirm document category is a contract type; check validity end date (KDATB/KDATE fields) against today's date if a release order is failing. On EKPO, compare target value/quantity fields against the sum of value from EKBE entries for the same contract number and item to see how much of the target is actually consumed. Pull CDHDR/CDPOS filtered on the purchasing document object and the contract number to see exactly which field changed and in which transaction, which resolves disputes about who altered the price or validity.
ECC vs S/4HANA
ME32K continues to work unchanged in S/4HANA and there is no structural change to EKKO/EKPO for contracts. A Fiori app for managing purchase contracts exists as a modern alternative front end and is the direction SAP is pushing new users toward, but ME32K remains fully functional and is still the faster path for experienced buyers doing bulk or detailed item-level changes. Central procurement scenarios add a layer of contract distribution across systems that does not exist in a single-system ECC setup.
Common pitfalls and how to diagnose them
- Validity expired: release order creation fails with a contract-related error but the buyer starts investigating pricing or authorization. Check EKKO validity end date first, before anything else - this is the single most common cause of a suddenly-failing release order against a previously working contract.
- Target value or quantity exceeded: the contract's target has been fully consumed by prior release orders. Compare EKPO target value against the cumulative value in EKBE for that item. Raising the target in ME32K resolves it, but confirm with the requester that the increase is actually authorized, since this is also a common point of budget circumvention.
- Price change not propagating: changing the price on the contract item updates the condition used for new release orders but does not touch release orders already created. If a vendor invoice or goods receipt still shows the old price, check the release order's own conditions rather than assuming ME32K change did not save.
- Item blocked instead of the intended field: a buyer sets the blocking indicator when meaning to change something else, and every subsequent attempt to create a release order against that item fails silently with a generic message. Check EKPO blocking and deletion flags directly.
- Release strategy reset: increasing target value or changing price on a contract with an active approval workflow can reset the release status to 'not released', silently blocking new release orders until someone re-approves. This is easy to miss because the change itself saves without error.
Whose problem this is
This is a functional MM/procurement issue in the vast majority of cases. ABAP involvement is limited to custom validations or enhancements on contract save. Basis is rarely relevant except for authorization object assignment. A good handover includes the contract number, the exact error message and where it appeared (release order creation, not ME32K itself), the validity dates, and whether the last change made was header-level or item-level.
Related SAP objects
Reviewed pages this object connects to in the ERPClimb knowledge graph.
Source: ERPClimb — https://erpclimb.com/sap-tcodes/me32kERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.