Inventory Concepts
In this document, you’ll learn about the main concepts in the Inventory Module, and how data is stored and related.
InventoryItem
An inventory item, represented by the InventoryItem
data model, is a stock-kept item, such as a product, whose inventory can be managed.
The InventoryItem
data model mainly holds details related to the underlying stock item, but has relations to other data models that include its inventory details.
InventoryLevel
An inventory level, represented by the InventoryLevel
data model, holds the inventory and quantity details of an inventory item in a specific location.
It has three quantity-related attributes:
stocked_quantity
: The available stock quantity of an item in the associated location.reserved_quantity
: The quantity reserved from the availablestocked_quantity
. It indicates the quantity that's still not removed from stock, but considered as unavailable when checking whether an item is in stock.incoming_quantity
: The incoming stock quantity of an item into the associated location. This attribute doesn't play into thestocked_quantity
or when checking whether an item is in stock.
Associated Location
The inventory level's location is determined by the location_id
attribute. The Medusa application links the InventoryLevel
data model with the StockLocation
data model from the Stock Location Module.
Learn more about this relation in this guide
ReservationItem
A reservation item, represented by the ReservationItem
data model, represents unavailable quantity of an inventory item in a location. It's used when an order is placed but not fulfilled yet.
The reserved quantity is associated with a location, so it has a similar relation to that of the InventoryLevel
with the Stock Location Module.