Partial Confirmations and Operation Scrap
An operation is confirmed in two parts — 60 EA, then 35 EA plus 5 EA scrap. The order shows progress (PCNF → CNF), only 95 good units can be received, and the scrapped units' cost stays on the order as a scrap variance.
Educational content. SAP behaviour varies by configuration and release. Spotted something off? Report it.
Digital twin
01Components issued and work starts
100 EA of RM-1000 issued to order 1000060 (261).
Business scenario
Production order 1000060 for 100 EA of FG-2000 runs over two shifts. Shift 1 finishes 60 EA; shift 2 finishes 35 EA and scraps 5 EA with cracked welds.
All companies, numbers and documents are fictional demo data.
Step-by-step flow
- 01
Components issued and work starts open in twin
100 EA of RM-1000 issued to order 1000060 (261).
Scrap later will mean these components were consumed without producing good output.
- 02
Shift 1: partial confirmation of 60 open in twin
CO11N: 60 EA yield, not final. Order status PCNF (partially confirmed).
Planners and capacity planning see how much is done; remaining capacity requirement is reduced.
- 03
Shift 2 reports 35 good and 5 cracked open in twin
How should the 5 cracked units be reported?
Scrap reduces the quantity expected at the next operations and at goods receipt.
- 04
Phantom good units open in twin
Confirming 40 as good tells the next operations and the goods receipt to expect 100 good units. The 5 cracked units show up later as a stock difference.
It distorts the order's progress, stock and the scrap statistics that quality needs.
- 05
Shift 2: final confirmation with scrap open in twin
35 EA yield + 5 EA scrap, final. Order status CNF. Total good: 95.
CO14 shows each confirmation with yield and scrap.
- 06
Receive the 95 good units open in twin
95 EA received: 40 → 135. ₹1,14,000 credited to the order.
The scrapped units never become stock.
- 07
Settle the scrap variance open in twin
₹1,20,000 debited, ₹1,14,000 credited: ₹6,000 — the cost of 5 scrapped units.
Separately reported scrap tells management what poor quality cost.
- 08
Order complete open in twin
Two confirmations, 95 good, 5 scrap, variance explained.
Planned scrap (assembly or operation scrap in master data) would have raised the planned quantity instead.
SAP documents
Stock impact
| Step | Plant / SLoc | Stock type | MvT | Change |
|---|---|---|---|---|
| Components issued and work starts | 1000 / 0002 | Unrestricted use | 261 | −100 EA |
| Receive the 95 good units | 1000 / 0001 | Unrestricted use | 101 | +95 EA |
Accounting impact
Component issue
TypicalComponents issued and work starts
- Dr Consumption — order 1000060 (GBB/VBR)₹1,00,000
- Cr Inventory — raw materials (BSX)₹1,00,000
Standard order consumption.
Activity for shift 1
ConceptualShift 1: partial confirmation of 60
- Dr Order 1000060 — machine hours₹12,000
- Cr Cost center CC-4300 — activity allocation₹12,000
Activity is confirmed with each partial confirmation.
Activity for shift 2
ConceptualShift 2: final confirmation with scrap
- Dr Order 1000060 — machine hours₹8,000
- Cr Cost center CC-4300 — activity allocation₹8,000
Hours for yield and scrap are both confirmed — scrapped units also used machine time.
Receipt of good output
TypicalReceive the 95 good units
- Dr Inventory — finished goods (BSX)₹1,14,000
- Cr Factory output — order 1000060 (GBB/AUF)₹1,14,000
Only good units are received, at standard price.
Settlement of the scrap variance
Configuration dependentSettle the scrap variance
- Dr Price difference — production variance (PRD)₹6,000
- Cr Order 1000060 — settlement₹6,000
Variance calculation reports this as scrap variance (variance category SCRP, typical); settlement posts it to price difference.
Typical conceptual flow. Actual G/L accounts and posting behaviour depend on material valuation, automatic account determination and system configuration.
Movement type
Reports production progress and losses accurately, so downstream operations, stock and costs reflect what really happened.
Transactions & Fiori apps
- CO11N — Confirmation
- CO14 — Display Confirmations
- MIGO — Goods Receipt
- KKS2 — Variance Calculation
- KO88 — Settlement
- Confirm Production Operation
Differences by SAP version
CO11N/CO15 confirmations; CO14 display.
Same; Fiori confirmation apps.
Confirm Production Operation app.
Configuration
Confirmation tolerances
Configuration dependentUnder- and over-delivery tolerances and whether partial confirmations are allowed.
Variance categories
Configuration dependentScrap variance reported separately (SCRP, typical).
Prerequisites
- Released order
- Scrap reasons (optional)
- Variance key with scrap variance
Master data
- Material master / BOM / routing
- Planned assembly, component and operation scrap.
Organizational structure
- Plant 1000
- Work center ASSY-01
Tables
| Table | Description |
|---|---|
| AFRU | Confirmations with yield and scrap |
| AFVV | Operation quantities (confirmed yield / scrap) |
Integration
- MMOnly yield is received into stock.
- COScrap variance at settlement.
Common errors
“Order shows more good units than received”
Likely causes: Scrap confirmed as yield; GR not posted for the full yield
Where to look: CO14 · Order goods movements
Troubleshooting
Something went wrong? Work through these checks in order. They are diagnostic questions, not configuration instructions — confirm changes with your system owner.
CHECK 1
Quantities
- Yield vs scrap entered separately?
- Tolerances?
Interview questions
What happens when scrap is confirmed on an operation?
The scrap quantity is recorded separately from yield; following operations and the expected goods receipt are reduced accordingly; the costs consumed for the scrapped units stay on the order and appear as scrap variance in variance calculation.
Quiz
References
- SAP SE — SAP Help Portal: Order Confirmation (source)
- SAP SE — SAP Help Portal: Scrap in Production (source)
- SAP SE — SAP Help Portal: Variance Categories (source)
Explanations are original. They summarize standard behaviour; always validate against your system's release and configuration.
Version history
| Version | Change |
|---|---|
| 1.0.0 | Initial version. |