Skip to content

Inventory Allocation Lifecycle

Models the lifecycle of an Inventory Allocation — the reservation of specific stock quantities to a channel, location, or order before physical fulfillment. Allocations move from planning through commitment to release or closure.

Object: allocation · States: 6 · Transitions: 8


State Diagram

flowchart LR

    %% ── classDef palette ─────────────────────────────────────
    classDef stInit  fill:#0d9488,stroke:#0f766e,color:#fff,font-weight:bold
    classDef stNorm  fill:#3b82f6,stroke:#2563eb,color:#fff
    classDef stOk    fill:#16a34a,stroke:#15803d,color:#fff,font-weight:bold
    classDef stFail  fill:#dc2626,stroke:#b91c1c,color:#fff,font-weight:bold
    classDef stHold  fill:#d97706,stroke:#b45309,color:#fff

    %% ── nodes ───────────────────────────────────────────────
    draft(["Draft"])
    active["Active"]
    partially_fulfilled["Partially Fulfilled"]
    fully_fulfilled[["Fully Fulfilled"]]
    reallocated[["Reallocated"]]
    cancelled[["Cancelled"]]

    %% ── transitions ─────────────────────────────────
    draft -->|"allocation-activated"| active
    draft -->|"allocation-cancelled"| cancelled
    active -->|"allocation-updated"| partially_fulfilled
    active -->|"allocation-fulfilled"| fully_fulfilled
    partially_fulfilled -->|"allocation-fulfilled"| fully_fulfilled
    active -->|"allocation-reallocated"| reallocated
    partially_fulfilled -->|"allocation-reallocated"| reallocated
    active -->|"allocation-cancelled"| cancelled

    %% ── class assignments ───────────────────────────
    class draft stInit
    class active,partially_fulfilled stNorm
    class fully_fulfilled,reallocated stOk
    class cancelled stFail

States

State Label Description Initial Terminal
draft Draft Allocation plan created but not yet activated; quantities may still change.
active Active Allocation is live; stock is ring-fenced against the specified pool.
partially-fulfilled Partially Fulfilled Some allocated stock has been consumed by orders; remainder still reserved.
fully-fulfilled Fully Fulfilled All allocated stock has been consumed; allocation is complete.
reallocated Reallocated Remaining stock redirected to a different pool or location.
cancelled Cancelled Allocation voided before activation or mid-cycle; stock released to open pool.

Transitions

From To Trigger Guards
draft active allocation-activated Sufficient stock available in source pool; Allocation window is within valid date range
draft cancelled allocation-cancelled Allocation not yet activated
active partially-fulfilled allocation-updated At least one order has consumed allocated stock; Remaining quantity > 0
active fully-fulfilled allocation-fulfilled All allocated quantity consumed by orders
partially-fulfilled fully-fulfilled allocation-fulfilled Remaining quantity reached zero
active reallocated allocation-reallocated Business decision to redirect remaining stock
partially-fulfilled reallocated allocation-reallocated Remaining stock redirected mid-cycle
active cancelled allocation-cancelled Emergency cancellation; no orders consumed stock