SAP transaction codeObjectCO01ModulePP_M2D

CO01 — Create Production Order

CO01 creates a production order manually, exploding the BOM and routing for a material at the moment of creation to build the order's operations, components, and dates. It does not stay linked to master data afterward: changes to the BOM or routing after the order is saved will not appear on the order unless someone explicitly triggers a recompute in CO02.

CO01 is the transaction for manually creating a discrete production order, as opposed to converting a planned order or running mass processing. This page covers the creation sequence, the tables the save writes to, and the diagnostic categories behind the most common creation failures: missing production version, BOM or routing not found, costing not triggered, and availability check surprises.

Reviewed by an ERPClimb SAP consultant on 15 Sept 2026· 1,195 words

What it does

CO01 creates a new production order directly, without a preceding planned order. On save, the system reads the material master, selects a BOM and routing (via the production version or the standard selection ID), explodes both, and writes the result into the order as a fixed set of operations, components, and dates. The structural fact that causes most confusion: this explosion happens once, at creation. The order is a snapshot, not a live pointer to the BOM and routing. If engineering changes the routing or BOM after the order exists, the order keeps the old version until someone opens it in CO02 and runs the explicit recompute function. Consultants who expect automatic propagation of master data changes into open orders are the ones who end up debugging why a corrected component list is not showing up on the shop floor.

When it is used

CO01 sits at the point in discrete manufacturing where an order is needed but there is no planned order to convert, or the planning result is being bypassed deliberately: a rework order, a one-off repair job, a prototype build, or a test order in a sandbox client. In a normal MRP-driven process, planned orders generated by MD01/MD02 are converted to production orders through the conversion transactions, not created fresh in CO01. Reach for CO01 specifically when someone needs to create an order outside the planning run, or when reproducing an issue that a planner reports and it needs to be isolated from the MRP logic. In S/4HANA, the same manual-creation need is also served by a Fiori app, but CO01 remains the transaction most consultants use for troubleshooting because it exposes every screen and tab the Fiori app abstracts away.

How to use it

  • Enter the order type (controls number range, scheduling, and costing behavior) and the material number.
  • Confirm or override the plant; the system proposes it from the material master if only one plant is maintained.
  • Enter the order quantity and, if relevant, a basic start or finish date; leave the other blank and let scheduling calculate it.
  • On the header data screen, check or select the production version; if none is proposed, BOM and routing selection will fail or pull an unintended alternative.
  • Review the component overview and operation overview tabs after explosion; this is where a wrong BOM alternative or missing routing shows up before saving.
  • Save. The system assigns the order number from the number range tied to the order type.

Key fields

  • AUFK - order master record: order number, order type, status object number, business area.
  • AFKO - production order header data: basic and scheduled dates, production version, BOM/routing pointers, scheduling parameters.
  • AFPO - order item data: material, order quantity, goods receipt storage location, account assignment (WBS or sales order if make-to-order).
  • AFVC - operations: routing operations copied into the order, control key, work center.
  • AFVV - operation quantities and dates used by scheduling and confirmation.
  • RESB - reservations for the components exploded from the BOM, used later by goods issue and availability checks.

How to prove it in the data

In SE16, pull AUFK filtered on the order number to get the object number and status; cross-check against AFKO on the same order number for basic dates, production version, and BOM/routing group and counter. For component questions, filter AFPO and RESB on the same order number and compare quantities against what the BOM in CS03 shows for the version referenced in AFKO. If the order looks wrong, check whether the production version field in AFKO is blank or points to an alternative the planner did not expect.

ECC vs S/4HANA

CO01 is still available in S/4HANA and the underlying explosion, scheduling, and costing logic are unchanged from ECC. S/4HANA adds a Fiori app for creating production orders that covers the same core fields with a simplified layout; consultants working incidents still tend to reproduce them in CO01 because it shows every tab, including production version and scheduling parameters, that the Fiori app hides behind defaults. No table or field structure behind the order changed with the move to S/4HANA.

Common pitfalls

  • Missing or wrong production version: order creation either fails with no BOM/routing found, or silently picks an unintended alternative. Check the production version validity dates and the BOM/routing links maintained in the material master against the order's requested start date.
  • BOM or routing not found: the system message names the missing object. Verify BOM validity dates and status in CS03, and routing status and usage in CA03, against the order's basic start date; an inactive or expired BOM/routing is invisible to CO01 even though it displays fine in its own transaction.
  • Order created but not costed: the order type's costing variant may not be configured to cost at creation. Check the order type control in customizing rather than assuming a data error; the fix is not to re-enter the order.
  • False missing-parts warnings during availability check: the scope of check assigned to the order type, plant, and MRP area may include stock or storage locations the planner is not looking at. Confirm the checking rule before assuming a stock master data problem.
  • Order stuck in CRTD status: some order types require explicit release before confirmation or goods movement is possible. Check whether a release strategy is configured, or whether the order simply needs manual release in CO02, before escalating as a technical error.
  • Wrong component quantities: usually traces back to the BOM alternative selected via the production version, not to RESB itself. Compare AFPO/RESB quantities to the BOM item quantities in CS03 for the exact alternative referenced in AFKO before suspecting a formula or scrap setting error.

Whose problem this is

This is a PP functional consultant's transaction end to end: material master, BOM, routing, order type customizing, and scheduling parameters all sit in PP configuration. ABAP gets involved only if a user-exit or BAdI on order creation is suspected of altering component or date logic. A good handover includes the order number (or exact material/plant/order type combination if the order never saved), the error message text, and confirmation of whether the same inputs reproduce the issue in a quality system.

Related SAP objects

Reviewed pages this object connects to in the ERPClimb knowledge graph.

Source: ERPClimb — https://erpclimb.com/sap-tcodes/co01ERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.