The classic sales process is a three-step procedure: create a sales order, create a delivery with reference to the sales order, and invoice for the delivered goods. Handling the potential time gap between the goods issue and the invoice has long been an issue for organizations trying to keep their financial accounts and Profitability Analysis (CO-PA) in sync. SAP has provided a solution to the timing gap with enhancement package 5 for SAP ERP 6.0. It provides a way to value goods that have left the sending company but that have not arrived at the receiving company. Learn about this new function for capturing the goods movements and values associated with stock in transit and for handling the transfer of ownership between the selling and buying companies or plants.
Key Concept
Stock in transit is a special stock type to handle goods that have been issued from the factory and are en route either to another factory or to the final customer. Its purpose is to provide visibility into the quantities of goods en route and the value of this inventory, to handle the ownership of the stock (sender plant or receiver plant), and to support the process of returning damaged goods at the correct value. To fulfill this requirement, SAP has provided functionality in enhancement package 5 for SAP ERP 6.0 that allows you to handle such stock transfer processes regardless of whether they are intracompany (between plants in the same company code), are cross-company (between affiliated companies in the same group), or involve the end customer. The only prerequisite is that the time that the stock is in transit should be significant, which in accounting terms generally means it spans more than one accounting period.
Real-life delivery processes can involve goods crossing China by truck or being shipped from the Far East to the United States. That means the goods can be en route for weeks or even months before they reach their final destination. They are considered stock in transit, and from an accounting point of view, their journey time was a black hole until enhancement package 5 for SAP ERP 6.0. The enhancement package includes a new special stock type (T) and new movement types designed to value stock that is in transit for a lengthy period.
I introduced the idea of stock in transit in my article “Calculate Actual Costs Across Multiple Company Codes Using a New Business Function in SAP Enhancement Package 5 for SAP ERP 6.0.” In that article I included a diagram showing the main options for stock in transit. Another figure that I included in that same article includes two items: TF cross company and TF to Receiving CST. In this article I explain how to perform cross-company stock transfers (CST) and intracompany stock transfers (IST). Let’s look first at how the basic stock transfer process works without stock in transit:
- The purchasing company creates a stock transfer order using a purchase order (transaction code ME21N) to request goods from the sending company.
- The sending company creates an outbound delivery (transaction code VL01N) to document the delivery of goods to the sending company.
- The receiving company records the receipt of the goods (transaction code MIGO).The sending company performs a goods issue (transaction code VL02N) with reference to the delivery.
- The receiving company records the receipt of the goods (transaction code MIGO).
- The sending company creates a billing document (transaction code VF01) with reference to the delivery.
- The receiving company creates an invoice (transaction code MIRO).
In releases prior to enhancement package 5, your only option was to set up a one-step transfer to handle steps 3 and 4 where the outbound delivery for the stock transfer triggered both a goods issue from the sending plant and a goods receipt at the receiving plant. However, this was only useful if there was a negligible distance between the two plants. Stock in transit comes into play where there is a significant time lag between step 3, in which the sending company issues the goods from its inventory, and step 4, in which the receiving company receives the goods into its inventory. It is a special stock type to cover the time when the goods are in transit. Enhancement package 5 offers users three new options for handling the time lag between steps 3 and 4. You can activate these functions using the business function MM, Stock in Transit & Actual Costing (LOG_MM_SIT).
- The goods remain in the ownership of the sending company until they are received into the receiving company’s inventory. The stock in transit is assigned to the sending company and is shown on that country’s books. (You find it in reports such as transaction MB52 [Display Warehouse Stocks]). Transaction code VLPOD (proof of delivery) is then used to record the proof of delivery itself, along with the date and time, the actual quantity that arrived, and the reason for any differences in quantities.
- The ownership of the goods is transferred en route. This might be the case when the goods arrive in port, but are not yet at the receiving company’s factory. Again, transaction code VLPOD is used to transfer the goods from the sender’s transit stock to the receiver’s transit stock and record any difference. At this point the goods become the property of the receiving company and appear on its books. Transaction code MIGO is then used to receive the goods from the receiver’s transit stock into inventory.
- The goods immediately become the property of the receiving company when they leave the sending company’s inventory. They are booked into the receiver’s transit stock for the duration of the journey (and thus show on the receiving company’s books). Then transaction code MIGO is used to receive the goods from the receiver’s transit stock into inventory.
The process I have described so far assumes that everything goes smoothly and that all goods that leave the sender’s plant actually arrive at the receiver’s plant, but this is not always the case. For this reason I also look at the returns process to help you design your stock transfer scenario.
Track the Associated Postings in the Material Ledger
To understand how this flow works, let’s look at a Chinese company (plant 2820 in this example) that is selling goods to a US company (plant 2821 in this example). In releases prior to enhancement package 5, this kind of transfer would have appeared in the material ledger as an external purchase from China, even though the Chinese and the US plant belonged to the same group.
With the new business function this transfer is shown correctly as an intercompany purchase. Note that to use this business function you also need to activate the material ledger in both plants. To display the sample postings, follow menu path Accounting > Controlling > Product Cost Controlling > Material Ledger/Actual Costing > Detailed Reports > Material Price Analysis or use transaction code CKM3. Enter the material number (ACT-DCD), the plant (2820 for China), and the period (Figure 1).

