Skip to main content

Changelog | React Native Barcode Scanner

Version 4.2.0 (18 April 2024):

  • 🎉 New:
    • Added new supported Barcode types: CODE_25, IATA_2_OF_5, INDUSTRIAL_2_OF_5, MICRO_QR_CODE, USPS_INTELLIGENT_MAIL, ROYAL_MAIL, JAPAN_POST, ROYAL_TNT_POST, AUSTRALIA_POST, DATABAR_LIMITED and GS1_COMPOSITE.
    • Introduced Barcode Document Formats! When scanning barcodes, if a supported document is recognized, it will be parsed and included in the result.
    • New functionality to extract images from PDF files! See the new API functions extractImagesFromPDF.
    • Added a type literal, BACK_WIDEST for CameraModule (iOS only).
    • Added encryption for image files. For more details please check out the section Storage Encryption.
    • Added new configuration properties for Barcode Scanner RTU-UI Screen:
      • flashButtonTitle
      • barcodeValueFilter
      • touchToFocusEnabled
      • confirmationDialogConfiguration
    • Added new configuration properties for Batch Barcodes Scanner RTU-UI Screen:
      • flashButtonTitle
      • barcodeValueFilter
      • touchToFocusEnabled
      • autoCancelTimeout
    • iOS: Added Privacy manifest file (PrivacyInfo.xcprivacy) to the SDK.
  • 🚀 Improvements:
    • Improved general speed and accuracy when detecting barcodes.
    • Added more control over how to handle GS1 messages in barcodes. See gs1HandlingMode in barcode scanner configuration.
    • Overall improvements for the Barcode Camera View component.
  • 🐞 Bug fixes:
    • Fixed potential memory leaks in all RTU-UI screens.
    • iOS: Fixed a bug where the finder text hint was still showing when viewFinderEnabled was disabled for RTU-UI screens.
    • iOS: Fixed a wrong polygon color in RTU-UI barcode scanner tracking overlay.
    • Android: Fixed minimum1DBarcodesQuietZone property for ScanbotBarcodeCameraViewConfiguration classical component.
  • ⚠️ Breaking changes:
    • Renamed InitializationOptions type to ScanbotBarcodeSdkConfiguration and added new properties:
      • fileEncryptionMode
      • fileEncryptionPassword
    • Renamed FinderAspectRatio type to AspectRatio.
    • Renamed BarcodeOverlayFormat type to BarcodeOverlayTextFormat.
    • Renamed BarcodeResult type to BarcodeScannerResult and removed imageFileUri from the main result.
    • Replaced barcodeFilter property in barcode scanner configurations with barcodesExtensionFilter.
    • Replaced allowedInterfaceOrientations property in barcode scanner configurations with orientationLockMode.
    • Replaced overlayTextFormat property in selection overlay configuration with textFormat.
    • Replaced gs1DecodingEnabled property with gs1HandlingMode. GS1 codes are now handled differently for various barcode types. Using the default option PARSE will give the same result as before for all barcode types, except of RSS_EXPANDED. Previously, for RSS_EXPANDED, the result was inconsistently returned with parentheses. Now, to get results with parentheses for all barcode types, choose the option DECODE.
    • Removed barcodeImageGenerationType property in barcode scanner configurations.
    • Type literals for MSIPlesseyChecksumAlgorithm have been modified.
    • Results from all API calls are modified. You will receive ResultWrapper that contains status property and data optional generic property.
  • 🚙 Under the hood:
    • Upgraded native Scanbot Android Barcode Scanner SDK to v4.2.0
    • Upgraded native Scanbot iOS Barcode Scanner SDK to v4.2.2
    • Android: Updated version of Nameof C++ library to v0.10.3
    • Android: Disabled GPU acceleration for Redmi 9 models, Samsung Galaxy Grand Prime and devices with Android older than 6.

Version 4.0.4 (23 Jan 2024)

  • 🎉 New:
    • Added scanningEnabled property in the ScanbotBarcodeCameraView native component configuration. When disabled, no barcodes will be detected, but the camera preview will still be active. Default is enabled.
  • 🐞 Bug fixes:
    • Fixed finderInset property in the ScanbotBarcodeCameraView native component configuration. For Android so far pixels were used, now these values are representing dip.
    • Android: Fixed finderAspectRatio property in the ScanbotBarcodeCameraView native component configuration

