Every count is computed from what actually happened. Parts received, units sold, serials moved. On-hand, reserved, available, and on-order are derived by the database in real time, across every location. The number on screen is the number on the shelf.
Every product tracks stock independently at each store. On-hand is the signed sum of every movement (receipts, sales, adjustments, returns), computed by Postgres. Reserved stock is derived from open tickets and serial-unit status. Available is on-hand minus reserved. On-order is derived from open purchase orders. Close a ticket and reserved drops. Receive a PO and on-hand rises. No batch job, no nightly sync.
High-value parts (logic boards, displays, batteries) get individual tracking. Each serial unit carries its own status (in stock, reserved, sold, defective), its own location, and its own history. When a tech pulls a serialized display for a repair, that specific unit is reserved on the ticket. When the ticket resolves, the unit moves to sold.
Create a purchase order, send it, then receive against it. Partial or complete. Each receipt posts a ledger entry, so on-hand rises the moment parts hit the shelf and on-order drops to match. Receive three of five units and on-order shows two remaining. Cancel a line and on-order adjusts instantly.
For Apple repairs on the AASP plan, submitting a GSX repair auto-posts the ticket's Apple parts PO. Once Apple accepts the repair, those parts are really on order, and the PO reflects it without anyone clicking a button.
On the AASP plan, Apple parts lookup lives inside the repair ticket. Scan a serial and BenchOS pulls every eligible genuine Apple part from GSX with the correct warranty, exchange, and retail pricing tiers. The AASP labor tier that drives your reimbursement is read straight off the part card, so the invoice Apple pays you is always right.
Apple returns part prices as comma-grouped strings. BenchOS parses them exactly, so a $1,143 logic board is $1,143, not $1. Parts order directly from the ticket, and the purchase order posts automatically when you submit the repair to Apple.
Apple GSX integration requires the AASP plan. See plans →
Migrating from another system, a spreadsheet, or a legacy POS? Smart import maps your CSV columns to BenchOS fields automatically when the column names don't match. Upload your file, confirm the mapping in an editable preview, and import. Products, serial numbers, suppliers, and purchase orders all import the same way.
Every confirmed mapping teaches the system, so the next shop migrating from the same source gets pre-matched columns with zero effort. And every export from BenchOS re-imports with zero mapping. Full round-trip, no lock-in.
BenchOS inventory is free on every plan. Serialized tracking, multi-location stock, purchase orders, suppliers, and smart imports. All included. Add the AASP plan for native Apple GSX parts integration.
More features