Skip to Content
Technical Articles

Advanced supply chains with SAP Extended Warehouse Management – “Direct loading of finished goods”

Hi everybody,

within one of my last projects we have implemented a factory outbound process with SAP Extended Warehouse Management (SAP EWM) which allows customers to build stock transfer orders dynamically based on the production output. I am happy to share this process with you today.

Business requirement:

The production sites and the warehouses are in different locations and shuttle trucks are used to carry the finished goods from production sites to the warehouses.

The sequence of the finished goods is not predictable and the production sites have very limited space for storing finished goods in the outbound. Therefore planning of the stock transfer and the shuttle truck loads is not possible. It is required to build the shuttle truck load dynamically during loading the trucks.

The following picture illustrates the business process:


SAP EWM – Direct Outbound Delivery to Another Plant

SAP EWM is able to create direct outbound deliveries. These deliveries are sent to the connected enterprise management system (SAP ERP or SAP S/4HANA).If the goods recipient of the direct outbound delivery is not assigned to an external customer but to another plant in SAP S/4HANA or SAP ERP a stock transfer order (STO) is created first followed by a replenishment delivery with reference to the STO.

And… quantity changes, new items or deleted items in EWM automatically update the stock transfer order and the outbound delivery in SAP S/4HANA or SAP ERP.

This function is used to fulfill the business requirement.

The SAP EWM process creates the stock transfer order dynamically. Whenever a pallet is loaded to a truck the system assigns the corresponding handling unit to the existing outbound delivery in SAP EWM which automatically updates the STO and the outbound delivery in SAP S/4HANA or SAP ERP

The following picture illustrates the document flow between SAP EWM and SAP S/4HANA.

It’s simple to run this process in SAP EWM. The process starts with a handling unit which is ready for loading and goods issue. Therefore the HU should not have reference to an inbound delivery and it should be located within a storage type that allows goods issue posting (storage type settings).

The second step is the creation of the direct outbound delivery with the SAP EWM app “Outbound Delivery Orders” (transaction code /SCWM/PRDO). You can use the standard document type OPIG (Outbound Delivery for Pickup) for example.

Use the business partner which is used as customer number of the receiving plant as ship-to-party. You can check the business partner in table T001W for example.

The last step is the assignment of the handling unit to the direct outbound delivery order. You can do this on the handling unit tab using the function “Create”. Enter the handling unit and the item type you want to use e.g. the standard item type “OPPG” (Packaging Outbound Delivery without picking).

When you save the direct outbound delivery SAP EWM immediately sends a message to the connected enterprise management system (SAP ERP or SAP S/4HANA) to create a stock transfer order and an outbound delivery.

The following SAP S/4HANA / SAP ERP function modules are used. They are called as queued remote function calls (qRFC).

Create stock transfer order: /SPE/CREATE_STO_FOR_DIRDLV

Create outbound delivery: /SPE/DELIVERY_CREATE_FROM_STO

Whenever you update the direct outbound delivery order in SAP EWM the stock transfer order and the outbound delivery are updated as well e.g. in case of additional handling unit assignments.

A further business benefit is the capability of the stock transfer order process to take over the packaging data from the outbound delivery to the inbound delivery. This enables a complete automatic inbound process in the receiving warehouse – even without manual interaction if warehouse automatization is used.

The described process is available for the following deployments:

  • Decentral SAP EWM connected to SAP S/4HANA
  • Decentral SAP EWM connected to SAP ERP
  • SAP EWM embedded in SAP S/4HANA

Customer specific RF transaction 

To enable the loading stuff to work only with mobile devices a customer specific RF transaction was built based on the RF framework to assign handling units to an outbound delivery by scanning a handling unit and a door.


The direct outbound delivery to another plant process in SAP EWM and S/4HANA/SAP ERP enables our customers to fully automate the supply chain between factories and distribution centers.

It allows to dynamically built the shuttle truck loads without the need to plan the stock transfers in advance. This is relevant in particular if the exact sequence of the finished products of a factory is unpredictable and if there is no space to store the finished goods in the outbound area of a factory.

Find more information in SAP help: “Direct Outbound Delivery to Another Plant”