Version 4.0.3 (15 Dec 2023)

  • 🚀 Improvements:
    • The plugin is now compatible with React Native v0.73
  • 🐞 Bug fixes:
    • iOS: Fixed native component issue when new architecture is enabled

Version 4.0.2 (27 Oct 2023)

  • 🐞 Bug fixes:
    • Android: Fixed crash that occurred when the app was killed in the background while the scanner screen was open.

Version 4.0.1 (9 Oct 2023)

  • 🎉 New:
    • Added licenseExpirationDate to the SDK function getLicenseInfo result.
  • 🚀 Improvements:
    • The SDK function getLicenseInfo can now also be called even when the SDK initialization has failed.
    • Significantly improved memory usage.
  • 🐞 Bug fixes:
    • Fixed various memory leaks on iOS.

Version 4.0.0 (5 Oct 2023)

  • 🎉 New:
    • Introduced support for React Native New Architecture! The classic component ScanbotBarcodeCameraView is available as a Fabric Component when enabling the new architecture. Backward compatibility is still granted.
  • 🚀 Improvements:
    • Android: CameraX is now used by default for Ready-To-Use UI Components. You can disable it by setting useCameraX to false when initializing the SDK.
    • Improved the speed of barcode recognition for most barcode symbologies.
    • Fixed false positives for Code 39 and Codabar barcodes.
    • Fixed potential memory leak in all RTU-UI screens.
  • ⚠️ Breaking changes:
    • IMPORTANT: Increased required minimum version of React Native to 0.68
  • 🐞 Bug fixes:
    • iOS: Fixed a focusing issue with the new iPhone 15 Pro and 15 Pro Max.
  • 🚙 Under the hood:
    • The Scanbot Android Barcode SDK has been updated to v4.0.1 (see the changelog)
    • The Scanbot iOS Barcode SDK has been updated to v4.0.2 (see the changelog)

Version 3.7.0 (29 Aug 2023)

  • 🎉 New:
    • Added support for the barcode type MICRO_QR_CODE. See
    • Added new properties to BarcodeScannerConfiguration and BatchBarcodeScannerConfiguration:
      • viewFinderEnabled
      • cameraZoomRange
      • enableCameraButtonTitle
      • enableCameraExplanationText
      • initialScanDelay
      • cameraPreviewMode
      • minFocusDistanceLock
      • focusLockPosition
      • focusLockEnabled
      • doubleTapToZoomEnabled
      • pinchToZoomEnabled
      • shouldAnimateZooming
    • Added autoCancelTimeout and delayAfterScan to BarcodeScannerConfiguration.
  • 🚀 Improvements:
    • Improved per-frame accuracy for QR code detection.
  • ⚠️ Breaking Changes:
    • iOS: Removed support for iOS 11.x and 12.x. The minimum deployment target to use ScanbotSDK in your app is iOS 13.0!
  • 🐞 Bug fixes:
    • iOS: Fixed a bug where automaticSelectionEnabled was not working properly in BatchBarcodeScannerConfiguration.
  • 🚙 Under the hood:

Version 3.6.0 (30 May 2023)

  • 🎉 New:
    • Added support for the barcode type CODE_25, which is a variant of the Industrial-2of5 type without the checksum. See
  • 🚀 Improvements:
    • Improved barcode scanning with new ML models.
    • Substantial improvements to stacked RSS barcode scanning.
  • ⚠️ Breaking Changes:
    • Removed decodeStacks1D property from BarcodeAdditionalParameters. The barcode scanner now handles this automatically.
  • 🚙 Under the hood:

Version 3.5.0 (28 Mar 2023)

  • 🎉 New:
    • Added decodeStacks1D property in BarcodeAdditionalParameters which is available in all Ready to use UI and classical components.
    • Added automaticSelectionEnabled property in SelectionOverlayConfiguration.
  • 🚀 Improvements:
    • The overlayTextFormat property in SelectionOverlayConfiguration now supports all formats. Please check BarcodeOverlayFormat enum.
  • 🐞 Bug fixes:
    • Android: Fixed the codeDensity property in the classical component.
    • Android: Fixed the flashEnabled property in the classical component.
  • 🚙 Under the hood:

