Design · Module Customization / NFC Design

NFC V1 vs V2 Comparison

In V1, NFC Scan offers a basic chip reading experience with minimal user guidance, no dedicated intro screen with the Incode header, limited scan state feedback, and restricted customization options. The scanning flow runs with a simple bottom sheet and generic status labels.

In V2, NFC Scan delivers a significantly improved experience with a dedicated tutorial screen, an NFC chip presence check, a cleaner bottom sheet design with bolder typography, real-time progress feedback through a green progress bar, structured error handling with a retry carousel, and full alignment with the token-based design system — resulting in a clearer, more guided, and more brandable flow.





Feature Comparison

Functional capabilities of the module (objective features only; no UX or performance differences).

Capabilities V1 V2 Notes
NFC chip scanning Both versions read and extract data from NFC-enabled passport chips.
NFC chip presence check V2 includes an optional screen to confirm the document supports NFC before initiating the scan.
Retry flow Both versions allow the user to retry after a failed scan attempt.
Common issues screen V2 includes a dedicated help screen listing the most frequent causes of scan failure.
Error states Both versions handle general error cases the user may encounter.
Dark mode support Both versions support dark and light display modes.
Customization options V1 provides limited customization, while V2 allows full control over text, colors, buttons, and behavior.
Documentation completeness V2 provides complete, standardized documentation coverage.



Behavior Differences

How the module behaves during runtime.

Behavior V1 V2 Notes
Tutorial behavior Basic intro screen with a tilted passport illustration and back/close navigation Dedicated intro screen with an upright passport illustration, Incode header, and a single "Start scanning" CTA V2 is more focused and directs the user's attention toward the scanning instructions with a cleaner visual hierarchy.
Scan state feedback Simple bottom sheet with "Ready to scan" and "Hold still.." labels and a dot-row progress indicator Bottom sheet with bold "Ready to scan" heading, descriptive subtitle, and a green linear progress bar at the top V2 actively communicates scanning progress so users understand what the module is doing at each moment.
Success confirmation "Document chip scan success" with a green checkmark "Identity successfully verified" with a green checkmark badge V2 language reflects the full verification outcome rather than just the chip read result.
Error handling Generic error screen Structured "Let's try again" screen with a swipeable tip carousel, Help CTA linking to Common Issues, and a Try again CTA V2 gives users specific, actionable guidance on what went wrong and how to fix it.
Navigation controls Back arrow and X close button in the header No navigation chrome; Incode header only V2 removes distracting navigation elements to keep the user focused on completing the scan.
State transitions Default transitions Specifically designed screen-by-screen transitions for smoothness V2 includes transition guidelines as part of the module documentation package.


Customization Overview

Customization in V2 is significantly simpler and more consistent across modules.


Instead of having isolated configuration options per screen or component, V2 uses a unified token-based system that allows developers to control visuals, behaviors, and experience patterns with fewer parameters and predictable outcomes.

This means:

  • Less engineering work to override UI elements
  • Consistent branding across all NFC Scan screens
  • Predictable behavior when changing settings
  • Reduced risk of breaking flows
  • Clear separation between visual tokens and experience configuration

V2 centralizes all customization options under a single structure, so developers always know where to look and what they can modify. This includes button styles, progress bar color, bottom sheet typography, instructional text, error message styling, and the "Verified by Incode" footer — making it straightforward to align the module with your brand without affecting core chip reading and verification logic.



Was this page helpful?