Repairs
Hold stock out of availability and disposition it by return or write-off.
Overview
A repair holds stock out of service — damaged, under investigation, or awaiting repair — until it is dispositioned. A repair can hold a loose quantity or a specific barcoded asset. While active it consumes availability exactly like a booking, so repaired stock never gets offered on new quotes.
Repair UI routes:
| Route | Purpose |
|---|---|
/repairs |
Repair index (active by default) |
/repairs/{repair} |
Detail — held item, transactions, dispositions |
How repairs affect availability
An active repair writes a positive demand into the Availability Engine — held stock is subtracted from available quantity in the same way a confirmed booking is. Availability surfaces attribute the hold separately, so you can see what is held versus what is booked. When a repair completes or its window passes, the demand voids automatically and the stock returns to availability.
Raising a repair on a barcoded asset
When you repair a specific asset, the outcome depends on the asset's current state:
| Asset state | Behaviour |
|---|---|
| Free | Repairs cleanly |
| Has a future confirmed allocation | The allocation is displaced (requires the displacement permission); the affected order then shows as short through normal shortage detection |
| Currently dispatched | Rejected — return or check the asset in first |
Repairs can also be raised automatically: a failed equipment test on a flagged definition, a damaged item flagged on kit return, and a stocktake write-off all raise repairs through the same shared path.
Dispositioning
Complete a repair by choosing a disposition per unit held:
- Return to Stock — the held stock re-enters inventory.
- Write Off — the stock is removed; a barcoded write-off retires the asset.
Dispositions can be mixed and partial — for example return four of ten units and write off six. A write-off reduces held stock and voids the repair's demand in the same step, so availability is never double-counted. Damage photos can be attached to the repair record.
Permissions
| Permission | Grants |
|---|---|
repairs.view |
See repairs |
repairs.create |
Raise repairs |
repairs.release |
Complete/release repairs and disposition stock |
API
Repairs are exposed at /api/v1/repairs with complete and release actions — see the Repairs API.