Figure 1
Material price analysis in the selling company (China)
Note that the Consumption folder shows that three stock transfers have taken place to issue goods out of Chinese inventory. The folder Purchase order (grp) shows a movement of goods from Chinese inventory into US inventory where the goods now belong to plant 2821. Plant 2821 has its own transit stock, as you see from the fact that the line has transferred the goods to the receiver’s transit stock (TF to Rec. Val. CST). The folder Transfer posting – special stock shows goods in Chinese transit stock (special stock type T). From a Chinese perspective both have moved from free inventory to Chinese transit stock (TF to Iss. Val. CST) and are no longer available for available-to-promise checks. These goods can now move either directly to US inventory or via US transit stock. The special stock type T and the ability to perform transfer postings into and out of special stock are new functions.
To see more detail on the second posting, click the line containing document number 1000000201. Figure 2 shows the material ledger document and the movement of goods from Chinese inventory (plant 2820) to Chinese stock in transit (special stock type T in plant 2820). You could click the Source Document button to display details of the movement types and the account assignment, but first let’s look at the equivalent postings in the US plant.

Figure 2
A material ledger document showing movement from Chinese inventory to Chinese stock in transit
Again follow menu path Accounting > Controlling > Product Cost Controlling > Material Ledger/Actual Costing > Detailed Reports > Material Price Analysis or use transaction code CKM3. Enter the material number (ACT-DCD) and the period. However, this time enter 2821 for the US plant (Figure 3). In the folder Purchase order (grp) you again see three lines. The first two (GR to Val. Bl. Stock) document the movement to US transit stock. The final line (GR goods receipt) documents the arrival of goods from Chinese transit stock directly into US inventory. I look at the material document that records the arrival of our demo CD from Chinese transit stock.

Figure 3
Material price analysis in the receiving company (US)
To see more detail on the second posting, click the line containing document number 1000000204. Figure 4 shows the movement from the sender’s transit stock (special stock type T in plant 2820) to free inventory in the US plant (2821).

Figure 4
A material ledger document showing movement from Chinese stock in transit to US inventory
This time check the source document for the posting by clicking the Source Document button. Here you see the movement types 685 for the goods issued from the sender’s transit stock and 101 for the goods receipt into US inventory (Figure 5). Movement type 685 is new, as are the movement types for the other options. These movements are also important for the account determination. Here you see that the posting is assigned to account 893010.

