Fulfiller UI Overview

In the Unified Commerce platform, the fulfiller service performs all the fulfillment-related calls to the systems that maintain order and shipment related data. This interface is accessed through the UCP Admin at Main > Fulfiller

This guide introduces the Fulfiller UI dashboard and basic information about viewing shipments. For more information and walkthroughs of how to process specific fulfillment types, see the Fulfillment Methods guides.

For more information about the corresponding APIs and instructions for how to fulfill shipments through the API instead of the interface, see the Shipment API documentation and API walkthrough.


There are two widgets on the homepage, the Shipment Quick View and Assigned Shipments, in addition to the navigation menu. 

  • Store Selection: Select the fulfillment location at the top of the menu. Admins may be set to All Stores by default and can change it by clicking the text to select a specific location.
  • Shipments in Process: Shows each fulfillment step and number of associated shipments.
  • Pick & Pack: Prepare shipments for fulfillment. This will only be displayed if a location has been chosen in the store selection (not All Stores) and pick waves are enabled for that location group.
  • Receive Transfers: If transfers are enabled, accept shipments from another fulfiller. This will not be displayed if the location is not allowed to use transfer shipments.
  • Links to Home, Help, Settings, and Log Out.

The Fulfiller navigation menu

Shipment Quick View 

The Shipment Quick View is the first widget on the dashboard and displays shipments that may require attention such as late shipments, express shipments, and pickup shipments. This module provides information about these shipments at first glance, and also allows you to click Order Note to add an internal note to the order that the shipment belongs to. 

Click any shipment in the table to open its details page.

The Shipment Quick View module on the homepage

Assigned Shipments

The Assigned Shipments widget counts the number of assigned shipments currently in each fulfillment step. The fulfillment method tables that are displayed are limited to those methods that are enabled for the current location. 

Clicking any row in this widget will take you to a listing page that displays all shipments for that fulfillment step and allows you to continue their fulfillment. 

The Assigned Shipments widget on the homepage

Search for Shipments

Shipments can also be found via the search bar at the top of the interface. You can filter shipments on the following fields when typed into the quick search bar:

  • Order Number (exact match)
  • Shipment Number (exact match)
  • Destination Contact Short Full Name (contains match)
  • Destination Contact Address Line 1 (contains match)
  • Email (exact match)
  • Item Name (contains match)
  • External Order ID (contains match)
  • Order Reference Number (exact match; this refers to the parentCheckoutNumber used in the Commerce APIs which is passed from orders to shipments)

You can also expand the Advanced Filter menu to view more options. Additional terms that can be searched for through this menu include customer information and phone number, item product code, shipment status, order payment status, the submitted date of the shipment, and the return number and status. However, the Advanced Filter will only return exact matches. For example, if you search for a Customer Last Name of "Smi" then the results will not include any customers with the last name "Smith."

Multiple terms can be applied in one search query from either the quick search bar or the Advanced Filter menu.

Close-up of the Advanced Filter search options

The search results will be displayed as a listing page that includes all shipments fitting the criteria. From this listing page, you will be able to view more details or continue fulfillment.

Viewing Shipments

Shipment information is displayed slightly differently depending on whether you are viewing a single shipment details page or a multiple shipment listing page. However, some details apply to both page types.

Shipment Notes

For instance, both pages display shipment notes. It is important to understand that shipment notes are unique and separate from order notes. They are not copied onto any child shipments or order-level logs, but are displayed on the particular shipment they were created for in the Fulfiller and Admin UIs. A shipment note cannot be created or edited in the Fulfiller UI, only via the Shipments API.

When a shipment is rejected (including when it is split, reassigned, or transferred), the location that rejected it is tracked in shipment notes. This note will log the location, UPC, Part #, SKU, Quantity Declined, and Reason for each rejected product. This helps prevent shipments from being manually reassigned to a location that previously rejected it. 

Shipment Type Limitations

There are some shipment types that have limitations on the actions you are able to perform on them in the Fulfiller UI, regardless of whether you are viewing them on their shipment details page or a multiple shipment listing page.

  • If the shipment is fulfilled and part of an imported historical order then there will be a message in the top right of the shipment summary informing you of that. You will not be able to view any workflow steps and you can only perform returns, refunds, or credits on that shipment if the ability was enabled in the site settings prior to import.
  • If the shipment is in the Future state (which means that it was created with future inventory), then it will not be fulfillable yet. You will only be able to view the shipment, cancel or reject it, and edit the order notes. If it must be fulfilled, you must edit the shipment status from the Order Admin UI. Future shipments will only be fulfillable in the Fulfiller UI when the inventory becomes available and the shipment moves to the Ready state.
    • Additionally, Future shipments will not be displayed on the Fulfiller dashboard by default. In order to view these shipments, you must search for them such as by filtering for the "Future" status in the Advanced Filter menu.

