> ## Documentation Index
> Fetch the complete documentation index at: https://help.jetpack3pl.com/llms.txt
> Use this file to discover all available pages before exploring further.

# FIFO Order Allocation

> Prioritize older orders for fulfillment when inventory is replenished using FIFO allocation strategies.

<div className="page-intro">
  When inventory is replenished after stockouts, you can use FIFO (First In, First Out) order allocation to ensure your oldest orders are prioritized for fulfillment. Jetpack offers two FIFO strategies to help you manage how inventory is allocated to orders waiting in Exception status.
</div>

## How Order Allocation Works

Inventory is assigned to orders when they are imported and set to Processing status. If there isn't enough inventory at a single fulfillment center to complete an order, the order is moved to Exception status.

Orders in Exception reprocess every 30 minutes. However, once inventory is replenished, newer orders may receive the available inventory before the older Exception orders are reprocessed.

<Warning title="Manual Unreservation Required">
  Only orders that have not yet been picked are considered for FIFO allocation. You can manually unreserve inventory from partially committed orders by moving them to On-Hold status. Inventory will only be reallocated if the entire order can be fulfilled. If full inventory is not available, the order remains in Exception.
</Warning>

***

## FIFO Allocation Strategies

Jetpack offers FIFO rules for merchants that need to prioritize older orders over newer ones. There are two mutually exclusive approaches:

<Tabs>
  <Tab title="Full Allocation">
    ## Allocate Oldest Orders First

    Once all of the previously out-of-stock inventory is replenished, orders with the oldest Purchase Date in Exception are released before newer orders. If the Purchase Date isn't available, the Import Date will be used instead.

    Orders with the oldest dates remain in Exception if full inventory is still unavailable.

    | Aspect                             | How It Works                                                                                      |
    | ---------------------------------- | ------------------------------------------------------------------------------------------------- |
    | **Priority Logic**                 | Orders with oldest Purchase Date (or Import Date if Purchase Date unavailable) are released first |
    | **Allocation Requirement**         | Full inventory must be available to fulfill the complete order                                    |
    | **When Orders Stay in Exception**  | Orders remain in Exception if full inventory is still unavailable                                 |
    | **When Orders Move to Processing** | Only when all items in the order can be fulfilled from replenished inventory                      |
  </Tab>

  <Tab title="Partial Allocation">
    ## Partially Allocate Inventory to Oldest Orders

    Inventory is allocated to orders with the oldest Purchase Date, even if some items in the order remain out-of-stock.

    Orders move to Exception with some products marked as Partially Committed, meaning that inventory already allocated to these orders is reserved and will not be reallocated to newer orders.

    Once the remaining out-of-stock items are replenished, the order will transition to Processing.

    | Aspect                             | How It Works                                                                        |
    | ---------------------------------- | ----------------------------------------------------------------------------------- |
    | **Priority Logic**                 | Orders with oldest Purchase Date receive available inventory first                  |
    | **Allocation Requirement**         | Partial inventory is allocated even if some items remain out-of-stock               |
    | **Partially Committed Status**     | Some products are marked as Partially Committed, reserving inventory for that order |
    | **Inventory Reservation**          | Partially committed inventory will not be reallocated to newer orders               |
    | **When Orders Move to Processing** | Once the remaining out-of-stock items are replenished                               |
  </Tab>
</Tabs>

***

## Enabling FIFO Order Allocation

To implement FIFO Order Allocation rules for your account, contact Jetpack Care through Slack or email.

<Info title="Strategy Selection">
  When contacting Jetpack Care, be prepared to specify which FIFO strategy (Full Allocation or Partial Allocation) best fits your fulfillment priorities.
</Info>

***

## Let's Dive Deeper

<CardGroup cols={3}>
  <Card title="Automation Rules Overview" icon="code-branch" href="/fulfillment/rules-customization-kitting/automation-rules">
    Automatically apply fulfillment behaviors based on order conditions
  </Card>

  <Card title="Destination-Based Rules" icon="location-dot" href="/fulfillment/rules-customization-kitting/destination-based-rules">
    Route orders to specific fulfillment centers based on destination
  </Card>

  <Card title="Auto Split Rules" icon="split" href="/fulfillment/rules-customization-kitting/auto-split-rules">
    Automatically split orders across multiple fulfillment centers
  </Card>

  <Card title="Multi-Box Package Selection Rule" icon="boxes-stacked" href="/fulfillment/rules-customization-kitting/multi-box-package-selection-rules">
    Control multi-box packaging behavior
  </Card>

  <Card title="Rules and Automation Overview" icon="diagram-project" href="/fulfillment/rules-customization-kitting">
    Back to the main rules and automation guide
  </Card>

  <Card title="Order Management" icon="box" href="/fulfillment/order-management">
    Learn about order statuses and management
  </Card>
</CardGroup>

<div
  style={{
background: 'linear-gradient(to right, #f0f9ff, #ffffff)',
borderLeft: '4px solid #328bcb',
padding: '10px 24px',
margin: '47px 0 32px 0',
borderRadius: '8px'
}}
>
  <div
    style={{
fontWeight: '600',
fontSize: '1.1em',
color: '#1a1a1a',
display: 'flex',
alignItems: 'center',
gap: '10px',
marginBottom: '0px'
}}
  >
    <img
      src="https://mintcdn.com/jetpack/2iejPNBTYKEx6ntF/images/jetpack-logomark-256.png?fit=max&auto=format&n=2iejPNBTYKEx6ntF&q=85&s=340604ced4add3864f2641341826e1c9"
      alt="Jetpack"
      style={{
    width: '26px',
    height: '26px',
    flexShrink: 0
  }}
      width="256"
      height="256"
      data-path="images/jetpack-logomark-256.png"
    />

    Questions? Contact Jetpack Care.
  </div>

  <div
    style={{
fontSize: '15px',
lineHeight: '1.6',
color: '#4a4a4a',
marginTop: '0'
}}
  >
    If you have any questions or run into issues, you can always contact Jetpack Care for help. Our team is always here to assist via Slack, phone, or email!
  </div>
</div>
