Not sure which Scandit product fits your use case?
Install the Scandit plugin and use the /data-capture-sdk skill so that your AI coding agent can recommend the right product for your use case. More info →
Run the following command in your project directory. It detects the supported coding agents you have installed and adds the Scandit plugin to each. Re-run it to update.
npx plugins add scandit/skillsPrefer to set it up yourself? Manual installation steps for each agent →
AI-Powered Barcode Scanning
Barcode scanning workflows commonly face operational challenges such as scanning from awkward angles or long distances, selecting the correct barcode in dense environments, handling damaged labels, and preventing unintended duplicate scans. Traditional scanners handle these scenarios with rigid time-based logic and manual user intervention, which slows down workflows and increases errors.
Scandit's AI-powered scanning capabilities, built into the Scandit AI Engine and available in both SparkScan and Barcode Capture, solve these problems by analyzing context and user intent in real-time. The scanner adapts dynamically to environmental conditions and user behavior.
On Web, these features are off with the default settings. To use intent anticipation and the Smart Duplicate Filter, set the scan intention to Smart. For dense-environment selection, also set the selection mode to Auto. You enable the text recognition fallback per symbology. For details, see Default settings.
Overview
The AI-powered features address four critical scanning challenges:
-
Avoiding unintentional scans – Prevent background codes from being captured along with the intended barcode
-
Selecting barcodes in dense environments – Support the user in selecting the right barcode among many by automatically enabling the aimer
-
Handling damaged or unreadable barcodes – Automatically fall back to OCR to capture the text value when barcode decoding fails
-
Filtering duplicates – Distinguish intentional duplicate scans from accidental re-scans
Intent anticipation and dense-environment selection depend on two settings: scan intention and selection mode. The Smart Duplicate Filter depends on the scan intention and the duplicate filter setting, with one exception for selection mode On, as described in Filtering duplicate scans. The defaults differ by capture mode and by framework, as shown in Default settings. You configure the text recognition fallback for damaged barcodes per symbology, as described in Scanning damaged barcodes.
Default settings
The following table lists the default scan intention and selection mode for each capture mode.
| Framework | SparkScan scanIntention | SparkScan selectionMode | Barcode Capture scanIntention | Barcode Capture selectionMode |
|---|---|---|---|---|
| iOS, Android, React Native, Flutter, Capacitor, Cordova, .NET iOS, .NET Android, Kotlin Multiplatform | Smart | Auto | Smart | Off |
| Web | Manual | Off | Manual | Off |
With these defaults:
- On every framework except Web, SparkScan anticipates user intent and assists with selection in dense environments without any configuration.
- On every framework except Web, Barcode Capture anticipates user intent. Dense-environment selection is off until you set the selection mode to Auto.
- On Web, both capture modes use manual scan intention and no selection assistance until you enable them.
Smart scan intention and Auto selection mode take effect on supported devices only. Auto selection mode requires Smart scan intention. If you set the scan intention to Manual, Auto behaves like Off.
On Web, SparkScan behaves differently while the scan intention is unset. The scan intention is unset if you never set it or you set it to null. For details, see Selecting barcodes in dense environments.
Avoiding unintentional scans
The problem
When scanning items from a distance or with imperfect aiming, which is common in retail backrooms, warehouses, or during replenishment, users often accidentally capture barcodes in the background or periphery instead of their intended target. This forces them to open their scan list, identify the wrong entry, delete it, and try again.
Traditional scanners trigger on any barcode that enters the scanning area, relying on users to maintain perfect aim and proximity to the target code. This approach breaks down in real-world conditions where users need to scan quickly from natural working distances.
How Scandit solves it
The scanner uses intent anticipation algorithms to analyze device movement and aiming behavior in real-time. It identifies which barcode the user is trying to scan and ignores unintended codes even when aiming is imperfect or scanning from a distance.
This allows users to scan from comfortable distances without the precision required by traditional scanners.
Key benefits:
-
Scan from natural distances without bending or reaching
-
Reduce list cleanup and workflow interruptions
-
Maintain accuracy even with fast, imprecise movements