Figure 5
A material document showing movement types
The key settings for stock in transit are actually controlled by the delivery type in the purchase order, so you now navigate from the material document to the purchase order. To find the purchase order, click the Purchase Order Data tab and then double-click the Purchase Order field. Figure 6 shows the purchase order that initiated the transaction. To see the Delivery Type (NCC2 in our example), choose the Shipping tab. To understand how to establish this process, I now explain the settings associated with the delivery type in more detail.

Figure 6
The purchase order for a stock transfer showing delivery type NCC2 (Iss. SiT -> Rec. Plant)
New Settings for Stock in Transit
To use the new functions, ask your administrator to activate the new business function using transaction SFW5 (access to this transaction is usually very restrictive). Activating the business function LOG_MM_SIT activates the following schedule line categories for cross-company stock in transit. Note that the numbers in parentheses are the associated movement types. For example, you see movement type 685 if you refer back to the material document (Figure 5):
To display the delivered options follow IMG menu path Sales and Distribution > Sales > Sales Documents > Schedule Lines > Define Schedule Line Categories or use transaction code VOV6. The results are shown in Figure 7 with N1 to N3 being used for cross-company stock transfers (CST) and N4 to N6 for intracompany stock transfers (IST). I discuss the options for intracompany stock transfers later. There is also an option NU for sales to final customers.

Figure 7
New schedule line categories for stock in transit
First, select the first line in Figure 7 to look at the settings for N1 (Receiving CST). This action takes you to the settings shown in Figure 8. If you are familiar with the schedule line category settings you notice two new fields: MvT Iss. Val SiT (movement type for issuing valuated stock in transit) and Spec.Iss. Val. SiT (specification for issuing valuated stock in transit). This setting posts stock from Chinese inventory into US stock in transit using movement type 683. In the case of schedule line category N1, the new fields are blank because the movement of the goods from the receiver’s transit stock (receiving CST) to the receiver’s free inventory is made by recording a goods receipt using transaction code MIGO.

Figure 8
Settings for N1 (Receiving CST) — in other words, goods issue to receiver’s transit stock
The settings for schedule line categories N2 (Iss. CST – Rec.Plant) shown in Figure 9 and N3 (Iss. CST – Rec. CST) shown in Figure 10 both determine that goods are moved to Chinese transit stock using movement type 681 and are issued from Chinese transit stock using movement type 685. The difference between the two schedule line categories is the entry in the Spec.Iss. Val SiT field. In Figure 9 you determine that the goods move from Chinese transit stock to US inventory by entering a 2 in this field (GI from Issuing Valuated SiT to Receiving Plant). This was the example I used earlier.

Figure 9
Settings for N2 (Iss. CST – Rec.Plant) — in other words, goods issue to sender’s transit stock and from there to receiver’s inventory
In Figure 10, by comparison, you determine that goods are moved from Chinese transit stock to US transit stock by entering 1 in this field (GI from Issuing Valuated SIT to Receiving Valuated SiT).

Figure 10
Settings for N3 (Iss. CST- Rec. CST) — in other words, goods issue to sender’s transit stock and from there to receiver’s transit stock
The same basic pattern of schedule line categories is used to handle ISTs, but the movement types are different so that you can separate the account assignment for intracompany and intercompany movements:
- N4: Direct transfer from inventory into the receiver’s transit stock (68C)
- N5: Posting to the sender’s transit stock (68A) and then to unrestricted stock of the receiving plant (68I)
- N6: Posting to the sender’s transit stock (68A) and then to the receiver’s transit stock (68E)
You can check the delivered settings for ISTs using the same procedure described earlier. If your final customers are not local to your distribution center, you may also want to set up the delivery to the final customer to include stock in transit. For this scenario, use schedule line category NU (available in the same table once you have activated the business function) to move the goods to sender’s transit stock using movement type 687 and then movement type 601 to make the transfer when the proof of delivery records the arrival of the goods at the customer’s. Figure 11 shows the third option for the Spec.Iss. Val. SiT field, a sales-order-related goods issue from stock in transit.

