Scanning
Scanning is the other half of the Label loop: point your camera at a printed DataMatrix code and get taken straight to the matching Item or Location page — no searching, no browsing the Location tree by hand.
Using the scanner
A floating scan button is available on the main screens of the app — the dashboard, the Spaces list, a Space's page, a Location's page, and an Item's detail page (it's hidden on settings pages and item-creation flows, where it wouldn't make sense). Tapping it opens a full-screen camera overlay with a viewfinder guide; hold a printed label steady in frame and it decodes automatically — there's no separate "capture" button to press.
:::info Screenshot placeholder The full-screen scan overlay: live camera feed with a viewfinder guide frame and a close button. :::
What happens after a scan
- Valid code, in your current Organization — the app navigates straight to the matching Item or Location page immediately, no confirmation step.
- Valid code, but it belongs to a different Organization you're also a member of — you get a brief confirmation prompt ("Found in '<other org>' — switch and open?"), since jumping to a different Organization is a bigger context switch than a normal same-org navigation. Confirming switches your active Organization and opens it; canceling just keeps scanning.
- Unrecognized or damaged code, or a code belonging to an Organization you're not a member of — a brief inline error appears and the camera keeps running, so you can immediately try another label without reopening the scanner.
Device support
The scanner works on any device with a camera — desktop with a webcam included, not just phones/tablets. It uses the browser's built-in barcode detection where available, and falls back to an in-browser decoder on browsers that don't support it natively (including Safari on iOS), so scanning works broadly even though printing itself is more browser-restricted.
If camera access is denied, the overlay shows a clear message explaining that camera access is needed, with a button to retry the permission prompt.