If your implementation uses order reference numbers (the parentCheckoutNumber in the Commerce APIs), then that value will not be displayed in shipment details by default. Toggle this field on by activating the displayOrderRefNumber setting in your custom fulfiller theme.

Shipment Details Pages 

When viewing a shipment details page, such as from the Quick View widget, switch between tabs to view details such as items and pricing, customer information, history, shipment notes, and order notes. Below this basic information will be a list of the steps in the order's fulfillment method where you can continue processing the shipment, such as the examples shown in the STH and BOPIS walkthroughs.

Example of a shipment details page

If the shipment is in the Fulfilled state, a Create New Shipping Label button will be displayed to support cases where a shipment was returned and needs to be resent with an updated shipping label. Clicking this button opens a modal for you to enter package information and input a new tracking number just like the Prepare for Shipment step of the STH workflow. If there were multiple packing slips for this shipment, you can select which slip you want to print the new label for. This new label will also be available for shipping manifests.

Fulfilled shipment details with a callout for Create New Shipping Label

Shipment Listing Pages

When viewing a shipment listing page, such as from search results or the Assigned Shipments widget, all results will be displayed and filtered by the selected fulfillment type, status, and/or search terms. These entries always display the shipment number, current fulfillment status, assignment information, items, and pricing information. The customer details, history, shipment notes, and order notes are in expandable sections underneath that shipment information. 

In this case, you must click Finish Fulfilling Shipment to open the details page to view its shipment steps and continue with fulfillment.

The shipment listing page with an example shipments

Blocked Shipments

Some shipments in the Fulfiller UI may be blocked from fulfillment depending on the payment status of the order - if the status is Unpaid or Errored, then all shipments on the order will be blocked from being fulfilled regardless of any individual shipment's current state. The shipment will only be able to progress when the order has pending or paid payments on it (Pending, Paid, Pending and Errored, or Paid and Errored).

Additionally, shipments may be blocked when their order is in Pending Review status and has not been accepted by the system yet. This depends on the site setting to allocate inventory for orders in pending review status. When enabled, the system will create shipments for Pending Review orders and reserve inventory for them. These will be blocked until the order is accepted, after which they will be fulfillable. 

Identifying Blocked Shipments

When viewing search results or the list of shipments in a fulfillment step, blocked shipments will be highlighted with a yellow header and have a red notice next to the order number. This notice may display "Payment Error" or "Pending Review" depending on the case.

Example of a shipment with a highlighted header and the Pending Review label

When viewing the shipment details page of a shipment blocked by errored payment, you will not be able to progress in fulfillment and an error message will be displayed. 

Example of a shipment details page with a payment error message

Opting Out

You can opt out of all blocking behavior by editing your Fulfiller theme. If you do not already customize the Fulfiller UI, you will have to add the language file to your theme. Add the below setting called "FulfillableShipmentFilter" to your language file (such as en.json or fr.json) inside the "TENANTSETTINGS" object, with enabled set to false to opt out. This setting also lets you customize the error message that will appear in the Fulfiller UI when fulfillment blocking is enabled.

"FulfillableShipmentFilter": {
    "enabled": true,
    "message": "Fulfillment disabled for shipments associated with orderNumber"

Barcode Scanners

Scanning capability is available for the Validate Stock step of most shipment types, such as this STH example, making it easier to input the quantity you have in stock for that shipment. Both USB plug-in laser and camera scanners are supported, though camera scanners are only available through the mobile fulfiller application and will use the camera of that mobile device. 

By default, you can input your laser scan into the text field of the In Stock column in the Validate Stock table. However, you can also implement a "Scan UPC/SKU" text box (shown below) that displays above the table to input your scan results. This is a more straightforward method compared to the default interface, but requires a custom theme change to display the field. In your theme, simply activate the isItemUPCScanAllowed setting within the language file.

Validate Stock step with a callout for the alternate scanning text field

You may also want to reverse the way that the Validate Stock table displays counts when using laser scanning. By default, the In Stock field is populated with the expected count of the order and the fulfiller is expected to decrease this value for any quantity they are rejecting. However, you can instead start the In Stock count at 0 and scan items to increase the value. To enable this behavior, find your ValidateStockQuantity theme settings and set defaultZeroQuantity to "1" and set both defaultShipmentQuantity and locationInventoryQuantity to "0" as shown below.

"ValidateStockQuantity": {
    "defaultZeroQuantity": 1,
    "defaultShipmentQuantity": 0,
    "locationInventoryQuantity": 0