What Is Subcontracting in SAP?
Subcontracting is a procurement process where your company provides raw materials (components) to an external vendor (subcontractor), and the vendor uses those components to manufacture a finished or semi-finished product and delivers it back to you. In SAP, this is handled through a special type of purchase order called a subcontracting PO (item category L). The vendor and pricing details are typically maintained in a Purchase Info Record.
Subcontracting is extremely common in manufacturing industries. For example, an automobile company might send sheet metal to a stamping vendor to produce car body panels, or an electronics company might send circuit board components to a contractor for assembly.
The key difference between subcontracting and regular procurement is that in subcontracting, you are providing the raw materials. You only pay the vendor for the service charge (labor, tooling, overhead), not for the material. This means SAP needs to track two things simultaneously: the components you sent to the vendor and the finished goods the vendor returns.
The Complete Subcontracting Flow in SAP
Here is the end-to-end subcontracting process in SAP, step by step:
Create a Bill of Material (BOM)
Before you can subcontract, SAP needs to know which components go into the finished product. This relationship is defined in the BOM (Bill of Material). The BOM lists all the components required to produce one unit of the finished product.
Transaction: CS01 (Create BOM)
Example: Finished product PUMP-ASSY-001 requires: 1x Pump Housing (PUMP-HSG-001), 2x Seals (SEAL-001), 1x Impeller (IMP-001), and 4x Bolts (BOLT-M8-001).
Create a Subcontracting Purchase Order
Create a purchase order with item category L (subcontracting). This is the critical step. When you set item category to L, SAP automatically pulls the BOM components and calculates the quantities needed based on the PO quantity.
Transaction: ME21N (Create PO) in ECC; or the "Create Purchase Order" Fiori app in S/4HANA
Key settings:
- Item category: L (Subcontracting)
- Material: The finished/semi-finished product you want the vendor to produce
- Vendor: The subcontractor
- Price: Only the service charge (not the material cost)
After saving the PO, go to the Components tab at the item level. SAP shows all the BOM components with the quantities required per unit of the finished product, multiplied by the PO quantity.
Transfer Components to Subcontractor (Movement Type 541)
Now you need to physically ship the components to the subcontractor. In SAP, this is called "Provision of Material to Vendor" and uses movement type 541.
Transaction: MIGO (Goods Issue for Subcontracting)
What happens in SAP:
- Stock is transferred from your plant's unrestricted stock to "Stock with Subcontractor" (a special stock type indicated by "O" in stock reports)
- The material physically leaves your warehouse but still belongs to your company
- You can monitor this stock using transaction
ME2O(SC Stock Monitoring)
Subcontractor Produces the Finished Product
This step happens outside SAP. The subcontractor uses your components to manufacture the finished product. There is no SAP transaction for this step. However, you should monitor the timeline and follow up if the vendor exceeds the agreed delivery date.
ME2O regularly to monitor how long components have been sitting at the vendor's site. Aging SC stock is a common audit finding and can indicate delivery delays or unreported scrap.Goods Receipt of Finished Product (Movement Type 101)
When the finished product arrives from the subcontractor, you post a goods receipt against the subcontracting PO using the standard movement type 101. This creates accounting entries similar to a regular GR/IR clearing flow.
Transaction: MIGO (Goods Receipt against PO)
What happens in SAP (two automatic actions):
- Finished product stock increases: The finished/semi-finished product enters your unrestricted stock
- Component stock at subcontractor decreases: SAP automatically consumes the components from "Stock with Subcontractor." The quantity consumed is based on the BOM quantities multiplied by the GR quantity
MIGO during GR posting to reflect actual consumption.Invoice Verification
The subcontractor sends an invoice for the service charge. You verify and post the invoice using transaction MIRO (or the "Create Supplier Invoice" Fiori app in S/4HANA).
The invoice amount should match the PO price (service charge only). The component cost is not included in the invoice because the components belong to you. The full procurement cycle from PO to invoice is part of the broader Procure-to-Pay (P2P) process.
Key Transactions for Subcontracting
| Transaction | Purpose |
|---|---|
CS01 | Create Bill of Material |
ME21N | Create Subcontracting PO (item category L) |
MIGO (541) | Transfer components to subcontractor |
ME2O | Monitor stock with subcontractor |
MIGO (101) | Goods receipt of finished product |
MIRO | Invoice verification (service charge) |
MIGO (542) | Return components from subcontractor (if needed) |
Common Issues and Solutions
Components not showing in PO
Ensure the production BOM (BOM usage 1) exists and is active for the finished product in the plant where the subcontracting PO is created. SAP explodes this BOM to propose the components of the subcontract order.
Stock with subcontractor does not match
Use ME2O to check the current SC stock. Compare with the vendor's records. Discrepancies often arise from partial GR postings or unreported scrap at the vendor's location.
GR quantity exceeds PO quantity
By default, SAP allows over-delivery within the tolerance limits defined in the PO. Check the over-delivery tolerance percentage in the PO line item.
Components consumed in wrong ratio
If the vendor uses more or fewer components than the BOM specifies (due to scrap or yield differences), you need to manually adjust the component consumption during GR by changing the quantities in the Components tab of MIGO.
Key Takeaway
Subcontracting in SAP uses item category L in purchase orders and involves providing raw material components to an external vendor. Movement type 541 transfers components to the subcontractor; 542 returns unused components. Goods receipt (101) of the finished product automatically consumes components from SC stock. Use ME2O for ongoing visibility into stock held at the vendor's site - this is one of the most frequently tested topics in SAP MM interviews.
Next Step: Join our SAP MM training where we practice the complete subcontracting cycle hands-on in a live S/4HANA system.




