How-toOracle NetSuiteOutsourced Manufacturing / Subcontracting

NetSuite Outsourced Manufacturing: Subcontract Work Order Flow

Question
how to set up outsourced manufacturing subcontracting in NetSuite

Also searched as

  • NetSuite subcontract work order purchase order
  • NetSuite outsourced assembly vendor components
  • NetSuite send components to subcontractor
  • NetSuite outsourced manufacturing cost variance

Short answer

NetSuite outsourced manufacturing lets you buy a finished or processed assembly from a vendor while supplying the components yourself. A purchase order drives a linked work order, components are sent to the vendor, and the item receipt brings in the assembly with component cost plus the vendor charge. It works well once the item, vendor charge and component location are set correctly.

Applies to: NetSuite with the Outsourced Manufacturing feature and assembly items enabled; field labels vary slightly by release, so confirm in your account

How to set up and run a subcontract order

  1. 1Enable the feature under Setup > Company > Enable Features > Items & Inventory and confirm Work Orders and Assembly Items are also on.
  2. 2Create the assembly item with its bill of materials and mark it as outsourced to a vendor, with the item purchased from that vendor and the vendor charge handled as an other-charge or service item.
  3. 3Enter the vendor on the item's purchasing data and set the purchase price for the processing charge, not for the components you supply.
  4. 4Create a purchase order for the outsourced assembly. NetSuite creates the linked work order that holds the component requirements.
  5. 5Send components to the subcontractor by transferring stock to the vendor's location, or by shipping from the work order with the issue transaction, depending on how you track vendor-held stock.
  6. 6Record the vendor's progress, then receive the finished assembly against the purchase order using an item receipt.
  7. 7Review the GL impact: components move out of inventory, the assembly is received at component cost plus the vendor charge, and the vendor bill matches the charge.
  8. 8Close the work order and check for variance between planned and actual component consumption.

How the order flows

The purchase order is the commercial document and the work order is the production document. They are linked, so changing the PO quantity changes the work order requirement, and the work order lists the components that must be at the vendor to build the quantity ordered.

The vendor charge covers the value they add. The components are your property and stay on your books, which is why the received assembly cost is components plus charge rather than a purchase price alone. Any scrap the vendor reports needs a separate decision on who bears the cost.

Controlling stock at the subcontractor

The most common design is a location for each subcontractor, set up as a non-nettable location so the stock is visible but not available to your planners. Components move there by transfer order, and consumption is recorded when the assembly is received or when you post an issue against the work order.

If you skip that and simply ship components against a work order without a vendor location, the stock disappears from your reporting while still being yours. Reconcile each month by subcontractor, using a saved search of inventory balance by location, and ask the vendor for a physical count when a mismatch appears.

-- Saved search: stock held at subcontractor locations
-- Type: Inventory Balance
-- Criteria: Location : Name  contains  SUBCON
-- Results: Location, Item, Inventory Number, On Hand, Total Value

Costing and variance

The received cost is the sum of component cost drawn from the work order and the vendor charge from the bill or the purchase order. If the vendor invoice differs from the purchase order charge, the difference follows your normal purchase price variance setup and depends on the item costing method.

Component variance arises when the vendor uses more or less than the bill of materials planned. Decide up front whether you accept the actual consumption they report, adjust the work order on receipt, and bill back scrap beyond an agreed allowance. Without that policy, variance accumulates unseen.

Planning and lead time

Supply planning can propose purchase orders for outsourced assemblies, and the dependent component demand then flows to your own purchasing. The lead time on the item should include the transit to the vendor and back, not just their processing time, or components arrive late.

Multi-step outsourcing, such as plating then heat treating, is harder. It is usually modelled as separate outsourced items in sequence, each with its own purchase order, or as a routing with an operation per vendor if your edition supports it. Test the simplest chain end to end before building further.

Common pitfalls

  • !Putting the full finished price in the vendor charge, which double counts components you supply.
  • !Shipping components without a vendor location, so subcontractor stock cannot be reconciled.
  • !Leaving lead time at the vendor's processing time and ignoring transit.
  • !Not agreeing a scrap and overuse policy, so variance has no owner.
  • !Closing the work order before the vendor bill is matched.

How an ERP-grounded AI assistant handles this

