Customization

This section outlines the elements you can customize within the Manual Upload ID module to match your brand while preserving Incode's core UX. It clarifies which areas are flexible, such as text, tab labels, and brand colors, and which elements remain fixed to ensure consistency, accessibility, and reliable document processing across platforms.


Upload Your Documents

The Upload Your Document screen is where the user selects their document type and uploads the front and back sides of their identity document. It presents upload prompts per document side, image quality hints, and a disabled Continue button that activates only once all required sides have been validated.


Customizable Elements

AreaWhat can be customizedNotes
TextTitle, subtitle, tab labels, upload row labels, hint textFully localizable; tone can be adapted to your brand voice.
Button — UploadLabel, color, radiusMust follow platform guidelines.
Button — ContinueLabel, color, radius (active and disabled states)Must follow platform guidelines.
Background ColorScreen backgroundMust maintain strong contrast with text and elements.
Brand ColorsHeader text, tab indicator, accent colorUses brand tokens.
Footer"Verified by Incode" lineOptional but recommended for trust and product consistency.


Fixed Elements

ElementWhy it is fixed
Continue button disabled stateMust remain inactive until all required document sides are validated.
Upload row structureRequired to ensure both document sides are collected consistently.
Component spacing & safe areasRequired for device compatibility and visual stability.
Text hierarchyOptimized to communicate requirements clearly.
WCAG contrast requirementsMandatory for accessibility and regulatory compliance.


Token Refearence

UI ElementTokenValue
BackgroundSurface/Neutral/0 → Color/Gray/0#FFFFFF
Title textText/Body/800 (Primary) → Color/Gray/800#262831
Tab label (active)Text/Body/800 (Primary) → Color/Gray/800#262831
Tab label (inactive)Text/Body/500 (Secondary) → Color/Gray/500#60667C
Upload row backgroundSurface/Neutral/50 → Color/Gray/50#FCFCFD
Upload button backgroundButton/Primary/Surface/Default → Surface/Brand/500 Static → Color/Brand/500#006AFF
Upload button textButton/Primary/Text/Default → Text/Body/0 Static → Color/Gray/0#FFFFFF
Upload row iconIcon/Neutral/50 Static → Color/Gray/50#FCFCFD
Row label textText/Body/800 (Primary) → Color/Gray/800#262831
Row iconIcon/Neutral/500 → Color/Gray/500#60667C
Close iconSurface/Neutral/0 → Color/Gray/0#FFFFFF
Hint area backgroundSurface/Brand/50 → Color/Brand/50#E5F0FF
Hint textText/Body/800 (Primary) → Color/Gray/800#262831
Continue button background (disabled)Button/Primary/Surface/Disabled → Surface/Neutral/100 → Color/Gray/100#EBECEF
Continue button text (disabled)Button/Primary/Text/Disabled → Text/Body/500 (Secondary) → Color/Gray/500#60667C
Footer textText/Body/500 (Secondary) → Color/Gray/500#60667C

Design Notes

  • Keep instructions clear about what document sides are required and the expected image quality.
  • The Continue button must stay visually distinct in its disabled state to communicate that action is still required.
  • Ensure tap targets on Upload buttons meet accessibility guidelines.


Uploading Documents

This screen appears while a selected file is being uploaded to the system. A spinner and a status message keep the user informed while the operation completes in the background.


Customizable Elements

AreaWhat can be customizedNotes
Title textLoading message ("Hold on a sec...")Fully localizable; should remain concise.
Subtitle textSupporting message ("Uploading your file")Tone can match your brand voice; optional.
Spinner accent colorPrimary spinner strokeUses brand tokens; must remain visually clear.
Spinner background colorSecondary spinner strokeShould maintain contrast with accent.
Background ColorScreen backgroundMust preserve readability and contrast.

Fixed Elements

ElementWhy it is fixed
Processing flow timingLinked to backend processing; cannot be shortened or skipped.
Spinner animation styleStandardized across SDK for performance and recognizability.
Spacing & safe areasRequired for device consistency.
Minimum contrastRequired for accessibility and compliance.

Token Reference

UI ElementTokenValue
BackgroundSurface/Neutral/Light → Color/Neutral/light#FFFFFF
Spinner backgroundSpinner/surface/secondary → Surface/Primary/50 → Color/Brand/50#E5F0FF
Spinner accentSpinner/surface/primary → Surface/Primary/500 → Color/Brand/500#006AFF
Title textSpinner/text/title → Text/Body/primary → Color/Gray/800#262831
Subtitle textSpinner/text/subtitle → Text/Body/secondary → Color/Gray/500#60667C

Design Notes

  • Keep copy short to minimize cognitive load during the wait.
  • Use subtitle text to set user expectations about what is happening.
  • Avoid adding imagery or additional UI elements that may distract from the upload state.


Ready for Verification

Shown once both document sides have been successfully uploaded and validated with a green checkmark per side. The Continue button becomes active, allowing the user to proceed to the verification step.


Customizable Elements

