> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kibocommerce.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Hold Shipments

The Hold Shipments feature allows shipments to be paused during the fulfillment process. Unlike configurable shipment creation, which delays shipment creation itself, Hold Shipments apply after shipments are created and already have inventory reserved.

<CardGroup cols={2}>
  <Card title="Fulfillment Concepts" icon="book-open" href="/concept-guides/fulfillment" horizontal data-rec="concept-guide">
    Understand the broader fulfillment architecture and workflows
  </Card>

  <Card title="Ship-to-Home Concepts" icon="book-open" href="/concept-guides/sth" horizontal data-rec="concept-guide">
    Understand ship-to-home fulfillment workflows
  </Card>

  <Card title="Fulfillment SLA Concepts" icon="book-open" href="/concept-guides/fulfillment-slas" horizontal data-rec="concept-guide">
    Understand service level agreements for fulfillment
  </Card>

  <Card title="Developer Reference" icon="code" href="/developer-guides/shipments" horizontal data-rec="developer-doc">
    See the Shipments API documentation for programmatic access
  </Card>
</CardGroup>

<CardGroup cols={2}>
  <Card icon="book-open" horizontal href="/concept-guides/fulfillment" title="Fulfillment Concepts">
    Understand the broader fulfillment architecture and workflows
  </Card>

  <Card icon="book-open" horizontal href="/concept-guides/sth" title="Ship-to-Home Concepts">
    Understand ship-to-home fulfillment workflows
  </Card>

  <Card icon="book-open" horizontal href="/concept-guides/fulfillment-slas" title="Fulfillment SLA Concepts">
    Understand service level agreements for fulfillment
  </Card>

  <Card icon="code" horizontal href="/developer-guides/shipments" title="Developer Reference">
    See the Shipments API documentation for programmatic access
  </Card>
</CardGroup>

<Card icon="circle-play" horizontal href="/video/ship-to-home-fulfillment" title="Watch: Ship-to-Home Fulfillment">
  See an overview of the ship-to-home fulfillment process
</Card>

<Card icon="circle-play" horizontal href="/video/fulfiller-overview" title="Watch: Fulfiller Overview">
  Get an introduction to the Fulfiller application
</Card>

Hold shipments are useful when you want to temporarily prevent shipments from progressing to fulfillment—for example, to align with business hours, prevent premature release, or apply a review period.

## Hold Shipment Creation

You can place shipments in **Hold** status either during shipment creation through APIs or later from the Order Admin UI or directly from the Fulfiller UI shipment details page, depending on your business needs. When a shipment is on hold, its associated inventory remains reserved. Providing a **Hold Release Date and Time** is optional. If no release date is specified, the shipment will remain on hold until you manually release it.

Hold status is supported for all shipment types, including BOPIS, Ship to Home (STH), Delivery, and Transfers.

### Create Shipments Directly in Hold (API)

You can configure shipments to be created directly in **Hold** status during the shipment creation process using Shipment API extensions. This allows you to apply custom business rules to determine when shipments should start in Hold.

You can also move an existing Ready shipment to Hold status using the Hold API.

### Place a Ready Shipment on Hold from Order Admin

You can place a shipment that is currently in Ready status on hold directly from the Order Admin UI without using the API. The Hold Shipment option appears in the Update Shipment dropdown on the Shipments tab and is only visible when the shipment status is Ready. This option is hidden for all other statuses (Cancelled, Fulfilled, Backordered, etc.) and is only available when the Shipment on Hold toggle is enabled in Site Settings.

<Frame>
  <img src="https://mintcdn.com/kibocommerce-59e68a4a/EkdospAR8vd50L77/img/hold-setting.png?fit=max&auto=format&n=EkdospAR8vd50L77&q=85&s=d123e9e54abab1e9e0963f34a8739b42" alt="Hold Setting" width="1308" height="618" data-path="img/hold-setting.png" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/kibocommerce-59e68a4a/95UZMytxbfAXjQCr/images/HoldShipmentButton.png?fit=max&auto=format&n=95UZMytxbfAXjQCr&q=85&s=81f0a24aa4eff1b65270aaaea6ccfebc" alt="Hold Shipment Button" width="1865" height="500" data-path="images/HoldShipmentButton.png" />
</Frame>

When you click Hold Shipment, a confirmation dialog appears where you can optionally specify a Hold Release Date and Time before confirming. If no release date is provided, the shipment remains on hold until you manually release it. If you cancel the action, the shipment remains in Ready status with no changes.

<Frame>
  <img src="https://mintcdn.com/kibocommerce-59e68a4a/95UZMytxbfAXjQCr/images/HoldShipmentDatepicker.png?fit=max&auto=format&n=95UZMytxbfAXjQCr&q=85&s=21bacc9ce6d95caa17615fa26eb1232a" alt="Hold Shipment Datepicker" width="908" height="756" data-path="images/HoldShipmentDatepicker.png" />
</Frame>

This action is permission-controlled — only users with Shipment Update permissions can view and use this option.

### Place a Ready Shipment on Hold from Fulfiller UI