You must be Logged on to comment or reply to a post.
  • Hi Andreas,


    Thanks for the post :).


    Is this functionality part of Embedded EWM in S/4 HANA 1909 releases or is it planned for 2020 releases?





    • Hi Virendra,

      it's already part of SAP EWM since many releases. And it's supported not only by SAP S/4HANA but also by SAP ERP (SAP ECC 6.0)...

      Best regards


  • Have a nice new, it has been waiting.

    For missing functionality, i have been configured a dummy storage type for direct loading of finishing goods in SAP HANA 1709 version.

    Best Regards

    M.Ozgur Unal

  • Hello Andreas.


    Thank you for the detailed post about the Direct Goods Issue, We have developed custom solution to automatically create the STO and Goods issue and Receive it in Warehouse.


    I have an question in function "/SPE/CREATE_STO_FOR_DIRDLV", whether system considers the open purchasing requisitions for that material where ODO is initiated. This is absolute need from business perspective to have the correct open requisitions, since this is driving for manufacturing planning.




    • Hi Parthe,

      we had the same challenge to consume the open purchase order requisitions in real time when the STO is created and not to wait for a MRP run.

      The STO created from EWM did not consider the open purchase order requisitions when it was created but we used a simple BAdI in S/4HANA to connect the STO items with purchase order requisitions.

      best regards

    • Hi,

      it works for inter (different company codes) and intra (same company codes) company STOs!. I did not use it with SOS stock yet.

      best regards


  • Hello Andreas,

    Thank you for your great blog.

    I'm working on testing this function in my S4HANA 1909 system.

    When I want to reduce the delivery item, I use cancel picking transaction and then reduce the entire delivery item quantity to zero; after that, the system automatically deletes the corresponding PO item.

    Not sure if that's correct processing step.

    just a couple of points I would like your opinions if possible.

    1. Does the item type of the EWM delivery have to be irrelevant to picking?
    2. When you built the custom function to work only in RFUI, did the final delivery have multiple items corresponding to the same number of HUs?

    3. There is an issue related to shipping point determination because it seems the system is unable to get the correct Loading Group from the material master in S4HANA so the queue is stuck

    I check the queue container and it is true that the value of Loading Group is blank. So I don't know how it is determined in EWM.

    When I create another entry in the table with the Loading Group value as blank, the system is able to create the PO and delivery. However, the correct value of the Loading Group from the material master is used instead of blank value.

    So to use this functionality of EWM, do we have to maintain an entry with Loading Group value as blank in the table so that PO and delivery can be created in ERP?

    • Hi,

      let me try to answer to your questions...

      1. The item type can be relevant for picking. It would enable you to use the picking strategies to find corresponding stock. In the business case I described we already have the stock in front of us which we want to ship and therefore we just assign the HU to the direct delivery. In this case picking is no more relevant.
      2. When you assign HUs to a direct outbound delivery each HU item will be an own delivery item.
      3. I remember the issue with the loading group which is not sent to ERP from EWM but which is relevant for determinations in ERP. There are two options to solve the situation... use entries with loading group space or use a small extension when the delivery is processed in ERP (interface BAdI on ERP site) and fill the loading group from ERP master data.


  • Hello Andreas,

    Very nice blog. Just wanted to give you heads up that in case of Direct STO delivery from EWM, the receiving storage location is blank and is not updated in S/4. Customer has to implement the note.

    2911725 - Receiving storage location not determined for STO



     Below screen shot from your blog also does not captured the receiving sloc in STO PO.:)


    Thanks & Regards

    Shailesh Mishra

  • Hey Andreas,

    First of all, thanks a lot for your post! I have a question, which deals with the shipment of goods with alternative stock types.


    Stock Transfer from one storage location A (EWM managed) to storage location B (IM-MM managed) (same plant) triggered by a direct outbound delivery in EWM (SCWM/PRDO).

    Process/Document flow:

    Outbound Delivery Order (EWM) >> Stock Transport Order >> Outbound Delivery ERP > Automatic creation of Inbound Delivery (ERP) to receiving storage location.


    The process works totally fine as long as we use free stock. But is it somehow possible to send stock with the following characteristics?

    • Q-stock (Stock still in quality inspection)
    • Blocked Stock
    • Stock with an active inspection lot

    Because if we change the stock type to Q/Blocked stock the process does not work anymore and the corresponding inbound delivery is not created. However, this would be necessary to fulfill the process/customer requirements.

    Do you have any idea/experince how the the shipment of Q/blocked stock can be implemented in this process?

    Thanks and best regards,