Subcontracting Part 3: Transport Charges
This is the third post in a series of subcontracting blog posts, and it starting to get a bit tricky. The topic is how to handle transport charges for subcontracting operations. In other words if you have a vendor that handles parts of the production process and you receive an invoice from a shipping agent/transportation company for the transportation of products either to and/or from the subcontractor.
There are three ways that I have successfully done this in the past, all of them with some pros and cons;
1. Item Charge on a Purchase Invoice against the Transfer Receipt.
2. Adding a separate Subcontracting Operation to the Routing.
3. Adding a Transportation Cost Accrual Operation to the Routing.
Each method is described in details below.
Item Charge on a Purchase Invoice against the Against Transfer Receipt
In this method you create a purchase invoice based on the invoice received from the transportation company and you assign the cost against a previously posted transfer receipt. It handles the actual costs only and will not affect any standard cost roll-up, so it is a method that is more applicable to the FIFO or average costing methods.
To do this you need the transportation company as a vendor in Dynamics NAV (obviously), and you also need an item charge setup to handle transportation costs. A prerequisite is also that you used a transfer order to send the components to the subcontractor (like described in my post subcontracting part 2) or a transfer order to move the finished product back from the subcontractor. Without a posted transfer receipt this method will not work.
Here is how you do it;
Create a purchase invoice representing the transportation costs and add the item charge(s) as lines according to the invoice received.
Next you assign the item charges to the transfer receipt(s) by selecting Line -> Item Charge Assignment and then using the Get Transfer Receipt Lines to select the transfer receipts to assign the cost to.
If you get a transportation cost invoice covering multiple shipments (maybe throughout the month) then you need a way to distribute the costs across the different transfer receipts (instead of entering the Qty. to Assign manually). Standard Dynamics NAV can help you with this by suggestion a distribution according to the amounts of the products or equal across the lines.
This suggestion can also be easily customized to include other criteria such as weight. You also need to be aware of how the dimensions in item charges are handled, read my previous post related to this.
Then you post the purchase invoice and after running the cost adjustment you see that Dynamics NAV forwards the costs applied like this to any inventory value or COGS for the finished product produced through the subcontractor on the production order.
Adding a separate Subcontracting Operation to the Routing
The second option is to add a separate subcontracting operation to the routing. By doing this you will be able to define an expected cost that could also be part of a standard cost roll-up and you will get a second purchase order to be used for invoicing the transportation cost. This method can also be used even if you are not transferring products using transfer orders.
To do this you need a vendor for the transportation company (obviously), but also a work center so that it can be added to a routing as an operation. The vendor, work center and routing can be setup as any other subcontracting operation. See subcontracting part 1 for details.
The routing for such could for example look like below, where the expected transport cost is defined as $3. Note that the operation is without any times, it’s purely to create a purchase order in order to incorporate the transport charges into the cost of the finished product.
When you then create your purchase order for the subcontracting trough the subcontracting worksheet you also get a second purchase order in the suggestion.
The second purchase order is for the transportation costs and will stay open to be match with the transportation cost invoice when received. It is linked to the operation on the production order the same was a regular subcontracting purchase order.
This is a quite straight forward way of doing it, it works well in a standard cost environment (as well as FIFO and average) and there is no prerequisite of having to use a transfer order to ship of receive products from the subcontractor.
The downside of this method is if you receive invoices from the transportation company that covers multiple shipments, such as a monthly invoice, then this will be a bit hard and cumbersome.
Adding a Transportation Cost Accrual Operation to the Routing
The last method is to setup a separate operation in the routing that will add some costs that represent the expected transportation costs. By configuring this correct way you can get Dynamics NAV to automatically post the transportation costs against an accrual account when the production order is finished. The accrual is then later reversed when the invoice is received from the transportation company.
What you need for this method is a work center to handle the accrual posting. The work center should be setup with a separate posting group to control the general ledger account, and the flushing method should preferable be setup a backward flushing (so it does not add any additional steps to the operation to complete the production order).
This is how to do it; setup the work center with the Unit Cost Calculation equal to Units and the Specific Unit Code checked (just like a regular subcontracting work center). Set the Flushing Method to Backward to have Dynamics NAV to automatically finish the operation and apply the cost. Use a General Product Posting Groups that is specifically created for this purpose.
The posting setup is then done to post the cost into an accrual account for transportation costs.
We then add an operation using this work center to the routing where we specify the estimated transportation cost in the Unit Cost field.
Dynamics NAV will then automatically credit the freight accrual account according to the amount specified in the routing when the production order is changed to finished. See Production Order Posting to General Ledger for more details about how Dynamics NAV posts into the GL from production.
When the transportation cost invoice later arrives in the end of the month, you simply post this against the accrual account, which will create a debit transaction and reverse the accrued transport costs.
What remains in the accrual account in the end of the month (in case of differences between expected accrued costs and actual invoiced costs) need to be cleared manually through journal entries (probably move to some kind of variance account in the P&L).
This method is useful if you are receiving transportation costs invoices that span multiple production orders. It is also an easy method to maintain since it does not add much of work, all that needs to be done is to add the extra operation to the routing and the rest is handled by Dynamics NAV automatically.
That’s it for transportation costs related to subcontracting. If anyone has other methods to do this (maybe better ones) feel free to post a comment.
Upcoming blog posts about subcontracting will describe how to use warehouse receipts for subcontracting, how things can be simplified with some small code changes and how to setup Dynamics NAV when you are performing subcontracting on behalf of a customer.
Make sure to subscribe to not miss anything. 🙂
Note that I also have a Twitter account now where you can follow me: @microsoftNAV