Fulfillment users can place a shipment on hold directly from the Actions dropdown on the Shipment Details page in the Fulfiller UI, without needing to switch to Order Admin.

* The **"Hold Shipment"** link is visible in the Actions dropdown only when the shipment status is **Ready**.
* This option is hidden for all other statuses (e.g., Fulfilled, Cancelled, Future, Backordered etc).
* The option is only available when the **Shipment on Hold** setting is enabled at the site level.

When you click **Hold Shipment**, a confirmation dialog appears where you can optionally specify a Shipment Release Date and Time before confirming. If no release date is provided, the shipment remains on hold until manually released.

<Frame>
  <img src="https://mintcdn.com/kibocommerce-59e68a4a/busmGbDy_yFyveUh/images/FFUIholdshipment.png?fit=max&auto=format&n=busmGbDy_yFyveUh&q=85&s=8376adf812a7c5a34f92a6981da45232" alt="FFU Iholdshipment" width="1912" height="449" data-path="images/FFUIholdshipment.png" />
</Frame>

## Release Shipments on Hold

Hold shipments can be released manually or automatically.

### Manual Release

When the **Manual Release** option is enabled in Site Settings, the **Release for Fulfillment** button appears on the Shipments tab in Order Admin. This button is only available for shipments in Hold status.

<img src="https://mintcdn.com/kibocommerce-59e68a4a/v4PoNWPrY1Z21K53/img/1761657200905.png?fit=max&auto=format&n=v4PoNWPrY1Z21K53&q=85&s=dc18691b9ffd1cbf66e033e785424afc" alt="" width="1862" height="522" data-path="img/1761657200905.png" />

* Clicking **Release for Fulfillment** changes the shipment status from **Hold** to **Ready**, allowing shipment to continue through the normal fulfillment workflow.
* Fulfillment users can also release a shipment directly from the Fulfiller UI. When the shipment status is **Hold**, a **"Release for Fulfillment"** link appears in the Actions dropdown on the Shipment Details page. Clicking this transitions the shipment status from Hold to Ready.

### Automatic Release

When the **Automatic Release** option is enabled and configured with an interval, a Kibo background job `ReleaseHoldShipment` runs at the specified frequency.

* The job scans all shipments in Hold status.
* Any shipment whose **Shipment Release Date** is less than or equal to the current timestamp is automatically released and moved to **Ready**.

## Update Shipment Release Date

If a shipment is in Hold status and has a **Shipment Release Date**, Users can update the Shipment Release Date and Time from the Shipments tab in Order Admin (for shipments currently in Hold). When clicking the pencil/edit icon next to the field, a date-time picker opens allowing selection of both date and time.

* <img src="https://mintcdn.com/kibocommerce-59e68a4a/Tt_xgrUgWofJH_Sj/img/shipment-release-date.png?fit=max&auto=format&n=Tt_xgrUgWofJH_Sj&q=85&s=fca3f7e246f8d61e2509545c4203434a" alt="Edit Shipment Release Date on Shipment Tab" width="1830" height="474" data-path="img/shipment-release-date.png" />

Shipment Release Date can also be updated via `holdReleaseDate` API.

## Viewing and Filtering Hold Shipments in Fulfiller UI

### Viewing Shipment Release Date

Fulfillment operators can view the Shipment Release Date directly on the FFUI workflow page for shipments currently in Hold status. The field appears below the Shipment Status field and displays the date and time in the user's local timezone.

The field is read-only — it cannot be edited from FFUI. It is only displayed when both of the following conditions are true:

* The shipment status is Hold
* A `holdReleaseDate` value is set on the shipment.

<Frame>
  <img src="https://mintcdn.com/kibocommerce-59e68a4a/95UZMytxbfAXjQCr/images/ShipmentHoldStatusandShipmentReleaseDate.png?fit=max&auto=format&n=95UZMytxbfAXjQCr&q=85&s=9c393de710381397b5c6796e7ac3ccc5" alt="Shipment Hold Statusand Shipment Release Date" width="1900" height="542" data-path="images/ShipmentHoldStatusandShipmentReleaseDate.png" />
</Frame>

If the shipment status changes from Hold (e.g., after manual or automatic release) to Ready, or if the `holdReleaseDate` value is cleared, the field is automatically removed from the view.

### Filtering and Searching for Hold Shipments

Fulfillment users can filter and search for shipments in Hold status in the Fulfiller UI to monitor, plan, and manage held shipments.

**Using Advanced Filter**

To filter shipments by Hold status:

1. Navigate to the shipments page in Fulfiller UI
2. Click on **Advanced Filter** to expand the filter options
3. Open the **Shipment Status** dropdown
4. Select **Hold** from the available status options
5. Click **Apply Filter**

<Frame>
  <img src="https://mintcdn.com/kibocommerce-59e68a4a/95UZMytxbfAXjQCr/images/AdvanceFilterShipmentHoldStatus.png?fit=max&auto=format&n=95UZMytxbfAXjQCr&q=85&s=56a541da17e090d10f2958f6c19204d7" alt="Advance Filter Shipment Hold Status" width="1877" height="471" data-path="images/AdvanceFilterShipmentHoldStatus.png" />
</Frame>
