Interfacility transfer

Summary

This page describes use cases where items should be transferred from one warehouse or store to another warehouse or store of the same retailer. These transfers ensure that items are available where and when they are needed.

Interfacility transfers are only available for click & collect orders.

A detailed documentation offering more background information on the interfacility transfer can be found here.

Use Case Examples

Expansion of the product range for a click and collect order

Interfacility transfers allow offering items for click & collect in multiple stores even though the item itself is not present in all of them. As soon as the item is requested in one of the stores, it can be transferred to the destination where it is needed.

When a customer places a click & collect order at a store and certain items are not in stock, those missing items can be transferred from another facility to the store where they are needed. That supplying facility fulfills the partial order and ships it to the facility where the customer placed the order. Once all items are available at the designated store, the customer can be informed that picking up the order is now possible.

Item is out of stock in a brick-and-mortar store

Imagine a customer visiting a brick-and-mortar store to purchase a certain item but the item is not available at all or not available in the correct size or colour. In that case, the store clerk can order the item from another facility where it is still available. The customer can then come back on a later day to try on and/or purchase the product in her store.

This feature is currently only available via API.

Implementation in fulfillmenttools

The described interfacility transfer process involves two types of facilities: a receiving facility in which the order can be picked up by the customer and a supplying facility from where the items are transferred.

1. Create an order including an interfacility transfer

Create an order and define the supplying facility in the order's delivery preferences.

  1. Create a click & collect order

    1. In the order's deliveryPreferences, the supplying facility must be explicitly set to indicate where the items will be sourced from.

      1. facilityRef: id of the facility that should receive the missing items

      2. facilityRef in supplyingFacilitiesConfigurations: Id(s) of the facility that should supply the missing items

      3. deliveryEvents.deliveryTarget: set to "SHIP_TO_STORE"

      4. deliveryEvents.deliveryTrigger: set to "DEFAULT"

REST API documentation for creating an order

If no items are available in the preferred facility, the system will still route the order to the next best facility for fulfillment based on configuration settings. A pickJob will be created in the preferred facility with only expected items.

Example body information for deliveryPreferences of an order in the interfacility case:

POST /api/orders
{
    "orderDate": "<ORDE-DATE>",
    "consumer": { ...
    },
    "tenantOrderId": "<ORDER-ID>",
    "status": "OPEN",
    "orderLineItems": [ ...
    ],
    "deliveryPreferences": {
        "collect": [
            {
                "facilityRef": "<ID-RECEIVING-FACILITY>",
                "supplyingFacilitiesConfigurations": [
                    {
                        "facilityRef": "<ID-SUPPLYING-FACILITY>",
                        "deliveryEvents": [
                            {
                                "deliveryTarget": "SHIP_TO_STORE",
                                "deliveryTrigger": "DEFAULT"
                            }
                        ]
                    }
                ]
            }
        ]
    }
}
```

2. Picking and handover in supplying facility

3. Picking in receiving facility

  • A pickJob is automatically created in the receiving facility containing all items that should be picked in the facility as well as expected items that are still needed to be transferred from the supplying facility.

  • Users can start picking the already available items immediately.

    • The status of the pickJob is immediately set to open (OPEN), allowing picking to begin for available items. Once all available items are picked, the status of the pickJob is automatically changed to WAITING_FOR_INPUT.

    • In a case only part of the expected items arrive in a delivery, picking can continue until all expected items have arrived. Only when all items are picked, the pickJob is finalized and marked as finished.

4. Transfer process and goods receipt

  • After the handoverJob in the supplying facility is completed, an inboundProcess with a purchaseOrder is created automatically in the receiving facility.

If there are two or more handoverJobs from different facilities, an inboundProcess is created for each facility.

  • When the delivery has arrived in the receiving facility, it can be identified by scanning the transferId.

  • After the receipt is set to status FINISHED, the expected stock is added to the inventory of the receiving facility and the pickJob is updated, converting expected items into existing items.

5. Finalizing the order

  • After the missing items have arrived, the system updates the pickJob and:

    • Converts the expected items into regular items.

    • Changes the status of the pickJob to OPEN, allowing the picking process to continue or begin.

  • With all items picked, the entire order can now be packed and is then, ready for the handover to the customer.

Last updated