Subcontracting Part 5: Perform Subcontracting
This is the fifth post on my blog related to subcontracting in Microsoft Dynamics NAV. It describes how you can setup and use Dynamics NAV when you are performing subcontracting on behalf of a customer (e.g. if you are a subcontractor for a customer and perform operations on parts belonging to the customer).
This is actually quite straight forward. The key is to create separate items that represent the customer’s parts. Whatever is received from the customer as components should not have an inventory value and whatever is sent back to the customer should have a value representing the value your process has added to the parts (material, labor, etc..).
The receiving of parts can be done using a purchase order with a zero value (or alternative a sales return order), the actual operation(s) are done using a production order and sending the parts back to the customer is done using a sales order (as well as invoicing for the work performed).
Here is how it can be done.
First we setup the parts that should be involved in this process. Let’s use the same example as the previous blog posts about subcontracting; a standard bicycle that gets a custom FIFA 2014 pain job by a subcontractor (which in this case is yourself).
First we need the standard bicycle that is going to be received from the customer. We can set this item up as any other type of item with the exception that the inventory value should always be zero since the inventory belongs to the customer. We use the Inventory Value Zero feature to define this, see previous blog post for more details about this. For the item number I have in this example used the same number as a regular bicycle but with a ‘C’ as a prefix to indicate that it is a consignment inventory that belong to a customer.
Next we need the paint to pain the bicycle, this is our own inventory and it is setup like any other item, nothing strange here (I use the Cronus item 70100).
The last item we need in this example is the finished painted bicycle that is sent back to the customer. This item should have an inventory value that represents the cost of the pain and the capacity cost that is applied during the production process (which it will get by default from the production BOM and routing).
This part needs a production BOM and routing since this is what we are going to produce. The production BOM is setup as below, where we use one of the consignment bicycles and half a can of paint for each bicycle that is painted.
The corresponding routing for the item is defined as below (with just a painting operation that is backflushed when the production order is finished).
If you are in a standard cost environment then you can now do a cost roll-up of the FIFA 2014 painted bicycle. The costs in this example then turned out as follows (based on the material in the production BOM and operations in the routing).
The above fields has been added to the item card, see Cost Roll-Up Details on Item Card for more details.
Now we have the items needed.
We also need a customer, and if we are going to receive the unpainted bicycle trough a purchase order or do any kind of replenishment planning on it we also need to setup our customer as a vendor.
The customer is setup like any other customer, nothing strange.
The vendor can then be created from the contact that is linked to the customer, this way the address etc.. will be kept in sync. by Dynamics NAV (see Connect Customer with Vendor for details).
Now we have what we need. Let’s try the process. 🙂
It starts with the customer places an order to have some bicycles painted in the FIFA 2014 paint. We then create the corresponding sales order in Dynamics NAV where we enter the painted item on the sales order line. The price is what we are going to charge for the service we are providing (e.g. painting) and any material that is going to be used (e.g. the paint).
From here we can then create the production order to perform the work using the sales order planning feature (or alternative to have MRP to create it).
And we also create a purchase order with the parts that we expect to receive from the customer (this you could also get MRP to create for you). The purchase order will have zero in the purchase amount.
We then receive the purchase order and close it by invoicing it with the zero value when the products are received from the customer.
The work of painting the bicycles is performed and the production order is finished by posting the consumption of the bicycles and paint and by posting the output of the operations. In this case I set it all to be backward flushed, both the components and all operations, so all that is needed is to change the status of the production order to finished).
We now have the finished FIFA 2014 painted bicycles in inventory and can ship it back to the customer and invoice for the work performed. This we can do from the sales order (or whatever method you chose to ship and invoice sales orders).
This is it, straight forward and quite simple I think. 🙂
When you later look at the statistics of this product (to determine how much profit you make on the part etc.) you will see the cost as the cost that you added to it and the sales amount is what you invoiced the customer for the services and additional material you used. And if it is a standard cost part you could also have a variance when the production order is finished.