Capacitor Barcode Scanner
The Scanbot Capacitor Barcode Scanner SDK adds fast and reliable 1D and 2D barcode scanning to your iOS and Android apps using native Capacitor plugins.
Trusted by
400+
global
industry leaders
Real-time AR feedback
With the Capacitor Barcode Scanner SDK, you can overlay important information on the screen during barcode scanning – making the scanning process even easier for your users.
Barcode scanning in challenging conditions
The Capacitor Barcode Scanner SDK is optimized to reliably work in challenging environments, such as:
- Damaged barcodes
- Low-light environments
- Tiny or distant barcodes
Customizable UI components
Our Ready-To-Use UI components cover all barcode scanning scenarios and are highly customizable. Learn more
Fast.
Very fast.
Every scan happens in
Add a fast and reliable Barcode Scanner to your Capacitor app
Integrate the Scanbot Capacitor Barcode Scanner SDK into your hybrid applications easily. The SDK provides APIs for scanning and parsing both 1D and 2D barcodes, ensuring fast, accurate barcode recognition in real time for iOS and Android platforms.
The Scanbot Capacitor Barcode Scanner supports a wide variety of barcode formats like QR codes, PDF417, and EAN, making it suitable for industries such as retail and logistics. With Ready-To-Use UI components, the barcode scanning functionality can be implemented quickly, with minimal coding required. The SDK excels in low-light environments and can handle damaged barcodes, ensuring reliable performance even in challenging scenarios.
Additionally, the SDK supports image-based barcode scanning, allowing users to scan barcodes from uploaded images, adding flexibility for document management and product tracking applications.
The Scanbot SDK operates 100% offline and processes data directly on the user’s device, ensuring GDPR and CCPA compliance. There are zero connections to our or any third-party servers.
Technical requirements
The Scanbot Capacitor Barcode Scanner SDK has the following technical requirements:
- Developer Tools:
- NodeJS 18+
- Capacitor CLI: Version 6+
- For Android apps: Android Studio | 2025.1.3+, Android SDK (API Level 23+), Java SDK 17+, Android Gradle Plugin 8.9.1+ or Kotlin Plugin applied
- For iOS apps: iOS 13+, macOS with Xcode 16.2+, Xcode Command Line Tools, Homebrew
- Mobile Platforms:
Android 6.0+ (API Level 23+) and iOS 13.0+ - Hardware: A rear-facing camera with autofocus
- Architectures
- Android: armeabi-v7a, arm64-v8a, x86, x86_64
- iOS: arm64, x86_64
Discover common Capacitor Barcode Scanning use cases
See how the scan modes of the Scanbot Capacitor Barcode Scanner can improve your workflows.
-
Single Scanning
Single Scanning mode captures one barcode at a time. This mode is ideal for simple tasks such as re-ordering a product or looking up stock. An optional confirmation sheet lets users verify the scanned value before submitting.
-
Batch Scanning
-
Multi Scanning
-
Find & Pick
-
Scan & Count
How to integrate the Scanbot Capacitor Barcode Scanner SDK using Ready-To-Use UI
To integrate the Scanbot Capacitor Barcode Scanner SDK, add the SDK dependencies to your project, initialize the SDK with your license key, and launch a scanning mode via the Ready-To-Use UI.
Import
To use the RTU UI, import ScanbotBarcode and all related configurations and results from capacitor-plugin-scanbot-barcode-scanner-sdk.
Example:
import {
BarcodeScannerScreenConfiguration,
ScanbotBarcode,
} from 'capacitor-plugin-scanbot-barcode-scanner-sdk';
async function startBarcodeScanner() {
// Create the default configuration object.
const config = new BarcodeScannerScreenConfiguration();
// See further customization configs...
const result = await ScanbotBarcode.startScanner(config);
}
Returns:
The BarcodeScannerUiResult class provides scanned items containing rich barcode data and extracted documents. Use its properties to retrieve text, format, and structured data.
import {
ScanbotBarcodeSDK,
BarcodeScannerScreenConfiguration,
ScanbotBarcode,
} from 'capacitor-plugin-scanbot-barcode-scanner-sdk';
async function handleScanningResult() {
// Start the barcode RTU UI with default configuration
const scanningResult = await ScanbotBarcode.startScanner(new BarcodeScannerScreenConfiguration());
// Check if the status returned is ok and that the data is present
if (scanningResult.status == 'OK' && scanningResult.data) {
// Loop through the scanned barcode items and extract the desired barcode data
const requiredBarcodeInfo = scanningResult.data.items.map(({ barcode }) => ({
format: barcode.format, // The format of the scanned barcode
textValue: barcode.text, // The value of the barcode represented as a string
rawValue: barcode.rawBytes, // The raw value of the barcode
document: barcode.extractedDocument, // The embedded barcode document
}));
}
}
Frequently Asked Questions
What are the key requirements for the Scanbot Capacitor Barcode Scanner SDK?
The Scanbot Capacitor Barcode Scanner SDK has the following key requirements:
Capacitor CLI: Version 6 higher
Operating System:
- Android: 6.0 (API Level 23) and higher
- iOS: 13.0 and higher
Hardware: A device with a rear-facing camera with autofocus
Supported Architectures:
- Android: armeabi-v7, arm64-v8a, x86, x86_64
- iOS: arm64 (physical devices) and x86_64 (simulators)
- These requirements ensure smooth integration and reliable barcode scanning on both iOS and Android devices through the Capacitor framework.
Can I use the Capacitor Barcode Scanner SDK offline?
Yes, the Scanbot Capacitor Barcode Scanner SDK works fully offline. All barcode scanning and data processing happen locally on the device, ensuring data privacy and security. This offline functionality is particularly useful for use cases in remote environments, warehouses, and field operations, where internet connectivity may be unreliable or unavailable.
Does the Capacitor Barcode Scanner SDK support all barcode types?
Yes, the Scanbot Capacitor Barcode Scanner SDK supports a wide variety of 1D and 2D barcode formats. These include:
1D Barcodes: UPC, EAN, Code 128, Code 39, ITF, and more
2D Barcodes: QR codes, PDF417, DataMatrix, Aztec, and others
This broad barcode support makes the SDK ideal for industries such as retail, logistics, healthcare, document management, and more.
Is there a trial version available for the Capacitor Barcode Scanner SDK?
Yes, you can obtain a 7-day free trial license for the Scanbot Capacitor Barcode Scanner SDK. To request a trial, visit the Scanbot SDK trial request page. After filling out the form, you will receive a trial license key via email, which allows you to evaluate the SDK’s full functionality.
Is the Scanbot Capacitor Barcode Scanner SDK compatible with different Android and iOS devices?
Yes, the Scanbot Capacitor Barcode Scanner SDK is compatible with a wide range of devices on both Android and iOS platforms. The SDK supports:
Android: Devices running Android 5.0 (API Level 22) and higher
iOS: Devices running iOS 13.0 and higher
Architectures:
- Android: armeabi-v7, arm64-v8a, x86, x86_64
- iOS: arm64, x86_64
How can I customize the Scanbot Capacitor Barcode Scanner UI?
The Scanbot Capacitor Barcode Scanner SDK provides customizable UI components, allowing you to adjust the scanner's layout and appearance to fit your app’s design requirements. Customization options include:
1. Scanner overlay
2. Button styles
3. Feedback sounds and messages
This flexibility ensures that the barcode scanner UI can be easily tailored to match the branding and user experience of your Ionic Capacitor app.
Furthermore, you can also integrate the SDK using Classical Components, giving you complete freedom in creating the scanner UI.
What platforms are supported besides Capacitor / Ionic?
In addition to Capacitor / Ionic, the Scanbot SDK supports several other platforms, enabling integration across various environments. Supported platforms include:
1. iOS
2. Android
3. JavaScript (Web)
4. Flutter
5. React Native
6. Cordova
7. Xamarin
8. .NET MAUI
9. UWP (Universal Windows Platform)
10. Linux
This broad platform support makes the Scanbot SDK adaptable to a wide variety of use cases across web, mobile, and desktop applications.