Version 3.3.1 (8 Feb 2023)

  • 🐞 Bug fixes:
    • Fixed build errors for RN 0.70+ caused by usage of deprecated dimensions listener
    • Fixed wrong default values for finder inset in BarcodeCameraView
    • BarcodeCameraView: fixed barcode detection not working after navigating back from a different page on Android
  • 🚀 Improvements:
    • Android: Improved the performance of the Barcode Camera View
  • 🚙 Under the hood:
    • Internal restructure of BarcodeCameraView UI
    • Updated Android SDK to v3.3.1.244-SNAPSHOT

Version 3.3.0 (11 Jan 2023)

  • 🎉 New:
    • Added barcode formats IATA2Of5 and Industrial2Of5.
    • Added SelectionOverlayConfiguration class for showing barcode detail overlays while scanning.
    • Added overlayConfiguration property of type SelectionOverlayConfiguration in BarcodeScannerConfiguration and BatchBarcodeScannerConfiguration for configuring the overlay UI.
    • Added new parameter finderInset of type FinderInset for setting the insets to Finder View in ScanbotBarcodeCameraViewConfiguration classical component.
    • Added Barcode Additional Parameter codeDensity of type CodeDensity in all barcode detection categories.
  • ⚠️ Breaking changes:
    • Removed finderMininmumPadding and finderVerticalOffset from ScanbotBarcodeCameraViewConfiguration. Use finderInset property instead.
    • Removed orientation enums LANDSCAPE_LEFT, LANDSCAPE_RIGHT, PORTRAIT_UPSIDE_DOWN and ALL_BUT_UPSIDE_DOWN. Please use ALL, PORTRAIT or LANDSCAPE instead.
  • 🚙 Under the hood:

Version 3.2.1 (13 Sep 2022):

  • 🎉 New:
    • Barcode Camera View Component new implementation!
      • Android: Using CameraX under the hood; replaced old fragment based implementation: now the component is much more stable and also compatible with the majority of React Views
      • iOS: UI and performance minor improvements
    • Added rawBytes attribute to barcode results: it contains the unparsed raw data detected in the scanned image, as an array of bytes.
    • Added textWithExtension attribute to barcode result: if the detected barcode has an extension, it contains both the text and the extension, otherwise it contains the text only.
    • Added barcode filters in all components! See configuration parameter barcodeFilters. NOTE: while using barcodeFilters, please leave barcodeImageGenerationType to its default value (NONE)
    • Added parameters lowPowerMode, gs1DecodingEnabled and msiPlesseyChecksumAlgorithm to detectBarcodesOnImage
  • 🐞 Bug fixes:
    • Fixed bug for which some additionalParameters in barcode detection were ignored
  • ⚠️ Breaking Changes:
    • BarcodeResult barcodes attribute is now non-nullable; an empty array will now be returned whenever no barcodes can be detected
    • TypeScript type ScanbotBarcodeCameraViewResult has been removed; use BarcodeResult instead

Version 3.2.0 (21 Jun 2022):

  • 🎉 New:
  • 🚀 Improvements:
    • Huge improvement on the speed and accuracy of 1D barcodes recognition.
    • Native libraries size decreased by more than 20%
    • iOS: Improved barcode image cropping.
  • 🐞 Bug fixes:
    • iOS: Fixed scanning issue for Barcode types RSS_14 and RSS_EXPANDED.
  • 🚙 Under the hood:
    • Upgraded the native Scanbot Android SDK to v3.2.1 (cf. changelog)
    • Upgraded the native Scanbot iOS SDK to v3.2.1 (cf. changelog)

Version 3.1.0 (9 Feb 2022)

  • 🎉 New:
    • Added the ability for Scanbot SDK Core native logging! See enableNativeLogging in ScanbotBarcodeSDKConfiguration (Android only).
    • Added allowXnnpackAcceleration in ScanbotBarcodeSDKConfiguration which allows controlling whether the XNN pack optimizations should be used (Android only).
    • Added lowPowerMode in ScanbotBarcodeSDKConfiguration and BatchBarcodeScannerConfiguration (Android only).
    • Added cameraModule in ScanbotBarcodeSDKConfiguration and BatchBarcodeScannerConfiguration.
  • 🚀 Improvements:
    • Improved Aztec barcode recognition.
    • Improved PDF417 recognition performance on single photos.
    • Improved barcode detection on large documents.
    • Improved GS-1 databar recognition in the next-gen barcode scanner.
  • 🚙 Under the hood