A grounded assistant can list open subcontract purchase orders, show components still at each vendor, and flag orders where components have not shipped against a due date, all from NetSuite data. ERPray runs read-only, shows the query and follows the user's role, so a buyer sees only their vendors. Posting transfers and receipts stays a human step. NetSuite saved searches cover the same if you track only a few subcontractors.

Frequently asked questions

What is the difference between outsourced and subcontract manufacturing in NetSuite?

They describe the same pattern. You buy a processed or finished assembly from a vendor while supplying components. NetSuite handles it with the Outsourced Manufacturing feature linking a purchase order to a work order for the components.

How do I send components to the subcontractor?

Use a transfer order to a location representing the subcontractor, or ship against the work order if your process uses that route. A dedicated vendor location keeps the stock visible and reconcilable.

How is the received assembly valued?

At the cost of components consumed from the work order plus the vendor charge. If the vendor bill differs from the purchase order, the difference follows your standard purchase price variance treatment for the item's costing method.

Can planning create outsourced purchase orders?

Yes, supply planning can suggest purchase orders for outsourced assemblies and generate component demand. Check lead times include transit, and that the component items are planned too, or the vendor will wait for stock.

Related

How-to

How to Set Up Routings and WIP in NetSuite Manufacturing

In NetSuite Advanced Manufacturing, a routing defines the ordered operations, work centers and labor or machine resources an assembly passes through. When a work order with a routing is released, NetSuite creates manufacturing operation tasks, and costs move into WIP through work order issues and operation completions before the final work order completion relieves WIP into finished inventory.

Error fix

NetSuite MRP Not Generating Planned Orders: Causes and Fixes

When NetSuite Generate Planned Orders returns nothing, the cause is nearly always item setup or demand: the item is not set for supply planning, demand falls outside the planning time fence, existing supply already covers it, or the lead time and lot size settings prevent a suggested order. Check the item's Planning fields first, then the demand source, then the plan itself.

How-to

How to create an assembly build or work order in NetSuite

For simple manufacturing with no routing or WIP tracking, use Transactions > Manufacturing > Build Assemblies (or Enter Assembly Build), select the assembly item, quantity, and location, and NetSuite consumes the BOM components and receives the finished item in one transaction. For multi-step production needing routing, WIP accounting or partial completions, create a Work Order (Transactions > Manufacturing > Work Orders) and process it through Work Order Completion, which requires the Advanced Manufacturing feature (SuiteSuccess Manufacturing or WMS add-on) or the Manufacturing bundle.

How-to

NetSuite Lot and Serial Traceability: Forward and Backward Trace

NetSuite stores lot and serial numbers as inventory number records linked to transactions through the Inventory Detail subrecord. A recall trace works by starting from the inventory number, finding every transaction line that touched it, and following work order issues and assembly builds to the finished lots they went into. It is fully possible with saved searches or SuiteQL, though it takes setup.

Error fix

Fix NetSuite SSS_USAGE_LIMIT_EXCEEDED Error

SSS_USAGE_LIMIT_EXCEEDED fires when a SuiteScript execution consumes all the governance units (usage points) allotted to its script type before it finishes. Fix it by checking runtime.getCurrentScript().getRemainingUsage() before expensive calls, yielding or rescheduling in Scheduled scripts, and moving heavy record-count work into Map/Reduce, which yields automatically across stages.

Error fix

Fix NetSuite INVALID_FLD_VALUE Error

INVALID_FLD_VALUE means NetSuite rejected a value you tried to set on a field because it does not match the field's expected type, list option, or reference record. Fix it by confirming the internal ID or text value actually exists on that field's source list and matches the field's value type (text versus list versus record reference) before setting it.

AI for ERP

AI agents for NetSuite manufacturing operations

AI agents for NetSuite manufacturing: WIP tracking, routing exceptions, and work order status grounded in SuiteQL, with human approval on anything that writes back.

AI for ERP

AI for NetSuite, Beyond the Built-In Text Tools

NetSuite's built-in AI covers text generation, not grounded answers on your own data. See how a private LLM over SuiteQL adds real Q&A and controls.

Stuck on Oracle NetSuite?

Talk to engineers who work inside Oracle NetSuite every week, and who build private AI that answers these questions from your own ERP data.