Skip to main content

Inventory Definitions

Endless Commerce tracks inventory by product across the lifecycle (incoming, in stock, and outgoing) and with detailed granularity at each stage. This document outlines the definitions of each level of inventory.

Source of Truth

For inventory, we have a clear definition of the term "source of truth." Our point of view is that whoever has physical possession of the physical goods is the source of truth. That means they are:

  • responsible for providing the quantity of inventory for each product to Endless Commerce
  • responsible for the accuracy of the inventory counts

You can use Endless Commerce as your warehouse management system (WMS). If you have physical possession of your inventory, you can reflect those quantities directly in Endless Commerce, and together, we'll be the source of truth.

You can also work with an external WMS or third-party logistics (3PL) provider. If they have physical possession of the goods, then they are the source of truth.

Our goal is to obtain frequent, accurate, and granular updates on inventory from any external WMS or 3PL. The more information we receive, the more detailed and granular we will be.

Key Logic and Rules

  1. We only remove a unit of a product from physical inventory when an order ships - when it literally leaves the building.
  2. There is no limit to ordered inventory - no cap on demand - which means that available inventory can go negative.
  3. Available inventory is the most important number of them all - it's what you have left to sell, and what we push to sales channels like Shopify or Amazon.
  4. The simple rule of thumb is:
    a. If available inventory is high, you have full stock
    b. If available inventory is positive but low, you have low stock
    c. If available inventory is zero, you're out of stock
    d. If available inventory is negative, you're oversold

Visual Hierarchy Overview

Physical Inventory *
├── Unavailable
│ ├── Quarantine *
│ └── Damaged *
└── In Stock
├── Allocated
│ ├── Allocated: Unfulfilled +
│ └── Allocated: In Process +
└── Unallocated
├── Ordered +
│ ├── Ordered: Reserved (coming soon)
│ └── Ordered: Unreserved (coming soon)
└── Available
├── Available: Reserved (coming soon)
└── Available: Unreserved (coming soon)

Incoming
├── Incoming: Reserved +
└── Incoming: Unreserved +

* These numbers are retrevied from the inventory source of truth.
+ These numbers are retrieved from Endless.
All other numbers are calculated.

Inventory Hierarchy and Definitions

Physical Inventory

Total quantity of a product present in the building.
This field is obtained from the inventory source of truth.

Unavailable

Units that may not be allocated to an order or shipped to a customer.
This is a calculated field.
Formula: Unavailable = Quarantine + Damaged

Quarantine

Units that may not be shipped for an unspecified reason.
This field is obtained from the inventory source of truth.

Damaged

Units that may not be shipped because they are damaged.
This field is obtained from the inventory source of truth.

In Stock

Units physically present in a building that can be allocated to an order, or already have been allocated to an order. Effectively, this is everything except for any quarantined or damaged units. Informally, in stock will also be equal to allocated plus unallocated.
This is a calculated field.
Formula: In Stock = Physical Inventory - Unavailable

Allocated

Units that have not yet been fulfilled, but have been allocated to specific orders. Allocation actions can be reversed, because the product hasn't left the building. One notable impact of allocating inventory is that orderable inventory is reduced.
This is a calculated field.

Formula: Allocated = Unfulfilled + In Process

  • Unfulfilled

    Units allocated to orders that have not yet been transmitted to a fulfillment service, like a WMS or 3PL. You may wish to "hard" allocate inventory to a specific order to ensure that no other order takes that inventory, but may also wish to wait until a later date (such as shipment window) to send it to your fulfillment partner.
    This field is obtained directly from the order records in Endless Commerce.

  • In Process

    Units allocated to orders that have been transmitted to a fulfillment partner. The fulfillment process is underway and we are listening for updates, but the products have not yet left the building.
    This field is obtained directly from the order records in Endless Commerce.

Unallocated

Units that have not been allocated to any specific orders.
This is a calculated field.
Formula: Unallocated = In Stock - Allocated

  • Ordered

    The total quantity of the product that has been ordered but not yet allocated. Importantly, there is no limit to the ordered quantity - your customers can have effectively unlimited demand! In a future release, we will introduce the concept inventory reservations; at that point, we will further divide ordered units into reserved and unreserved.
    This field is obtained directly from the orders in Endless Commerce.

  • Available

    You made it. All the way down the rabbit hole. These are the droids you're looking for! These are the units that are freely available to sell. Note that this is a calculated field, and because you can have unlimited demand (tons of ordered units), available inventory can go negative. If you're experincing success beyond your wildest dreams, then that's OK. Otherwise - don't let this happen!
    This is a calculated field.
    Formula: Available = Unallocated - Ordered

Incoming

Units expected to arrive but not yet in physical inventory. In a future release, we will introduce the concept inventory reservations; at that point, we will further divide incoming units into reserved and unreserved.
This field is obtained directly from the ASN records in Endless Commerce .

Future Available

Units that will be available in the future.
This is a calculated field.
Formula: Future Available = Available + Incoming

Total Demand

Total units needed to fulfill all orders and allocations.
This is a calculated field.
Formula: Total Demand = Ordered + Allocated

Key Formulas Summary

  • Unavailable = Quarantine + Damaged
  • In Stock = Physical Inventory - Unavailable
  • Allocated = Unfulfilled + In Process
  • Unallocated = In Stock - Allocated
  • Available = Unallocated - Ordered
  • Future Available = Available + Incoming
  • Total Demand = Ordered + Allocated