Version 3.0.1 (19 Nov 2021)

  • 🎉 New:
    • Introduced BarcodeCameraView native component! From now on you can use it to embed our camera view directly into your react layouts! See BarcodeCameraView
    • Introduced force close functionality in RTU-UI components! You can use it to programmatically close the components. See closeBarcodeScanner and closeBatchBarcodeScanner
    • Additional parameter stripCheckDigits in Barcode Scanner RTU-UI, Batch-Barcode Scanner RTU-UI and BarcodeCameraView
    • Added support for zooming in Batch Barcode Scanner RTU-UI. See startBatchBarcodeScanner
    • Android: You can enable CameraX under the hood on Android. See useCameraX in InitializationOptions
    • Android: GPU Acceleration will be used for Barcode Scanner RTU-UI and Batch Barcode Scanner RTU-UI. You can disable it by setting allowGpuAcceleration to false; see InitializationOptions
  • 🚀 Improvements:
    • acceptedDocumentFormats now works on iOS for Batch Barcode Scanner
    • Improved recognition of UPC/EAN barcodes due to ink spread
    • Significant performance improvements of the scanner
    • All-zeros MSI Plessey barcodes are ignored now
    • Android: Improved internal architecture of all RTU screens
  • 🐞 Bug fixes:
    • Fixed some rare crashes
    • Android: Fixed msiPlesseyChecksumAlgorithm, stripCheckDigits and cameraZoomFactor parameters being ignored in BatchBarcodeScannerConfiguration
    • Android: Fixed a bug for which RTU-UI does not detect any barcodes with the image generation type VIDEO_FRAME
  • 🚙 Under the hood:
    • Updated the native Android Scanbot Barcode Scanner SDK to 3.0.6
    • Updated the native iOS Scanbot Barcode Scanner SDK to 3.0.3

Version 3.0.0 (16 Jul 2021)

  • 🎉 New:
    • Brand new "Next Generation" machine-learning-based barcode scanning engine with improved reliability and much faster performance
    • API changes for the new barcode engine: added engineMode property on barcode scanning APIs to switch between the legacy barcode engine and the new Next Generation barcode engine. By default, the new engine is used.
    • Re-introduced MSI Plessey barcode recognition (disabled by default)
  • 🚙 Under the hood:
    • Updated the native Android Scanbot Barcode Scanner SDK to 3.0.1
    • Updated the native iOS Scanbot Barcode Scanner SDK to 3.0.0

Version 1.1.1 (1 July 2021):

  • 🚀 Improvements:
    • Changes to .podspec to support react-native 0.63+'s new dependency management system
    • All configuration and result imports are now available from package root

Version 1.1.0 (4 May 2021):

  • 🚀 Improvements:

    • Significantly improved barcode scanning & detection.
    • Various RTU-UI improvements.
    • Introduced minimumTextLength, maximumTextLength, minimum1DBarcodesQuietZone for ITF Barcodes, and enableGS1Decoding for CODE-128 Barcodes. See startBarcodeScanner, detectBarcodesOnImage and startBatchBarcodeScanner.
    • Android: memory consumption optimization.
  • ⚠️ Breaking Changes:

  • 🐞 Bug fixes:

    • Many bug fixes and improvements
    • iOS: Fixed an issue with uploading apps containing the Scanbot Barcode SDK (related Apple error codes ITMS-90166, ITMS-90535 and ITMS-90171).
  • 🚙 Under the hood:

    • Updated Android Scanbot Barcode SDK to version 1.7.0
    • Updated iOS Scanbot Barcode SDK to version 1.11.0

Version 1.0.0 (18 Mar 2020):

  • 🎉 First release.

Want to scan longer than one minute?

Generate your free "no-strings-attached" Trial License and properly test the Scanbot SDK.

Get your free Trial License

What do you think of this documentation?