Skip to main content
This guide provides an reference list of the states that orders, shipments, and related objects may be placed in during the fulfillment process.

Watch: Shipment Pending Review

See how to handle shipments blocked by payment errors or pending review status

Order and Shipment States

An order may have multiple shipments that are in their own different states at any given point in time, depending on their fulfillment method, but the order-level status field gives a summary of the order’s states across the board. For more detailed information about order states, see the Order Statuses guide.
  • Pending: The order has been created offline or online in a cart and has not yet been submitted.
  • Submitted: The order has been submitted for validation with its billing and shipping information.
  • Validated: The order has passed validation and can be accepted for processing.
  • Pending Review: The order did not pass validation and must be either manually accepted or canceled.
  • Accepted: The order has passed validation and is accepted for processing.
  • Processing: The order’s shipments are in fulfillment and a payment action has been taken.
  • Canceled: The order was canceled and any payments have been voided or credited.
  • Completed: The order has been accepted, all shipments are Fulfilled, and payment is complete.
  • Errored: An unexpected error occurred during order submission, such as a timeout.
  • Abandoned: An unpaid, pending order timed out (after 2 days by default).
Though shipment-level statuses vary depending on the fulfillment method, shipments also include a simple fulfillment status field that indicates whether they are Fulfilled or Not Fulfilled.

Additional States

There are several other states that may occur while fulfilling some shipments, as well as payment statuses and order-level rollup statuses for both fulfillment and payments that are important to understand during the order management process. For instance, an order will only be moved to its final Completed status if the shipment rollup status is Fulfilled and the payment rollup status is either Paid or Paid and Errored. For more details about rollup statuses, see the Order Statuses guide.

Shipment States

A shipment’s status is exposed on the shipmentStatus field. These states are not restricted to a particular fulfillment flow, so any of them may occur regardless of fulfillment method.
shipmentStatus is distinct from workflowState, which tracks the granular step within a fulfillment workflow (for example PRE_ACCEPT_SHIPMENT or ACCEPTED_SHIPMENT). Status changes are published on the shipment.statuschanged event topic, while workflow changes are published on shipment.workflowstatechanged. See Event Notifications.
You cannot set a shipment’s status directly. Shipments move between these states by executing named workflow tasks, such as Accept Shipment or Customer Pickup. See the Shipments developer guide for the task-based workflow.

Order-Level Fulfillment States

Order-level data includes a fulfillment rollup status that summarizes the overall state of all its shipments in regards to fulfillment. These states include:
  • Customer Care: At least one shipment on the order is in the Customer Care status.
  • Not Fulfilled: No shipments associated with the order have been fulfilled.
  • Partially Fulfilled: One or more shipments have been fulfilled, but others are not.
  • Fulfilled: All shipments on the order have been fulfilled (ignoring canceled shipments).

Payment Object States

These are the basic payment statuses used at the payment object level, for each individual payment method. For more details, see the Payment States guide.
  • New: The payment instance has been created but no actions have been taken yet.
  • Pending: The payment has been accepted by the system.
  • Authorized: The payment has been accepted and authorized by a payment gateway.
  • Collected: Funds on the payment have been collected.
  • Voided: An authorized or pending payment has been voided and is no longer active.
  • Declined: The payment has been declined by either the system, the merchant, or the gateway.
  • Credited: The payment has been partially or fully credited.
There is also an order-level payment rollup status that summarizes the state of all payments on the order. This rollup status is displayed on the order details page of the Admin UI as well as order object data in the API, and determines whether or not a shipment is able to be fulfilled. These statuses are:
  • Unpaid: There are no valid payments on the order and no balance has been collected.
  • Pending: There are valid payments on the order to collect the entire order balance.
  • Paid: There is zero balance remaining across all payment methods on the order.
  • Pending And Errored: There are pending payments as well as payments with errors of the type Void or Credit.
  • Paid And Errored: The order is fully collected but there are Credit errors.
  • Errored: Something is wrong with the payments on the order and at least one valid payment is still needed to cover the order balance. Not every payment has to be errored to trigger this status. For example, if a single payment failure means that there isn’t enough payment to cover the order balance, the order will enter this Errored state.

Payment States and Fulfillment

A shipment can only be fulfilled if the order payment status is Pending, Paid, Pending and Errored, or Paid and Errored. 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. This is reflected in the isFulfillable boolean of the order object data. To find orders blocked from fulfillment in the Admin UI, you can use the advanced filters of the Orders page to search for all orders that are Unpaid or Errored. In the Fulfiller UI, blocked shipments will display any payment status issues in their order details. If the user attempts to continue fulfillment anyway, an error message will appear. You can opt out of this behavior by customizing your Fulfiller UI theme. For more information, see the Fulfiller UI guide.

Item Object States

At the item level, the following states indicate what point in fulfillment each item is at:
  • Returned: The entire quantity of this item has been returned.
  • Partially Returned: At least one, but not the entire quantity, has been returned.
  • Fulfilled: The entire quantity have been fulfilled in packages within a shipment.
  • Partially Fulfilled: At least one, but not the entire quantity, has been fulfilled.
  • Packaged: The entire quantity are in packages ready for shipment.
  • Partially Packaged: At least one, but not the entire quantity, are in packages.
  • Pending / Pending Fulfillment: No quantity of the item has been packaged.

Return Object States

In the case of processing returns, the following states are the steps at the return level:
  • Created: The shopper has requested a return.
  • Authorized: The return has been authorized by a customer service representative.
  • Canceled: The return has been canceled.
  • Closed: The return has been processed and completed.
  • Rejected: The return has been rejected by a customer service representative.
There is also an order-level return rollup status that summarizes all returns made on the order, even if they are in different individual statuses of their own. These statuses are:
  • None: No returns have been opened on the order.
  • In Progress: The order has at least one return that is not closed.
  • Closed: Some items on the order have been returned and their returns are closed.
  • Returned In Full: Every item on the order has been returned and their returns are closed.