A Spree::InventoryUnit
object is created every time that an item is sold.
It tracks a sold item as it changes location: from being a sold item waiting in the
warehouse to be shipped, to being a shipped item (or potentially a returned item).
Note that the Spree::InventoryUnit
tracks an item as an object associated with
a Spree::Order
, a Spree::Shipment
and a specific Spree::LineItem
. This
allows you to more closely track the status of an order and the line items and
shipments associated with it.
A Spree::InventoryUnit
object has the following attributes:
state
: The current state of the inventory unit. The state value can be
on_hand
, backordered
, shipped
, or returned
.variant_id
: The ID for the Spree::Variant
corresponding with the inventory
unit that has been sold.shipment_id
: The ID for the Spree::Shipment
that the inventory unit is
being shipped in.pending
: Documents whether the current unit is pending or finalized. If
true
, the stock for this unit has not yet been allocated to a shipment. If
false
, the stock has been finalized and is no longer tracked in the
Spree::StockItem
's count_on_hand
value.line_item_id
: The ID for the Spree::LineItem
that the inventory unit
corresponds with.carton_id
: The ID for the Spree::Carton
that the inventory unit belongs
to.Solidus is an open source platform supported by the community. We encourage everyone using Solidus to contribute back to the documentation and the code.
If you’re interested in contributing to the docs, get started with the contributing guidelines. If you see something that needs fixing and can’t do it yourself, please send us an email.