AreaWhat can be customizedNotes
TextTitle, subtitle, tab labels, row labels, hint textFully localizable.
Success indicator iconGreen checkmark per rowCan replace with custom success icon; must remain clearly positive.
Button — ContinueLabel, color, radiusMust follow platform guidelines.
Background ColorScreen backgroundMust maintain contrast with content.
Brand ColorsHeader text, tab indicator, accent colorUses brand tokens.
Footer"Verified by Incode" lineOptional but recommended.


Fixed Elements

ElementWhy it is fixed
Success logic per rowMust reflect actual validation result per document side.
Status color mappingGreen = positive; required for consistent semantics.
Continue button active stateOnly activates when all sides are validated; cannot be bypassed.
Button placementStandardized across modules.
WCAG contrast requirementsMandatory for accessibility and regulatory compliance.

Token Reference

UI ElementTokenValue
BackgroundSurface/Neutral/0 → Color/Gray/0#FFFFFF
Title textText/Body/800 (Primary) → Color/Gray/800#262831
Tab label (active)Text/Body/800 (Primary) → Color/Gray/800#262831
Tab label (inactive)Text/Body/500 (Secondary) → Color/Gray/500#60667C
Row backgroundSurface/Neutral/50 → Color/Gray/50#FCFCFD
Row iconIcon/Neutral/500 → Color/Gray/500#60667C
Row label textText/Body/800 (Primary) → Color/Gray/800#262831
Close iconSurface/Neutral/0 → Color/Gray/0#FFFFFF
Success iconIcon/Status/Positive → Color/Positive/500#189F60
Hint area backgroundSurface/Brand/50 → Color/Brand/50#E5F0FF
Hint textText/Body/800 (Primary) → Color/Gray/800#262831
Continue button backgroundButton/Primary/Surface/Default → Surface/Brand/500 Static → Color/Brand/500#006AFF
Continue button textButton/Primary/Text/Default → Text/Body/0 Static → Color/Gray/0#FFFFFF
Footer textText/Body/500 (Secondary) → Color/Gray/500#60667C

Design Notes

  • The green checkmark per row gives users clear, per-side confirmation without requiring them to re-read the full screen.
  • Ensure the Continue button uses the brand 500 color to provide a clear and prominent next step.
  • Maintain visual consistency between the upload and validated states of each row.


Error Screen

Error screens appear inline within the upload flow when a document side is rejected or an incorrect file is submitted. The user is notified with a clear message directly below the affected upload row and prompted to upload the correct document. The Continue button remains disabled until the issue is resolved.


Customizable Elements

AreaWhat can be customizedNotes
Title textScreen titleFully localizable.
Tab labelsDocument type tab labelsFully localizable.
Error message textInline error message ("Please upload the correct document")Fully localizable; tone should be neutral and non-blaming.
Error iconInline error indicatorCan be replaced; must remain clearly negative.
Button — UploadLabel, color, radiusAction should guide the user to retry with the correct file.
Background colorScreen backgroundMust support strong contrast.
Brand ColorsHeader text, tab indicatorUses brand tokens.
Footer"Verified by Incode" lineOptional but recommended.

Fixed Elements

ElementWhy it is fixed
Error logicMust accurately reflect the document validation result.
Status color mappingRed = negative; required for clarity and consistency.
Continue button disabled stateCannot advance until the error is resolved.
Inline error placementPositioned directly below the affected row for clear attribution.
Button placementConsistent across modules.

Token Reference

UI ElementTokenValue
BackgroundSurface/Neutral/0 → Color/Gray/0#FFFFFF
Title textText/Body/800 (Primary) → Color/Gray/800#262831
Tab label (active)Text/Body/800 (Primary) → Color/Gray/800#262831
Tab label (inactive)Text/Body/500 (Secondary) → Color/Gray/500#60667C
Row backgroundSurface/Neutral/50 → Color/Gray/50#FCFCFD
Row iconIcon/Neutral/500 → Color/Gray/500#60667C
Row label textText/Body/800 (Primary) → Color/Gray/800#262831
Success icon (validated row)Icon/Status/Positive → Color/Positive/500#189F60
Error iconIcon/negative → Color/Negative/600#E71111
Inline error textInput/Text/Helper/Negative → Text/Status/Negative → Color/Negative/500#E71111
Hint area backgroundSurface/Brand/50 → Color/Brand/50#E5F0FF
Hint textText/Body/800 (Primary) → Color/Gray/800#262831
Continue button background (disabled)Button/Primary/Surface/Disabled → Surface/Neutral/100 → Color/Gray/100#EBECEF
Continue button text (disabled)Button/Primary/Text/Disabled → Text/Body/500 (Secondary) → Color/Gray/500#60667C
Footer textText/Body/500 (Secondary) → Color/Gray/500#60667C

Design Notes

  • Error messaging should be clear, direct, and action-oriented.
  • Inline placement of the error message directly below the affected row ensures users understand exactly which side needs to be corrected.
  • Maintain consistent spacing and visual hierarchy for readability.
  • Avoid technical language; users should understand the issue at a glance.