Figure 11
Settings for NU (Iss. CST – Delivery) — in other words, issue from stock in transit to the final customer
Settings for Stock Transfer Process
Once you’ve drawn up a list of the schedule line categories you want to use to handle your stock transfer scenarios, the next step is to check the settings for your stock transfer orders. Start by checking the settings for each pair of plants between which you intend to make stock transfers. For CSTs, use document type NB, and for ISTs, use document type UB. For the new procedure you also want to remove the one-step transfer flag because you have said that the distance between plants and the time of the journey is significant.
The point is not to get rid of the flag, but to establish a link between participating plants. To establish a link between the Chinese plant and the US plant for the transfer follow IMG menu path Materials Management > Purchasing > Purchase Order > Setup Stock Transport Order > Assign Document Type, One-Step Procedure, Delivery Tolerance. Figure 12 shows the settings for CST orders between plant 2820 (China) and plant 2821 (US). Notice that you leave the One-Step (O…) column blank because a significant time lag between goods issue and goods receipt is expected.

Figure 12
Settings for stock transport orders between plants in different company codes
Now you need to link the purchase order document type (NB in my example) for the supplying plant (2820) with the SD delivery type for your chosen stock-in-transit scenario. Stay in the settings for stock transport orders, but this time, choose Assign Delivery Type and Checking Rule. For each purchase order document type and supplying plant, enter a delivery type (DlTy.) as shown in Figure 13. If you use the F4 help on this field, you see a range of new delivery types for use in connection with stock in transit, including NCC2, NCC3, and NCCR. You’re using NCC2 as the default (as shown in Figure 6).

Figure 13
Settings for delivery types
Now you need to link this delivery type with an item category for the outbound delivery. Follow IMG menu path Logistics Execution > Shipping > Deliveries > Define Item Category Determination in Deliveries or use transaction code 0184. Figure 14 shows the settings for the delivery types NCC2, NCC3, NCCR, and NCCU, all of which are linked with item categories of the same name.

Figure 14
Settings for delivery item categories
Finally, link the item category with the appropriate schedule line category. Follow IMG menu path Sales and Distribution > Sales > Sales Documents > Schedule Lines > Assign Schedule Line Categories. Figure 15 shows the link between the item categories and the schedule line categories. As you saw earlier, it is the schedule line category that ultimately determines how stock in transit is handled in your system.

Figure 15
Schedule line categories
Settings for Returns Process
Because goods can easily be missing in transit or damaged on long journeys, it’s important to think about your return process when you are designing your stock transfer process. The new business function results in new schedule line categories R1 to R3 being generated for CSTs and categories R4 to R6 for ISTs (Figure 16). You find them in the sales and distribution settings via the same route that you use to get to Figure 7 (I’ve just scrolled down in the list).

Figure 16
New schedule line categories for returns process
To look at details of one of the returns, select schedule line category R2. This line includes settings for two goods movements: the first from the receiver’s transit stock to the sender’s transit stock using movement type 691 and the second from the sender’s transit stock to the sender’s inventory using movement type 695 (Figure 17).

Figure 17
Settings for R2 (Iss. CST – Rec.Pl.Ret.) — in other words, a return from receiver’s transit stock to sender’s transit stock and from there to sender’s inventory
Janet Salmon
Janet Salmon joined SAP in 1992. After six months of training on R/2, she began work as a translator, becoming a technical writer for the Product Costing area in 1993. As English speakers with a grasp of German costing methodologies were rare in the early 1990s, she began to hold classes and became a product manager for the Product Costing area in 1996, helping numerous international organizations set up Product Costing. More recently, she has worked on CO content for SAP NetWeaver Business Warehouse, Financial Analytics, and role-based portals. She is currently chief product owner for management accounting. She lives in Speyer, Germany, with her husband and two children.
You may contact the author at janet.dorothy.salmon@sap.com.
If you have comments about this article or publication, or would like to submit an article idea, please contact the editor.