Inventory and invoicing for pharmacies & dispensaries
Batch and expiry on every intake, and the freedom to sell a single strip out of a carton.
The problem
Stock is bought in cartons and sold in strips or singles, every batch has its own expiry date, and anything that reaches it is money written off. A spreadsheet cannot tell you which batch is on which shelf, or what expires next month.
What ulostock does about it
Batch and expiry on every intake
Each intake is its own record with its own batch number, expiry date, purchase price and quantity. Stock approaching expiry is flagged on the dashboard within a window you set, and the inventory report lists what is expiring so it can be moved while it still sells.
Buy in cartons, sell in singles
Set how a product converts — one carton to twelve packs, one pack to ten pieces — and hold stock in one unit while selling in another. The conversion can be global to a unit or specific to a product, so an unusual pack size does not force a workaround.
Registration numbers on the product record
Every product carries a registration number alongside its code, category and description, so the regulatory reference lives with the item rather than in a separate file.
Reorder thresholds per product
Set a low-stock threshold on any product, or let it fall back to your account default. Anything below it is flagged on the dashboard and in the inventory report, per branch.
Every movement accounted for
Intakes, sales, adjustments and transfers are written to an inventory movement history you can read back per product and per branch — so a discrepancy has a trail rather than a theory.
Questions we get asked
Yes. Define a conversion for the product — one carton to twelve packs, one pack to ten pieces — and you can receive stock in cartons while selling in pieces. Stock on the shelf is tracked in the unit you hold it in, and the sale deducts the right quantity.
Yes. Batch number and expiry date are recorded per intake, not per product, so the same drug bought twice is two records with two expiry dates. Items approaching expiry are flagged on the dashboard within a configurable window, and listed in the inventory report.
Yes. Each branch keeps its own stock, sales and staff assignments, and you can switch between branches without signing out. Stock moves between them through a stock transfer, which can be routed for approval. How many branches you get depends on your plan.
See it against your own stock
Every plan starts with a free trial, and the pricing page lists what each one includes.