Moving stock between locations is commonplace so it’s crucial to understand how transfer orders work in Business Central. In this post we will start with an explanation of transfers, before explaining in-transit locations and direct transfers, including why you might choose to use one over the other. Finally, we will cover how you configure pre-defined agents, agent services and shipping times for all your set transfer routes in Business Central.
What are transfer orders?
Transfer orders are one of the ways you can move stock from A to B in Business Central. The process involves a shipment and a receipt at two separate locations. Each transfer you post will adjust the amount of stock in a location correspondingly. Posted shipments and receipts are held as two separate records, so for each fulfilled transfer order, two posted records will be created.
A Business Central transfer order example
If we go to the Transfer Orders page and click ‘New’, we will generate a new record. In the header details, the three main fields we want to focus on are these highlighted below:

The ‘Transfer-from’ and ‘Transfer-to’ codes indicate where you want to move the stock between the In-Transit Code is mandatory, unless Direct Transfer is enabled.
In the ‘Shipment’ tab below, you can configure the ‘Shipping Agent’, ‘Shipping Agent Service’ and ‘Shipping Time’ on an individual transfer basis. The shipping agent relates to who the courier is. The shipping agent service relates to the service that courier provides. For example, next day delivery. Against the service, there’s a specified shipping time. In that instance, it would be 1D.
When you’re happy with the configuration, make sure the Posting Date field mirrors the day that the shipment will take place, click ‘Posting’ and ‘Post’ and ‘Ship’. Let’s say that this particular transfer was shipped on the 01/03/2022 and that the goods arrive on 04/03/2022. When the goods arrive, amend the Posting Date field to the new value and this time click post ‘Receive’. At this stage, as both steps of the transfer are completed, the record will be deleted.
This will now create two additional records: a Posted Transfer Shipment and a Posted Transfer Receipt. The posting dates on either will be different, assuming the goods weren’t shipped and received on the same day.
The process will be different, depending on if you are using Basic, Advanced or any warehousing at all. To see how Advanced warehousing works in relation to transfer orders, click here.
Use ‘Get Bin Content’ to populate transfer order lines
Rather than manually entering the quantity details into the transfer order line, another way to fill the lines of a transfer order would be to use the ‘Get Bin Content’ button. To do this, on a transfer order, add your ‘Transfer-from’ and ‘Transfer-to’ locations, as well as an ‘In-Transit Code’ value. Next, select the item(s) you wish to move on the line(s). After that, click ‘Actions’, ‘Functions’ and ‘Get Bin Content’. Next, add in the bin which you wish to move the stock from. Finally, click ‘ok’ and you should now have a line populated with the full amount held in the bin.

Use ‘Get Receipt Lines’ to populate transfer order lines
This function allows you to select quantities from recent inbound posted purchase receipts and move it onto a transfer order. In other words, if you have a purchase order, the stock may arrive at a location which isn’t where it’s usually stored. This function allows you to select the stock from a purchase record and transfer it to an alternative location.
To enable this functionality, make sure the ‘Ship-to’ field in the ‘Shipping and Payment’ tab of the purchase order is set to ‘Location’. You can do this manually, which will make a Location Code field appear, which you must enter a value into. Alternatively, you can fill in the the Location field on the ‘Receiving’ tab of the Vendor Card. If you know this is the location you will receive stock into each time you buy from this vendor, we recommend simply attaching a location code on the vendor card.
If you don’t have this set on the Vendor Card, you must remember to change the Ship-to code each time you wish to use the ‘Get Receipt Lines’ function. The Get-Receipt Lines function will only work if the system can see a matching Location Code in the purchase order header and transfer-from code on the transfer order.
Demonstrating ‘Get Receipt Lines’
To illustrate this functionality, create a purchase order. Make sure the ‘Ship-to’ field in the Shipping and Receiving tab is set to Location and the corresponding Location Code is populated.

Next, populate the purchase order lines, making sure the Location Code value matches the header.

