When does available-to-promise disagree with the on-hand count?

Roy Rosell
October 24, 2026
8 min read

Available-to-promise and on-hand count disagree the moment a sale, a transfer, or an incoming receipt changes what you can sell without changing what is physically sitting on the shelf. That gap is normal. It only becomes a problem when nobody can see it before a customer gets a promise the floor cannot keep.

Picture the number on the screen: 240 units. The warehouse team counted it this morning, scanner in hand, bin by bin. Meanwhile sales has already committed 60 of those units to three open orders, 40 are sitting in a transfer headed to a second location, and 25 more showed up on a vendor's advance ship notice but have not been received yet. The on-hand count still reads 240. The number a rep should actually be quoting a customer is closer to 115.

The same math plays out at the register, even where nobody uses the words available-to-promise. A distributor selling filtration cartridges gets an order Friday afternoon for 80 units. The on-hand screen says 95. A rep confirms the order on the spot: 95 on hand, send it. What the rep does not see is that 30 of those cartridges were allocated that morning to replenish a retail customer's shelf count for a weekend promotion, and another 15 are packed and staged on a dock, waiting on a truck that has not left yet. The true available number was 50, not 95. By Monday, two customers are calling about a short shipment, and someone is explaining a stockout the system technically already knew about.

The same gap shows up on the shop floor. On a Tuesday morning build, a work order calls for 200 units of a gasket that the on-hand screen shows at 240. What the screen does not carry forward is that 60 of those gaskets are already reserved against an earlier work order that has not been issued to the floor yet, because second shift had not started cutting that job. The planner pulled stock assuming the full 240 was open, found the shortage at the bench, and spent the next hour chasing down a rush order from the supplier instead of running the line.

Returns create the same blind spot in reverse. A customer ships back 25 units on a Monday. The warehouse receives the box Wednesday, logs the return in a queue, and does not get around to scanning the units back into their bin until Friday. For four days the on-hand count is accurate everywhere except the one number that matters: the units are physically on a shelf, scanned or not, and either look unsellable or get searched for twice.

Many systems show you the 240 and stop there. They leave the subtraction, the memory of which orders are pending, and the judgment call about whether to promise the order to you. That is the work gap: the distance between what the operation already knows and what someone still has to piece together by hand before the promise goes out the door.

The mismatch almost always comes from the same handful of places:

  1. Committed sales orders that have not shipped yet, so the units are spoken for but still sitting on the shelf.
  2. Open transfers between your own buildings, in transit and no longer available at the sending location.
  3. Purchase orders received at the dock but not yet put away, counted as inbound rather than on the shelf.
  4. Processed returns waiting to be scanned back into a bin instead of sitting as an open line in a queue.

The same disagreement gets worse across two buildings. Site A shows 180 units on hand. Site B shows zero. The company total still reads 180, so someone signs off on a new sales order. The trouble is Site B is the location closest to that customer, and the 40 units already earmarked for an in-transit transfer are the only stock that was ever headed that way. The order gets promised against a number that was never really available where it needed to be.

When nobody can see that subtraction, the options left on the table are all bad. Delay the order while someone checks by hand. Keep searching for stock that is already spoken for. Or buy more than the business needs because the on-hand number looked safe. Each choice costs money. None of them close the actual gap between what is counted and what is sellable.

A customer who gets a ship date built on the wrong number does not blame the count sheet. They blame the business. One missed promise is a service recovery call. A pattern of missed promises is a customer who stops calling back.

Fishbowl is the platform. Fishbowl Inventory, Fishbowl Advanced Manufacturing, and Fishbowl Advanced Warehouse are purpose-built parts of Fishbowl, matched to how the business runs. Across all three, available-to-promise is calculated the same way: on-hand minus what is committed to open sales orders, in-transit transfers, and stock already allocated elsewhere, so the number a rep sees on screen is the number they can actually sell.

On Fishbowl Inventory, the AI Operations Specialist uses live Fishbowl data to prepare purchase orders, sales orders, transfers, receipts, and adjustments for your approval. When available-to-promise drops below what a pending order needs, it drafts the reorder before a rep finds out the hard way, mid-call with a customer. Nothing is saved or changed without the operator's approval. Ask, Approve, Done.

The draft does not appear from nowhere. It reads the same available-to-promise math described above: on-hand, minus what is committed, minus what is in transit, plus what is already on order. When that number crosses the point where an open order cannot be filled, a draft purchase order or transfer shows up in the queue with the quantity, the vendor, and the lead time already filled in. A person still looks at it before anything moves.

Fishbowl Inventory and Fishbowl Advanced also run data-focused AI that answers plain questions about what is happening right now, what is coming, and what needs attention today. It is not the same experience on both products, and it does not draft the purchase order itself. That part of the work on cloud Inventory belongs to the AI Operations Specialist.

QuickBooks or Xero keeps the books. Fishbowl runs the inventory math underneath it, the subtraction that tells a rep what is actually available to promise instead of what a count sheet said this morning.

Brian Garrett at Telluric Companies, a beta tester on Fishbowl Inventory, says the AI Operations Specialist saves him at least 45 minutes per purchase order, because the draft already reflects what is committed and what is actually open to sell, instead of a fresh manual check every time stock runs tight.

Run this check the next time a rep is about to make a promise:

  1. Ask whether the on-hand number already subtracts units committed to open sales orders.
  2. Ask whether an in-transit transfer between your own buildings is removed from the sending location's count.
  3. Ask whether a purchase order sitting in receiving, not yet put away, counts as available or still in limbo.
  4. Ask whether a processed return has been scanned back into a bin or is still floating as an open line.
  5. If the answer to any of those is "we're not sure," the promise is being made on the on-hand count, not on what is actually available to promise.

Fishbowl is built to keep that subtraction current across every building and every open order, so the number on the screen matches the number a rep can actually stand behind.

See the AI Operations Specialist draft a purchase order against your own available-to-promise number instead of a spreadsheet pull. Get a demo.

Fishbowl does the work. You make the call.

Frequently asked questions

What causes available-to-promise to differ from the on-hand count?

Available-to-promise subtracts what is already committed: open sales orders, in-transit transfers, and allocated stock. On-hand only reflects what scanned in during the last count. The two numbers disagree whenever a commitment exists that the count sheet does not show.

Does Fishbowl automatically subtract committed orders from the available number?

Yes. Fishbowl Inventory, Fishbowl Advanced Manufacturing, and Fishbowl Advanced Warehouse calculate available-to-promise the same way: on-hand minus open sales orders, in-transit transfers, and stock already allocated elsewhere, so the number on screen reflects what can actually be sold.

How long does it take to get this live on my own data?

Training is expert-led and typically runs 6 to 8 weeks. The system is useful from the first live count, so the team sees accurate available-to-promise numbers well before setup wraps up.

Can I still reach a person if the numbers look wrong?

Yes. Support is in-house, with US experts for US customers and APAC experts for APAC customers, by phone, email, or chat. Smart Chat can answer quick questions, and a person is always reachable for anything more complicated.

a man-wearing-a-safety-vest-holding-a-clipboard-and-pointing-out-shelves-to-a-woman-wearing-a-safety-vest-in-a-warehouse
Want to see how Fishbowl can improve your business?
Book a Demo