Subcontracting for Discrete and Process Manufacturing

Earn 25 points (50 with Pro) in two steps

  1. ① Read through the lesson — each section gets a ✓ as you scroll through it.
  2. ② When every section has a ✓, tap Complete lesson.

0 of 12 read · keep scrolling

✦ See fewer ads and earn double points — 50 a lesson instead of 25 — with Pro

Subcontracting for Discrete and Process Manufacturing

Introduction: The Strategic Role of Subcontracting

In the modern manufacturing landscape, rarely does a single facility handle every stage of production from raw material to finished good. Subcontracting—the practice of sending semi-finished goods or raw materials to a third-party vendor for specialized processing—is a critical component of supply chain management. Whether it is a discrete manufacturer outsourcing a heat-treatment process or a process manufacturer sending bulk chemicals to a specialized laboratory for packaging, the ability to manage these external operations as if they were internal work centers is vital for operational visibility and cost control.

Why does this matter? When you subcontract, you are essentially extending your production floor beyond your own four walls. If you fail to track this properly, you lose control over inventory accuracy, quality standards, and lead times. Effective subcontracting management ensures that the materials sent to the vendor are accounted for, the work performed by the vendor is properly documented, and the costs are correctly allocated to the final product. Without a structured approach, you risk "black box" scenarios where inventory disappears into the supply chain and reappears weeks later with mysterious costs attached, making it impossible to calculate true product margins.

This lesson explores how to configure and manage subcontracting within the context of both discrete and process manufacturing. We will cover the configuration of items and services, the flow of goods, financial settlement, and the common pitfalls that lead to reconciliation nightmares.


Not read yet

Understanding the Subcontracting Model

At its core, subcontracting is a hybrid between a purchase order and a production order. You are purchasing a service, but that service is inextricably linked to the transformation of your own inventory.

The Discrete Manufacturing Perspective

In discrete manufacturing, subcontracting usually involves a specific operation in a bill of materials (BOM) or a routing. For example, a machine shop might produce a metal gear, but they do not have the specialized equipment for carburizing or hardening. They send the gear to a subcontractor. The "Service Item" represents the hardening process, and the "Component Items" are the gears themselves.

The Process Manufacturing Perspective

In process manufacturing, subcontracting is often used for operations like spray drying, milling, or packaging. Because process manufacturing relies heavily on recipes and formulas, the subcontracting process must account for yield loss and potential material consumption variances. If you send 1,000 kilograms of bulk liquid to a subcontractor for bottling, you expect a certain number of finished units back, and the system must reconcile the difference between what was sent and what was consumed.

Callout: Discrete vs. Process Subcontracting In discrete manufacturing, the focus is on the quantity and status of individual serial-tracked or lot-tracked units. You are monitoring the transformation of a specific item. In process manufacturing, the focus is on volume, weight, and potency. You are monitoring the conversion of a batch of material, where the "yield" is the primary metric of success.


Not read yet

Configuring the System for Subcontracting

Before you can process your first subcontracting transaction, you must configure your ERP system to recognize the relationship between your inventory, your vendors, and your service requirements.

1. Defining the Service Item

You must create a non-inventory or service-based item that represents the subcontracting operation. This item acts as the "hook" in your purchase order.

  • Item Type: Service.
  • Costing Method: Standard or Average, depending on your accounting policy.
  • Procurement Category: Ensure it is mapped to a specific ledger account for "Subcontracting Expense."

2. Linking the Service to the Routing

Within your production route, you must designate a specific operation as a "Subcontracted Operation." This tells the system that when the production order reaches this stage, it must trigger a purchase requisition or a purchase order for the service item.

3. Setting Up the Vendor as a Subcontractor

The vendor must be configured with a specific "Subcontracting" flag. This allows the system to treat the vendor not just as a supplier of goods, but as an extension of your production capacity. You must also define the lead time for the subcontracting service, which is essential for accurate material requirements planning (MRP).


Not read yet

The Subcontracting Workflow: Step-by-Step

The following workflow describes the standard life cycle of a subcontracted operation.

Step 1: Initiating the Production Order

When a production order is created, the system checks the routing. If an operation is marked as "Subcontracted," the system generates a planned purchase order for the service item.

Step 2: Issuing Materials to the Subcontractor

This is the most critical step. You are essentially performing a "Transfer Order" or a "Material Issue" to the vendor's location.

  • Inventory Reduction: The raw materials or semi-finished goods are deducted from your internal warehouse and moved to a "Vendor-Managed Inventory" (VMI) location.
  • Visibility: You must be able to see exactly what quantity of material is currently sitting at the subcontractor's site.
-- Example: Querying inventory held at a subcontractor site
SELECT 
    item_id, 
    warehouse_id, 
    quantity, 
    last_updated 
FROM 
    inventory_table 
WHERE 
    location_type = 'SUBCONTRACTOR_SITE' 
    AND vendor_id = 'VEND_101';

Step 3: Receipt of Services and Goods

