Skip to main content
Transfer shipments allow other locations to provide items to a fulfillment location that does not have those items in stock. When this happens, Kibo creates a child shipment that is assigned to a transfer location. These items will be shipped to the fulfillment location while the parent shipment is put into a Waiting for Transfer state. Transfer shipments can physically arrive at the receiving location as multiple packages, each with its own tracking number and set of items. When Multi-Package Receiving is enabled for your tenant, fulfillers can receive each package independently — without waiting for the entire shipment to be physically present — and the shipment progresses through a Partially Received state until all packages have been acknowledged.

Watch: Transfer Shipments

Learn how transfer shipments work to fulfill orders from alternative locations
Transfers can be used with either Buy Online Pickup in Store (BOPIS) or Consolidation shipments. BOPIS transfers provide items to a customer pickup location when it doesn’t have those items in stock, while consolidation transfers combine all items at a centralized location to be shipped to the customer together instead of splitting the shipment. This guide covers the basic transfer shipment process.

Transfer Shipment Process

When a transfer is created, the parent shipment will go into Waiting for Transfer step after validating stock and can only move on to finish fulfillment once all associated transfers have been received by the location. Transfer shipments will go through their own process of validating stock, being shipped, and validated by the recipient location. The diagrams below show how transfer shipments fit into their parent shipments’ fulfillment flows. For more details about all shipment processes, reference the Fulfillment Method Types guide. Diagram of a pickup workflow with transfer steps Diagram of a ship to home workflow with transfer steps

Select Transfer BPM

If you want to use a different BPM for transfer shipments than the default one, you can change it at the location group level. This will determine the steps that all transfers go through.
  1. Go to Main > Orders > Location Groups.
  2. Click a group in the main Location Groups table to open a similar location selection screen.
  3. Click Config Settings in the header to switch to another configuration screen, which displays other options that are applied to all locations in the group. The location groups configuration page with a callout for the Config Settings tab
  4. Select a site in the left-hand navigation bar.
  5. In the BPM Configurations section, select your preferred BPM from the Transfer drop-down menu. The BPM Configurations section showing the Transfer BPM option
  6. Click Save.

BOPIS Transfers

Transfer shipments for BOPIS get created when one of the following two scenarios occur:
  • If there is not enough inventory at the selected pickup location but there is inventory available at transfer-enabled locations, then Order Routing automatically creates transfer shipments to transfer inventory to the pickup location.
  • While fulfilling the order, the fulfiller at the pickup location finds that there is not enough quantity at the location and requests a transfer for the quantity that isn’t available. Order Routing determines the optimal qualifying locations to transfer inventory to the parent location.

Configure BOPIS Transfers

In order for fulfillment locations to provide pickup location with missing inventory via transfers, you must first enable BOPIS transfers in the site settings:
  1. Go to System > Settings > General > Site and locate the Transfer settings.
  2. Toggle on BOPIS transfer.The site Transfer Settings with BOPIS transfers toggled on
  3. If desired, toggle on Always create BOPIS transfer shipments to allow creation of a transfer shipment regardless of inventory availability. Then select a default shipping method.
  4. If desired, toggle on Cancel transfer/shipment item to cancel transfer shipments or items whenever a cancellation occurs on the parent BOPIS shipment or item. You can also restrict selected cancellation steps for the fulfillment process.
  5. Click Save.
Then, you must enable individual locations to perform transfers:
  1. Go to Main > Orders > Locations.
  2. Select a location from the table.
  3. In the Transfer settings section, toggle on Transfer Enabled.
    Close-up of the Transfer Enabled and Ship To Home Consolidation toggles
  4. Enter the usual transfer time and units.
  5. Click Save.

Customer Emails

There are two email messages that can be sent during the BOPIS transfer process to keep the customer up-to-date on the progress of their order and communicate with them that there are some items that must be waited on before the pickup is ready. Enable these emails in your site settings.
  • Transfer Shipment Created informs the customer that some inventory in their order was not available and is being transferred to their pickup location. This is triggered upon the creation of a transfer shipment.
  • Transfer Shipment Shipped informs the customer that their transferred items have been shipped and they should be on the lookout for a pickup email soon. This is triggered upon completion of the transfer shipment’s fulfillment, before it is received by the pickup location.

Request a Transfer

Transfers can be requested during the Validate Stock step of the fulfillment process.
  1. During Validate Stock, enter the In Stock quantity.
  2. Click Transfer Shipment to request a transfer for the remaining items. This button will appear as long as the available quantity is less than the target quantity of the shipment.Example of the Validate Stock step for a pickup order
  3. A pop-up will appear to confirm the transfer request. Enter a reason such as “Item Not Available.” These reasons may be customized for the implementation, and not the exact same list as shown here.Pop-up for items that are not in stock showing the drop-down menu with reason options
  4. Click Confirm. This will submit the request and the parent shipment will be placed into Waiting For Transfer.

Fulfill a Transfer

On the fulfiller interface dashboard, the user can see all transfer shipments that are assigned to the location in either the Shipment Quick View at the top of the screen (shown below) or the Assigned Shipments table below the quick view. Close-up of the Shipment Quick View widget on the Fulfiller UI with a Pickup Shipments tab To ship an assigned transfer:
  1. The first step is to validate stock by selecting the In Stock quantity.
  2. If there is enough available stock, click Proceed To Print Packing List. If not, request another transfer.
  3. Pack the shipment and send it to the fulfiller that requested it, much like a regular shipment.Examples of the completed Validate Stock step and the Proceed button