Afterwards, click ‘release’ on the purchase order. Finally, post the receipt. Next, create a transfer order. On the transfer order, input a In-Transit Code value and a Transfer-from Code that matches the location on the purchase order. After that, click ‘Actions’, ‘Functions’ and ‘Get Receipt Lines’. The purchase order record should now be there. If you click into the record, it will show you the specific purchase lines. At this stage, after choosing the record, you can choose to bring all purchase lines across to the transfer order or only some. You should now have a transfer order with lines taken from a receipted purchase order.

In-Transit
The In-Transit field is in the header for a transfer order. As standard, you have two options available for the In-Transit code, these being ‘outsourced’ and ‘own’ logistics. You can also make additional in-transit locations, perhaps for individual courier services. The in-transit value shows you where stock’s held whilst a transfer movement occurs (particularly useful for longer shipment times, such as sea freight). This allows us to keep the item’s cost and value separate from either the shipping or receiving location. In Business Central, that stock is in an in-transit location after it’s been shipped but before it’s received.
Setting up an in-transit location
As standard, there are two in-transit locations: ‘Own Logistics’ and ‘Outsourced Logistics’. To set up an in-transit location, enable the ‘Use As In-Transit’ field in the General tab. Enabling this disables all warehouse-related fields as you’d expect. Typically, you wouldn’t set bins against an in-transit location. Like other locations, all in-transit locations require Inventory Posting Setup configuration.
Seeing how much stock is held in-transit
To see what stock is currently in-transit, go to the Items page and filter by Location Code.

Alternatively, if you go to the Items page using the search bar, you can click ‘SmartList’ and ‘Items By Location’. From this screen, you can filter the results.
One thing to note is that you can’t see the amount of stock in an in-transit location using a Physical Inventory Journal. This makes sense as these journals are used for stocktakes and given we can’t verify if stock levels are accurate moving between locations, it’s redundant giving you stock level figures.
Items damaged in-transit
When items ship, there’s a chance they may be damaged before they reach their receiving location. In the event of this, Business Central can accommodate for the loss of stock and incurring of costs. In situations where you are aware of the damage prior to receiving the goods, you can amend the Qty to Receive on the transfer order, after the shipment has been posted but prior to the receival being logged.

With this method, we still have to receive in last three items as the record can’t be deleted until the order is fully receipted. However, splitting the order into two receipts allows you to accurately choose which entry each relates. Then, on an item journal, if you create a negative adjustment and then select the quantity of goods and location where the goods were received into, you can fill in the Applies-to Entry field. This lets you remove the goods from inventory and write them off.
Logging the damage after receiving the goods
Where you notice goods are damaged after receiving them, you can manually adjust the available stock quantities. You do this using an item journal. Alternatively, use an Item Revaluation Journal to change the value of an item or ledger entry.
Direct Transfer
When you enable the ‘Direct Transfer’ field, it means there’s no need for an ‘In-Transit’ location. Generally, we recommend users employ an in-transit value. It allows you to pinpoint where stock is and not attach stock value to locations where the stock might not be.
Where might you use ‘Direct Transfer’?
You might use a direct transfer when you are transferring an item to a location without there being a need to input lead time on the order. For example where you have a warehouse split into several ‘locations’. Alternatively, if you are logging a transfer order retrospectively, you might not want to record an in-transit period as you know that there isn’t any, as the goods have arrived into the location they are being received into. However, it’s worth mentioning that direct transfers don’t work when using a location with Advanced warehousing.
Transfer routes in Business Central
A transfer route allows you to specify the individual length of time and method for delivery from one location to another.

Whenever you go to create a transfer order with these places, the values will be predefined from what you put in setup. On the order itself, you can change it. For example if my Shipping Time on Transfer Routes page is 6D, I can make this 4D on the transfer order itself. As the matrix is one dimensional, these values won’t pull through for the opposite journey. Each journey route has to be set.
Closing remarks
Thanks for reading! We hope this has been useful. Transfer orders in Business Central are a fundamental component to inventory and so understanding how they work is key. Transfer routes allow you to increase your accuracy in shipping times between locations.
If you have any feedback, questions or enquiries into what we do, click here. If you’d like to follow us on LinkedIn, click here. We are trying to become a more active and useful resource there. In future, we will post the links to our newest blogs on LinkedIn, so follow us there to not miss any.