When the subcontractor finishes the work, they send the goods back to you. You record a "Purchase Order Receipt." This action triggers two simultaneous events:

  1. Service Recognition: The purchase order for the service item is closed, and the cost of the service is applied to the production order.
  2. Inventory Inbound: The finished goods (or updated semi-finished goods) are moved from the subcontractor's location back into your internal inventory.

Step 4: Backflushing and Reconciliation

If your system is configured for backflushing, the consumption of the components (the goods you sent to the vendor) is automatically recorded when you receive the finished service. If the actual consumption differs from the BOM, you must perform a manual adjustment to reconcile the vendor's inventory.

Note: Always perform a physical cycle count of your subcontractor's inventory at least quarterly. Even with perfect digital records, discrepancies caused by handling loss, theft, or clerical errors are inevitable.


Not read yet

Best Practices for Managing Subcontractors

Managing external partners requires a higher level of rigor than managing internal work centers. Use the following practices to maintain control:

Establish Clear Quality Gates

Never allow a subcontractor to ship finished goods directly to your customer without a quality inspection. If the subcontractor is performing a critical process, define the "Certificate of Analysis" (CoA) requirements that must accompany every shipment. If possible, integrate your quality management system (QMS) with your ERP so that the purchase order cannot be fully received until the quality check passes.

Maintain Real-Time Inventory Visibility

Treat the subcontractor’s warehouse as a virtual warehouse in your ERP. If you treat it as an "expense" the moment it leaves your building, you lose the ability to track the material. By maintaining it as a virtual warehouse, you ensure that the material is still on your balance sheet, and you are accountable for the quantity.

Automate the Reordering Process

Use your MRP system to suggest the purchase of subcontracting services based on the production schedule. If the production order is delayed, the system should automatically push the delivery date of the subcontracted service. This prevents "stale" purchase orders that do not reflect the reality of the shop floor.


Not read yet

Common Pitfalls and How to Avoid Them

1. The "Vanishing Inventory" Problem

The Problem: Materials are sent to the subcontractor, but no one records the receipt of the returned items. Over time, the subcontractor's virtual warehouse shows thousands of dollars of raw material that is actually sitting in your finished goods warehouse. The Fix: Implement a strict "Goods Receipt" process. No payment should be made to the subcontractor until the receipt of the finished goods is recorded in the system.

2. Ignoring Scrap and Yield Loss

The Problem: In process manufacturing, you send 100kg of material. The subcontractor returns 95kg. If the system expects 100kg, you have a 5kg variance that impacts your cost of goods sold (COGS). The Fix: Define "Standard Yields" in your recipe. If the actual yield falls outside of a defined tolerance (e.g., 2%), the system should flag the receipt for manual investigation rather than automatically adjusting the inventory.

3. Costing Errors

The Problem: The service cost is not properly allocated to the production order, leading to inaccurate product margins. The Fix: Ensure that the "Subcontracting Service" item is configured as a "Direct Cost" in the production order routing. This ensures that the cost of the service flows directly into the work-in-progress (WIP) account for that specific production order.

Callout: The "Black Box" Risk The most dangerous mistake in subcontracting is treating the subcontractor as a third-party service provider rather than a production extension. If you do not track the material sent to them, you are essentially flying blind regarding your actual costs and your true available inventory.


Not read yet

Technical Implementation: Handling Subcontracting in Code

If you are working with an API-based ERP system, you will often need to automate the creation of subcontracting documents. Below is a simplified example of how you might structure a service call to initiate a subcontracted operation.

# Example: Automating the creation of a Subcontracting Purchase Order
def create_subcontracting_po(production_order_id, vendor_id, service_item_id, quantity):
    po_data = {
        "order_type": "SUBCONTRACT",
        "production_ref": production_order_id,
        "vendor": vendor_id,
        "lines": [
            {
                "item_id": service_item_id,
                "quantity": quantity,
                "unit_price": 50.00,
                "delivery_date": "2023-12-01"
            }
        ]
    }
    
    # Send request to ERP API
    response = erp_api.post("/purchase_orders", data=po_data)
    
    if response.status_code == 201:
        print(f"Subcontracting PO created: {response.json()['po_number']}")
    else:
        print("Failed to create subcontracting PO.")

# Logic: Link the PO back to the Production Order to ensure cost alignment.

Explanation of the Code

  • production_ref: This is the vital link. By tagging the PO with the production order ID, the ERP system knows exactly which WIP account to hit when the service is invoiced.
  • order_type: Setting this to "SUBCONTRACT" allows the system to apply specific business logic, such as preventing the receipt of the service unless the linked raw materials have been moved to the vendor location.

Not read yet

Managing Subcontracting in Discrete Manufacturing: A Scenario

Let’s look at a practical example. A company produces high-end bicycle frames. They handle the welding and assembly in-house. However, the powder coating process requires a specialized electrostatic booth they do not own.

  1. Production Order 1001 is created for 50 frames.
  2. The routing includes an operation: OP-20: Powder Coating.
  3. The system identifies this as a subcontracted operation.
  4. The system automatically generates PO-5001 for "Powder Coating Services" for 50 units.
  5. The 50 raw frames are transferred from "Warehouse: Welding" to "Warehouse: Subcontractor-Coater."
  6. The coater performs the work.
  7. The coater ships the 50 finished frames back.
  8. The receiver scans the 50 frames into "Warehouse: Finished Goods."
  9. The receipt triggers the completion of OP-20 on the production order.
  10. The cost of the powder coating service is added to the total cost of the frames.

