Canonical URL: https://chargezen.com/docs/checkoutos/dynamic-bundles/inventory

# Bundle Inventory Management

Track and manage inventory for bundled products

Last updated: 2025-01-16

**Bundle inventory management** ensures that bundles remain available only when all component products are in stock. CheckoutOS handles inventory tracking automatically, updating bundle availability in real-time.

## How Bundle Inventory Works

When a customer purchases a bundle, CheckoutOS:

1.  **Validates inventory** — Checks all components are available
2.  **Reserves stock** — Holds inventory during checkout
3.  **Decrements on order** — Reduces component inventory when order completes
4.  **Updates availability** — Hides bundle if any component sells out

## Inventory Tracking Modes

### Component Tracking (Default)

Track inventory at the individual product level. Bundle availability depends on all components being in stock:

Component Tracking

```json
{
  "inventory": {
    "mode": "component",
    "track_components": true,
    "behavior_when_unavailable": "hide_bundle",
    "show_low_stock_warning": true,
    "low_stock_threshold": 5
  }
}
```

##### Recommended

Component tracking is recommended for most bundles as it prevents overselling and uses your existing Shopify inventory management.

### Bundle SKU Tracking

Create a separate SKU for pre-assembled bundles:

Bundle SKU Tracking

```json
{
  "inventory": {
    "mode": "bundle_sku",
    "bundle_sku": "BUNDLE-SKINCARE-001",
    "track_as_product": true,
    "sync_to_shopify": true
  }
}
```

#### When to Use Bundle SKU

*   Pre-packaged bundles in your warehouse
*   Bundles with unique packaging
*   Need to track bundle sales separately
*   Drop-shipped bundles from supplier

### Hybrid Tracking

Track both bundle units and component inventory:

Hybrid Tracking

```json
{
  "inventory": {
    "mode": "hybrid",
    "bundle_sku": "BUNDLE-001",
    "bundle_inventory": 50,
    "fallback_to_components": true,
    "component_assembly_buffer": 100
  }
}
```

## Availability Rules

Control what happens when inventory is limited:

Availability Configuration

```json
{
  "availability": {
    "hide_when_unavailable": true,
    "show_out_of_stock": false,
    "allow_backorder": false,
    "partial_availability": {
      "enabled": false,
      "message": "Some items may ship separately"
    },
    "preorder": {
      "enabled": true,
      "available_date": "2025-03-01",
      "message": "Ships March 1st"
    }
  }
}
```

## Low Stock Alerts

Get notified before bundles become unavailable:

Alert Configuration

```json
{
  "alerts": {
    "low_stock": {
      "enabled": true,
      "threshold": 10,
      "channels": ["email", "slack"],
      "email": "inventory@yourstore.com",
      "slack_webhook": "https://hooks.slack.com/..."
    },
    "out_of_stock": {
      "enabled": true,
      "immediate": true
    }
  }
}
```

## Variant Inventory

When bundles include products with variants, inventory is tracked at the variant level:

Variant Inventory Handling

```json
{
  "variant_handling": {
    "mode": "specific_variants",
    "variants": [
      {
        "product_id": "shirt-001",
        "variant_id": "medium-black",
        "quantity": 1
      }
    ],
    "allow_substitution": {
      "enabled": true,
      "within_same_product": true,
      "notify_customer": true
    }
  }
}
```

## Fulfillment Integration

Configure how bundle orders appear for fulfillment:

Fulfillment Settings

```json
{
  "fulfillment": {
    "line_item_display": "separate_items",
    "include_bundle_name": true,
    "packing_instructions": "Pack together in bundle box",
    "warehouse_location": "ZONE-A",
    "print_bundle_label": true
  }
}
```

#### Line Item Options

*   Separate items — Each product as individual line item
*   Single bundle — One line item with details
*   Hybrid — Bundle line + component details

## Inventory Sync

CheckoutOS syncs inventory with Shopify in real-time:

*   Inventory updates within 1 second
*   Webhook-based sync for immediate updates
*   Periodic reconciliation every 15 minutes
*   Manual sync available in dashboard

##### Third-Party Inventory Systems

If you use a third-party inventory management system, ensure it syncs to Shopify for CheckoutOS to have accurate availability data.

## Best Practices

##### Inventory Management Tips

*   **Set realistic thresholds** — Account for in-transit and reserved stock
*   **Enable low stock alerts** — Stay ahead of availability issues
*   **Monitor bundle velocity** — Track how fast bundles sell
*   **Plan for seasonality** — Increase stock before peak periods
*   **Test checkout flow** — Verify inventory validation works correctly

## Related Topics

[

### Bundle Pricing

Configure pricing for bundles

Learn more



](https://chargezen.com/docs/checkoutos/dynamic-bundles/pricing-rules)[

### Analytics Dashboard

Track bundle performance

Learn more



](https://chargezen.com/docs/checkoutos/analytics/dashboard)

Was this page helpful?

Need more help? [Contact support](https://chargezen.com/docs/checkoutos/troubleshooting/support)
