How does Scan & Stocktake work (mobile)?
Quick answer
Section titled “Quick answer”Open the Scan module, choose the object type and the code field (e.g. serial number or barcode), then click “Start camera” — or type in the code and click “Look up”. Notory shows the matching record. If you’ve also chosen a quantity field, you count inventory directly with +/− — every change is saved instantly (“Saved”).
Prerequisites
Section titled “Prerequisites”Scan & Stocktake works on the Flex platform and therefore requires
Pro or higher (the custom_fields feature). Also required:
- An object type with
custom fields — including a
field that holds the code (e.g.
serial,barcode,sku), and, for stocktaking, a number field (typenumberorcurrency) to serve as the quantity. - For the camera scan: a browser with barcode detection (current Chrome/Edge versions, especially on Android). If support is missing, the page shows “Camera scanning is not available in this browser. Enter the code manually.” — manual entry always works.
Instructions
Section titled “Instructions”-
Open and set up the “Scan” module. Select Scan in the navigation. At the top, set:
- Object type — e.g. Vehicle or Warehouse item.
- Code field — the field whose value is stored in the barcode/QR
code. Notory automatically suggests a suitable field (recognizing
names like
code,barcode,sku,serial). - Quantity field (optional) — a number field for stocktaking.
Screenshot pendingscan-inventur-01Scan module with the Object Type, Code Field, and Quantity Field dropdownsSet up first: object type, code field, and optionally the quantity field. -
Scan or type it in. Click “Start camera” and hold the code up to the camera — the first time, the browser will ask for camera permission. As soon as a code is recognized, scanning stops and Notory looks up the record. Without a camera: type the code into the “Enter or scan a code” field (a USB/Bluetooth handheld scanner also works here) and click “Look up”.
-
Check the match and count. The matching record appears as a card. With a quantity field chosen, it shows the current stock and the +/− buttons (“Adjust the counted quantity”) — every change saves instantly and confirms with “Saved”. If there’s no match, the page shows “No record found for ’…’.”
Screenshot pendingscan-inventur-02Matching record shown as a card with the current stock and the plus/minus buttons for countingThe match card with stock counting: plus, minus — saved automatically.
Behind the scan is the lookup endpoint: it resolves a code value to
exactly one record (scope read):
curl -H "Authorization: Bearer inv_dein_token" \ "https://demo.notory.io/api/v1/records/lookup?object_type=vehicle&field=plate&value=M-TT%202026"{ "id": "7d2f4a90-1b3c-4e5d-8f6a-9c0b1d2e3f44", "object_type": "vehicle", "data": { "plate": "M-TT 2026", "fuel": "Elektro", "stock": 5 }, "updated_at": "2026-07-08T11:58:02Z"}Counting is a normal record update (scope write) — the interface
writes the entire data block with the adjusted quantity:
curl -X PUT https://demo.notory.io/api/v1/records/7d2f4a90-1b3c-4e5d-8f6a-9c0b1d2e3f44 \ -H "Authorization: Bearer inv_dein_token" \ -H "Content-Type: application/json" \ -d '{ "data": { "plate": "M-TT 2026", "fuel": "Elektro", "stock": 6 } }'Possible errors: 404 (no record with this value — the interface
shows “No record … found”), 403 (plan below Pro), 422 (the quantity
value doesn’t match the field definition).
What happens behind the scenes?
Section titled “What happens behind the scenes?”- The scan stays local: Barcode detection runs entirely in the browser (the camera image never leaves the device); only the recognized code value is sent to the server for the lookup.
- Exact matching: The lookup compares the value exactly against the chosen field — typos or differing spellings result in “not found”.
- Every count is traceable: The quantity change is a normal record update and lands in the record’s history (action Updated, including who made the change) — including the option to restore it.
- License gating: Without Pro+, the interface hides the module behind
an upgrade notice; the API responds with
403. - Tenant isolation: Lookups and updates only affect records belonging to your tenant.
- Asset labels: The QR codes on standard assets contain JSON instead of a plain value — they belong to the scan an asset QR code workflow, not this module.
Related topics
Section titled “Related topics”- Scan an asset QR code — labels for standard assets
- Create an object type — building the data foundation
- Define custom fields — code and quantity fields
- Maintain records — history and import