1. Shopify recalculates on-hand anyway
Shopify does not let us directly control the true “on-hand” number.
Instead, when we send available, Shopify does this math:
Shopify On-Hand = Available we send + Shopify’s own Pending Orders
Example:
Shopify currently has 4 pending orders for a SKU.
Luminous sends 100 available.
Shopify will automatically set its on-hand to 104 (100 available + 4 pending orders).
This happens every time—Shopify always backfills on-hand based on available.
2. Luminous needs to consider all channels, not just Shopify
Most merchants sell on multiple channels (Shopify, Amazon, wholesale, invoices, retail POS, etc.).
Shopify only knows about its own pending orders, but Luminous sees everything.
Example:
Let’s say the true counts across all channels look like this:
114 units on-hand
14 pending orders total
4 are Shopify orders
10 are from other sales channels
So in reality:
True Available = 114 on-hand – 14 pending = 100
This means you only have 100 units that should be sellable.
What would go wrong if we pushed on-hand instead?
If Luminous pushed 114 on-hand, Shopify would subtract only the 4 Shopify orders:
Shopify Available = 114 – 4 = 110
Shopify would think you have 110 sellable units.
But real availability is only 100 because of the 10 pending orders outside Shopify.
➡️ Shopify would oversell by 10 units.
3. So we always push Available, because that’s what controls selling
On Shopify, customers see Available, not on-hand.
Available = what Shopify allows you to sell.
So Luminous sends the correct available, taking all channels into account, and lets Shopify calculate its own on-hand however it wants.
In One Sentence
We push available (not on-hand) because only Luminous can see all pending orders across all channels. This keeps Shopify from overselling and keeps the numbers consistent for the customer.
