Skip to content

OCR Integration with Android Registration Client #647

@Pragya279

Description

@Pragya279

User Story: OCR Integration with Android Registration Client

As a Registration Operator
I want the Android Registration Client to extract demographic information from identity documents using OCR
So that I can reduce manual data entry, minimize typing errors, and speed up the registration workflow.

Problem / Need

Manual entry of demographic information (name, address, date of birth, etc.) is time-consuming and prone to human errors. Operators often struggle with handwritten or complex documents, leading to incorrect data entry, failed validations, and a poor applicant experience.

Integrating OCR (Optical Character Recognition) within the Android Registration Client will:

Reduce manual typing

Improve data accuracy

Speed up the registration process

Ensure consistent, standardized extraction of text from documents

This feature enables operators to simply scan a document, after which the system automatically extracts, pre-fills, and validates demographic fields.

Feature Description

Document Capture
Operator uses the Android device camera to take a photo of an identity document (ID card, certificate, supporting document).

The system provides on-screen guidance for:

Alignment

Focus

Lighting

Avoiding glare or blur

A retake option is available.

OCR Extraction
Once the document image is captured:

The system invokes the integrated OCR engine (on-device or server-based).

OCR extracts text from:

Name fields

Address

Date of Birth

Gender

Document number (if applicable)

Supporting remarks

Extracted text is mapped to specific demographic form fields.

Automatic Pre-Fill
Extracted values are auto-populated into the corresponding fields in the Demographic Details page.

Operator can edit, correct, or override OCR results before proceeding.

Fields with low OCR confidence are highlighted for operator review.

Confidence Indicators
For each OCR-extracted value, the system shows:

Confidence score (0–100)

Visual indicators:

Green: High confidence

Yellow: Medium – needs review

Red: Low – manual verification required

Multi-language Support
OCR engine supports extraction in multiple languages (as configured for each deployment).

Mapping of multilingual text to demographic fields is handled by language detection.

Error Handling
If OCR fails or text extraction is incomplete:

System shows an error message

Prompts operator to recapture the document

Allows fallback to manual entry

Data Security & Privacy
OCR processing follows the same encryption and secure storage requirements as other registration data.

Captured document images are stored only if the workflow requires it (configurable).

No OCR data leaves the device unless server processing is enabled by policy.

Configurability
Supported document types

OCR engine selection (on-device / server-based)

Field-level mapping rules

Confidence thresholds

Whether document image is stored or not

Acceptance Criteria
AC1: Operator can capture a document photo using Android Registration Client.
AC2: OCR extracts text from the captured document and maps it to demographic fields.
AC3: Extracted fields are pre-filled automatically and can be edited manually.
AC4: System shows confidence scores and highlights low-confidence fields.
AC5: OCR supports multiple languages depending on deployment configuration.
AC6: OCR errors are handled gracefully with prompts for recapture or manual entry.
AC7: All extracted data follows encryption and security rules of the registration client.
AC8: Configurations such as document types and threshold levels are adjustable without code changes.
Example User Flow

Operator selects “Scan Document”.

Camera opens → operator captures image of ID card.

System validates image quality (lighting, blur).

OCR runs → extracts Name, Address, DOB, Gender.

Extracted values populate the Demographic Details fields.

Low-confidence fields appear highlighted → operator reviews and edits.

Operator saves and proceeds to next step.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions