Equipment and tool checkout
Drills, laptops, radios, keys, measuring devices: things that go out and should come back. Each item gets a label; scanning it records whether it went out or came back, and red stops a conflict (the item is already out, reserved, or in repair).
How it works#
- Stick your own label with a unique code on each item.
- The storekeeper scans the label. A form asks: Checkout or Return.
- Your API records the movement if it makes sense and answers green, or red with the reason.
What your API checks#
- The item exists and its current state allows this action (you can't return what is already in stock).
- For a checkout: the item isn't reserved or in repair.
- Who has it. See "Recording the borrower" below.
Example answers#
{ "status": "ok", "title": "Checked out", "message": "Hilti drill #14 · due back Friday" }{ "status": "failed", "title": "Already out", "message": "Taken by Team North on 3 Sep" }Recording the borrower#
Forms only offer pick-one choices, and scanning identifies the item, not the person. Pick one of these:
- A short list of borrowers, such as teams or vehicles, as a second form field. Works when the list is small.
- Scan the person first. The storekeeper scans the borrower's badge, then the items. Your API remembers
the last badge scanned by this device (
deviceId) and attaches the following items to it. - One phone per person or vehicle, so the
deviceIdis the borrower.
Settings#
The form below is shown with every scan (showOnce: false), which is what you want: a form
answered only once would silently apply the same choice to every later scan.
{ "app": "scan2check.com", "settings": { "apiUrl": "https://api.example.com/equipment/scan", "symbols": [ "qr", "code128" ], "formData": { "schema": { "action": { "title": "What is happening?", "type": "string", "enum": [ "Checkout", "Return" ] } }, "showOnce": false } }}Open in configurator — loads these settings so you can put in your own API URL and generate the QR code.
Watch out for#
- Manufacturer barcodes don't work for this. The EAN on a drill's box names the product, so every drill of that model has the same code. Print your own labels with unique codes (QR or Code 128).
- The first choice is preselected. The form opens with Checkout already picked, so a hurried tap on submit records a checkout. Your API can catch the obvious case: an item that is already out can't be checked out again.
- Labels wear off. On tools, use durable labels and keep the code in text beside it, so it can be typed in the back office when a label no longer scans.