If you skip any of these steps, you lose the link between the cost of the coating and the value of the finished frame.


Not read yet

Managing Subcontracting in Process Manufacturing: A Scenario

Now consider a chemical company that produces a proprietary cleaning solution. They have the capability to mix the chemicals but not the high-speed filling equipment to put the liquid into 1-liter bottles.

  1. Batch Order 2001 is created for 5,000 liters.
  2. The recipe includes a "Packaging" step marked as subcontracted.
  3. The company ships 5,000 liters of bulk liquid in drums to the packaging facility.
  4. The packaging facility bottles the liquid.
  5. Due to standard machine loss, they produce 4,950 liters worth of bottles.
  6. The company receives 4,950 liters back.
  7. The system records a 50-liter variance.
  8. The finance department reviews the variance; if it is within the allowed 1% threshold, the variance is written off to the "Production Variance" account.

This scenario highlights the importance of yield management. In process manufacturing, you rarely get back exactly what you send, and your system must be configured to handle these small discrepancies without stopping the entire production flow.


Not read yet

Comparison Table: Subcontracting Setup

Feature Discrete Manufacturing Process Manufacturing
Primary Goal Item/Serial tracking Volume/Weight/Yield tracking
Material Unit Each/Unit Kilogram/Liter/Gallon
Variance Handling Usually zero-tolerance Yield-based tolerance thresholds
Inventory Link BOM-based components Recipe/Formula-based ingredients
Cost Allocation Per unit cost Per batch/volume cost

Best Practices: The Checklist for Success

To ensure your subcontracting operations remain efficient, follow this checklist before, during, and after the process:

  • Pre-Process:

    • Ensure the vendor has a valid contract defining service costs and quality requirements.
    • Verify that the VMI location is correctly set up in the system.
    • Confirm that the routing steps are correctly mapped to the service items.
  • In-Process:

    • Always record the transfer of goods to the vendor immediately upon shipment.
    • Monitor the "Aging" of inventory at the vendor site. If material has been there for more than 30 days, investigate.
    • Ensure that the purchase order reflects the current production schedule.
  • Post-Process:

    • Perform a monthly reconciliation of the vendor’s inventory.
    • Analyze the "Subcontracting Variance" report to see if specific vendors are consistently causing higher losses or costs than expected.
    • Review the quality data for the subcontracted operations to ensure the service level meets the internal standard.

Not read yet

Common Questions and FAQ

Q: Can I use a subcontractor if I don't have a VMI location?

A: You can, but it is not recommended. If you do not have a virtual warehouse for the subcontractor, you have to expense the materials the moment they leave your dock. This makes it extremely difficult to track the value of the goods currently in the supply chain and leads to significant inventory inaccuracies.

Q: How do I handle partial shipments from a subcontractor?

A: Your ERP should allow for "Partial Receipts." When the subcontractor returns a portion of the batch, you record a partial receipt against the purchase order. The system will keep the PO "Open" for the remaining balance. Always ensure your settings allow for partial receipts to avoid blocking the supply chain.

Q: What if the subcontractor ruins the material?

A: This is a classic "vendor liability" issue. You should have a process to record "Scrap at Vendor." This removes the material from the vendor's inventory and moves it to a "Scrap/Loss" account. You then need to decide if you will charge the vendor for the cost of the ruined material.


Not read yet

Key Takeaways

  1. Subcontracting is an Extension of Production: Always manage the subcontractor's site as a virtual warehouse to ensure full visibility of your raw materials and semi-finished goods.
  2. Integration is Mandatory: The service item must be linked to the production routing, and the purchase order must be linked to the production order to ensure accurate cost accounting.
  3. Variance Management is Different by Industry: Discrete manufacturing focuses on unit accuracy, while process manufacturing must account for yield loss and volume variances.
  4. Regular Reconciliation is Non-Negotiable: Even with the best software, physical inventory discrepancies will occur. Schedule regular cycle counts at your subcontractor's location.
  5. Quality Gates are Essential: Subcontracting should not bypass your quality management protocols. Integrate your QMS with the ERP to prevent the receipt of substandard goods.
  6. Automate to Reduce Error: Use ERP APIs or built-in MRP functionality to automate the generation of purchase orders and the tracking of material transfers to minimize manual data entry.
  7. Define Vendor Liability: Always have a clear policy on how to handle scrap or loss at the subcontractor level to avoid disputes and financial leakage.

By following these principles, you transform subcontracting from a source of operational chaos into a powerful tool for scaling your production capacity. Whether you are building complex machines or mixing chemical formulas, the discipline you apply to your subcontracting processes will directly correlate with the health of your bottom line and the reliability of your supply chain.

Not read yet

Each section gets a ✓ as you scroll through it. Tap the button to jump to the next one.