Overview

You can integrate the Genius Scan SDK in two different ways:

  • A simple integration, the fastest way to integrate a scanning flow in your app. You prepare a configuration object with the desired settings, and you start a scan flow in a single line.
  • A custom integration with access to lower-level components and APIs that lets you create an advanced integration. This requires more development time, but you have full control of your user experience, and you can mix and match the various components to fit your precise needs.

Requirements

Native

  iOS Android
Minimum version 13.0 5.0 (API Level 21)
Architectures x86_64, arm64 x86, x86_64, armeabi-v7a, arm64-v8a

Web

The Genius Scan SDK for Web mainly depends on Webassembly support, which all modern browser support, so compatibility shouldn’t be a problem.

Browser Version
Chrome 57
Edge 16
Firefox 52
Opera 44
Safari 11
Chrome Android 57
Firefox for Android 52
Opera Android 43
Safari on iOS 11
Samsung Internet 7
WebView Android 57
WebView on iOS 11
Bun 1
Deno 1
Node.js 8

Document Scanning

With just a couple lines of code, you can integrate a scanner module into your app and get a series of images or a PDF as an output. You can finish your integration in as little as an hour. This simple scanner module consists of two screens: the live view, which lets the user frame the document, and the review screen, which enables the user to validate — and optionally edit — the scanned file. If the multi-page mode is enabled, the user will repeat these steps until they have digitized all the pages.

The scan flow is fully configurable. You can customize the user experience:

  • Enable or disable the multi-page mode.
  • Customize the colors to match your brand.
  • Choose the source for scanning. ScanFlow can use the camera, import a photo that the user picks in the photo library, or an existing file that you provide.
  • Customize the default filter applied to the documents.
  • Show or hide specific features such as the flash mode, or which tools are available in the scan review screen. For instance, you can prevent the user from changing the default filter always to receive black and white documents; you can activate or not the curvature correction.

You can tweak the resolution and the compression of the output to ensure it meets your file size requirements.

You can also activate additional features such as:

  • Structured data scanning enables you to extract data from scanned documents, such as receipt details, banking information, barcodes and QR-codes.
  • Readability detection lets you ensure legible scans (without blur) by showing a warning to users if a readability threshold isn’t met.

The simple integration is available on iOS and Android native and is also available through the React Native, Flutter, Cordova (which includes PhoneGap and Ionic), .NET MAUI (Xamarin) hybrid plugins.

You can give the scan flow a try and modify its configuration by installing our public demo apps:

Barcode Scanning

Similarly to the document scan flow, the Genius Scan SDK offers a barcode scan flow that lets you integrate a barcode scanner in a few minutes across platforms.

The barcode scanner consists of a viewfinder that looks for barcodes, with two options:

  • A single mode that dismisses immediately as soon as a barcode is identified.
  • A batch mode that enables the user to scan multiple barcodes in the same session, and validate when they are done.

In both cases, the output of the barcode scan flow will be the detected barcode(s).

Custom Integration

The Genius Scan SDK also exposes individual UI components, image processing and PDF generation APIs. You can design the exact scan flow and user interaction that you desire. While we designed the API to be easy to use, this development will take a bit more time than the simple integration with ScanFlow.

For instance, you can re-use the live scanning view (which does the heavy lifting of the real-time preview and document detection for you) while customizing all the UI surrounding it. Genius Scan does exactly that and relies on a custom SDK integration to offer a simple, refined user experience:

One of our customers, Imito AG, has created a custom scanning module for their imitoScan app that highlights user guidance and use transparent controls:

The custom integration is possible with iOS and Android native. We don’t provide hybrid plugins to wrap the advanced APIs: if you want to do an advanced integration using hybrid technologies, you will have to encapsulate the APIs and maintain the plugins by yourself.

Which Integration Should I Choose?

Your choice will depend on two factors: your functional requirements, as well as your platform constraints. The simple integrations offer some flexibility, but a custom integration will give you more choice in terms of user experience. The simple integration is available on all platforms, while the custom integration is only available on native platforms, and doesn’t offer cross-platform technology support.

We recommend going with a simple integration that relies on our scan flow for several reasons:

  • Speed of integration: A few hours compared to days or weeks depending on your needs
  • Cross-platform support from the get-go: You have React Native, Flutter, Cordova, .NET MAUI plugins provided for you
  • Highly optimized flows: Our simple scan flows benefit from our years of experience with Genius Scan, used by millions of users. You may think a different flow will work better, but we recommend you consider this carefully

What’s Next?

In both cases, you need to get started.

Products

Industries

Case Studies

Integration

Company

© 2025 The Grizzly Labs. All rights reserved.