Platform
A package knows whether it may be sold
Written from primary sources and checked against them. As of 2026-09-06. How that is done.
Short answer
How does Bloom track cannabis inventory?
Every package carries the tag the state issued and the lab result attached to it, and whether it may be sold is computed by the database from those facts rather than set by a person. A package that fails a test or is recalled leaves the register and the menu screens at the same moment, without anyone remembering to take it down.
Computed, not typed
Sellable is a generated column. It is not a checkbox a manager forgot, and it is not a nightly job that might not have run. Anything reading inventory sees the same answer at the same instant, which is why a recall reaches the screen on the wall as fast as it reaches the till.
Receiving is where most reconciliations are lost
A transfer arrives with a manifest, and receiving it means agreeing package by package that what arrived is what was sent. Bloom records the agreement and the disagreement, so a discrepancy is a recorded event with a quantity and a reason rather than a difference somebody notices at the end of the month.
Questions people ask next
- How does a package become unsellable?
- It is not marked unsellable, it stops satisfying the definition. Sellable is computed by the database from the lab status, whether the package is finished, and whether any quantity remains. A failed test or a recall changes the answer everywhere at once, including on the menu screens.
- Where do package tags come from?
- From the state, through the track and trace system, and they stay attached to the package through every movement, every sale line and every report. A free text batch number is not a tag and cannot be reconciled against anything.
- Can I adjust a package without a reason?
- No. An adjustment carries a reason code drawn from the state's own vocabulary, because that is the field a regulator reads first when quantities move without a sale.
- What happens when a recall lands?
- The affected packages stop being sellable, which removes them from the register and from the menu on the wall at the same moment, and the record shows which sales already went out and to which orders.
- Does it reconcile against the state?
- A daily job compares what Bloom holds against what the state's system holds, per package, and raises a variance rather than silently agreeing with itself. Bloom is not yet a validated integrator in any state, so today this runs against recorded fixtures rather than a live regulator connection.