How Luminous calculates kit availability
Because a kit holds no inventory of its own, Luminous derives its available quantity entirely from its component SKUs each time the stock sync runs.
The rule is:
Kit available quantity = the lowest number of complete kits that can be assembled from each component's current available stock.
"Available" for each component is calculated as:
Available per component = On Hand − Pending
(where Pending = quantity reserved by open, active sales orders that have not yet shipped)
That per-component available quantity is then divided by the number of units of that component required per kit, and the result is floored to a whole number. Luminous takes the minimum across all components — the single most-limited component determines the kit quantity.
Example:
| Component | On Hand | Pending | Available | Required per Kit | Kits Possible |
|---|---|---|---|---|---|
| Widget A | 20 | 2 | 18 | 2 | 9 |
| Widget B | 10 | 1 | 9 | 1 | 9 |
| Widget C | 5 | 0 | 5 | 1 | 5 |
Widget C is the bottleneck, so Luminous calculates 5 kits available and pushes that number to the sales channel.
Optional additions to the available formula
Two account-level settings can extend what counts as "available" for a component:
- Include Assembly Qty — counts units that will become available when in-progress assembly orders complete.
- Include Disassembly Qty — counts units recoverable from in-progress disassembly orders.
If neither is enabled (the default), only on-hand minus pending is used.
Why a kit can push zero even when component stock exists
There are several distinct reasons this can happen. Work through each one to find the cause for your kit.
1. One component has no available stock
Because the formula takes the minimum across all components, a single component with zero available (on hand = pending, or on hand = 0) will make the entire kit push zero — even if every other component has plenty of stock. Check the on-hand and pending quantities for every component in the kit.
2. Pending orders have consumed component availability
Open sales orders create "pending" reservations against component stock. If pending equals or exceeds on hand for even one component, that component's available quantity is zero, and the kit total becomes zero. Pending quantities are released when orders ship or are cancelled.
3. Component stock is spread across warehouses but "Combine Warehouse Group Inventory for Kits" is turned OFF
When this setting is OFF, Luminous evaluates each warehouse independently. It does not pool component stock across locations. If, say, 5 units of Widget A are in Warehouse East and 5 are in Warehouse West, each warehouse-level calculation only sees its own 5 — it cannot combine them to reach 10. This can result in a kit showing zero at every individual warehouse even though the combined total would be sufficient.
Turning the toggle ON treats all warehouses in the group as one pool, which is the right choice when you fulfill the same orders from multiple locations interchangeably. See How the "Combine Warehouse Group Inventory for Kits" Setting Affects Kit Availability for full details.
4. A component has no stock record for a warehouse in per-warehouse mode
In per-warehouse mode, Luminous looks up each component's stock at each warehouse. If a component SKU has never been received at a particular warehouse (no stock record exists for it there), the system treats its available quantity at that location as zero — which zeros out the kit at that warehouse. The fix is to either receive that component at the relevant warehouse, or switch the warehouse group to Combine mode so that stock from other locations can contribute.
5. A buffer quantity exceeds the calculated kit availability
Buffers are subtracted from the kit's calculated quantity after the component minimum is determined, before the number is pushed to the sales channel. A flat buffer of 5 applied to a kit showing 3 available results in 0 being pushed. Check the buffer quantity settings on the kit's channel product mapping (both the account-level default and any per-channel overrides).
6. The kit is mapped with "Ignore Stock" enabled
If the kit SKU's channel product mapping has Ignore Stock turned on — either at the integration account level or through a channel-specific override — Luminous skips that product entirely during the stock push. No quantity (including zero) is sent; the channel retains whatever value it last had. Confirm the Ignore Stock toggle is off for the kit's channel listing.
7. Assembly or disassembly quantities are not being counted
If your workflow depends on in-progress assembly orders to replenish a component before the kit goes out of stock, but Include Assembly Qty is not enabled in your account settings, those pending assembly quantities are invisible to the kit calculation. Enable the setting (or contact Luminous Support to review it) if you want in-progress assembly to count toward kit availability.
Quick troubleshooting checklist
- Check every component — Go to the component SKU's product page and confirm On Hand > Pending for each one.
- Check the warehouse group setting — Is "Combine Warehouse Group Inventory for Kits" set to match your actual fulfillment flow?
- Check buffer quantities — Open the kit's channel product listing and review any flat or percentage buffer applied.
- Check Ignore Stock — Confirm this is not enabled for the kit at either the account or channel level.
- Check assembly settings — If applicable, confirm the Include Assembly Qty / Include Disassembly Qty settings match your needs.
For more background on how kits work in Luminous, see Why can't I add inventory directly to a kit, and how is kit inventory managed in Luminous? and Do Kits Push Inventory to Shopify and Other Sales Channels?