After the transfer is shipped, it will be listed in the Validate Incoming Transfer section of the receiving fulfiller’s Assigned Shipments table. The receiving fulfiller must acknowledge that they have received it: Standard receiving (single package or Multi-Package Receiving not enabled):
  1. Select an incoming transfer shipment to open the Validate Transfer Stock step.
  2. Indicate the available quantity that is now in stock from the transfer.
  3. Click Receive Incoming Items to mark the transfer as Received.Example of the Validate Transfer Stock step
When that is done, the parent shipment is released to continue its fulfillment process. Multi-Package Receiving (when enabled for your tenant): If your tenant has Multi-Package Receiving enabled and the transfer shipment contains more than one package, the Validate Incoming Transfer step displays a package-by-package view instead of the standard single item list. Receive each package individually using any of the three receiving methods. The shipment will enter Partially Received after the first package is acknowledged and automatically transition to Received/Fulfilled once all packages are complete. See Multi-Package Receiving for full details on receiving methods and exception handling.

Transfer Event Notifications

As transfer shipments are fulfilled, event notifications will be triggered in addition to the standard STH and BOPIS fulfillment notifications. Notifications will be sent for the following transfer shipment events:
  • Transfer Shipment Created
  • Transfer Shipment Assigned
  • Transfer Shipment Shipped
  • Transfer Shipment Sent to Customer Care
See Event Notifications for the template that these shipment status change events follow.

Multi-Package Receiving

Multi-Package Receiving extends the standard Receive Transfer Shipment process in the Fulfiller UI. When a transfer shipment physically arrives as multiple packages (boxes), each containing its own set of items, this feature allows fulfillers to receive each package independently rather than waiting for all packages to arrive before recording any receipt.
Note: Multi-Package Receiving is a tenant-level feature that is disabled by default. Contact your Kibo representative to have it enabled for your tenant. When the feature is off, the existing all-or-nothing receiving flow is unchanged — no UI differences, no new statuses, and no change in behavior.
Multi Package Receive Transfer Shipment Screen

How It Works

Once enabled, the Receive Transfer Shipments screen is updated to show a package summary for any incoming transfer shipment that contains multiple packages. This summary displays:
  • Total packages expected
  • Packages received so far
  • Packages still pending
The summary updates in real time as each package is received. A shipment enters Partially Received status as soon as the first package is marked received, and automatically transitions to Received/Fulfilled when the last outstanding package is acknowledged — no additional operator action is required.
Important: When a package is received, inventory for the items in that package is made available at the destination location immediately. Downstream actions (inventory availability, parent shipment updates, event notifications) fire per package — they do not wait for the full shipment to be complete
Partial Received Status

Receiving Methods

Fulfillers can receive each package using any of the following three methods. All three can be used within the same shipment — for example, Package 1 via tracking number scan, Package 2 via item-level validation, and Package 3 via the Receive Transfer Shipments screen.

Method A — Tracking Number Entry (Within a Package)

Use this method when all items and quantities within a package are physically present and accounted for.
  1. On the Receive Incoming Transfer screen, locate the package you want to receive.
  2. Scan or manually enter the package’s tracking number in the tracking number input field.
  3. Press Enter. The system resolves the tracking number to the matching package and marks it received immediately — no item-level scanning is required.
  4. The package summary updates to reflect the newly received package.
Important: Only use this method when every item and its full expected quantity within the package is physically present. If any shortfall exists — even for a single item — use Method B (item-level validation) to handle the exception.
Error handling:

Method B — Item-Level Validation (Within a Package)

Use this method when you need to scan and validate individual items within a package, particularly when a shortfall or damage is present.
  1. On the Receive Incoming Transfer screen, open the package you want to receive.
  2. Scan or enter each item within the package using the existing item scan flow. Barcode, UPC, and in-stock validation rules apply as normal.
  3. Once all line items have been entered, click Yes, Receive Package to mark the package as received regardless of whether quantities fully match the expected amounts.
  4. Review the package result:
    • All quantities match → Package displays a green indicator (Received).
    • One or more items are short → Package displays a green pill (Received) alongside a yellow pill (Pending Validation).
Note: Inventory is updated immediately for the quantities validated in the package — including partial quantities. This does not wait for exception resolution.
Shortfall and substitution handling:
  • If a short item is unique to this package (its expected quantity is not split across other packages in the shipment), the Substitute button is enabled immediately for that line item.
  • If a short item’s expected quantity is split across two or more packages in the shipment, the Substitute button is disabled for that line item in all packages it appears in. These items can only be resolved via the shipment-level exception panel (see Shipment-Level Exception Handling).
Error handling:
Method B Item Validation

Method C — Tracking Number or Shipment Number Scan (Receive Transfer Shipments Screen)

Fulfillers can also scan or enter a tracking number or shipment number directly on the Receive Transfer Shipments landing screen, without first opening an individual package.
Note: Today, scanning a tracking number on a multi-package shipment immediately marks the entire shipment Received/Fulfilled. With Multi-Package Receiving enabled, that same scan marks only the matched package as received and places the shipment into Partially Received.
Method C Receive Transfer Shipment Screen

Shipment-Level Exception Handling

Once every package in a shipment has been marked received, the system checks whether validated quantities match expected quantities across the entire shipment. If a mismatch exists on one or more line items, a shipment-level exception panel appears beneath the package listing. This panel provides two resolution options:
  • Request New Transfer — Request additional inventory to cover the shortfall.
  • Cancel Item(s) Off This Shipment — Cancel the short quantity.
Important: Both options in the exception panel remain disabled while any package is still outstanding (i.e., while the shipment is in Partially Received status). They become available only once all packages have been received and a quantity mismatch remains.
The Substitute button is not part of the shipment-level panel. It is available per line item at the package level immediately when a shortfall is found, provided the item’s expected quantity is not split across multiple packages in the shipment (see Method B above).
Request New Transfer N Cancel Items Buttons