KTP Scan

Flow Version - v1.2

Setup Sdk

Launch Flow

fun launchKTPScan(
    activity: Activity,
    config: DigitalIdentityKTPScanConfig,
    helpCenter: DigitalIdentityHelpCenter
)

Properties:

  • activity: Host activity.

  • config: Data required by the Digital Identity SDK. DigitalIdentityKTPScanConfig contains the following properties:

    • baseUrl: OneKYC BE URL received from the OneKYC team.
    • token: OneKYC token received from the OneKYC authentication API.
    • correlationId: Unique identifier for the KTP Scan flow.
    • theme: [Optional] It is an instance of the DigitalIdentityKTPScanFlowTheme class. If we need to customize the themes for the KTP Scan flow screens, then we need to pass the customized theme values. Refer to the theme customization section for more details.
  • helpCenter: [Optional] Interface for help center option-related actions. Refer to the Help Center section for more details.

data class DigitalIdentityKTPScanConfig(
    val baseUrl: String,
    val token: String,
    val correlationId: String,
    val theme: DigitalIdentityKTPScanFlowTheme
)

Observe Callback

fun observeSelfieLiveness(
    owner: LifecycleOwner, 
    resultCallback: (DocumentVerificationResult) -> Unit
)

Properties:

  • owner: Lifecycle owner for callback observers.

  • resultCallback: KTP Scan flow completion status callback. On completion, we will get an instance of the DocumentVerificationResult class. It has the following properties:

    • correlationId: Correlation Id value which passed in the launchKTPScan method call.

    • status: KTP Scan flow completion status. It is DocumentVerificationResultStatus enumeration type and has the following values:

      • COMPLETED: KTP Scan is done.
      • NOT_COMPLETED: User dropped from KTP Scan flow screens.
      • ERROR: Error in KTP Scan verification.
    • submissionId: [Optional] Reference number for KTP Scan documents. We will get this value when the status is COMPLETED.

    • extra: [Optional] Type of DigitalIdentityExtraData class. It has the following properties:

      • errorCode: It's a DigitalIdentityFlowErrorCode enum type.
        • CAMERA - User dropped the flow from the camera error bottom sheet
        • PERMISSION - User denied camera permission
        • NETWORK - User dropped the flow from the network error bottom sheet
        • API - User dropped the flow from the api error bottom sheet
        • USER_CANCELLED - User dismissed the flow
        • VERIFICATION - Document verification has been completed with errors
      • detailedErrorCode: Subcategory of main errorCode.
      • errorMessage: More details about the error.
DocumentVerificationResult(
    correlationId: String,
    status: DocumentVerificationResultStatus,
    submissionId: String,
    extra: DigitalIdentityExtraData?
)

DigitalIdentityExtraData(
    errorCode: DigitalIdentityFlowErrorCode,
    detailedErrorCode: String,
    errorMessage: String
)

enum class DocumentVerificationResultStatus {
    COMPLETED, NOT_COMPLETED, ERROR
}

Theming Reference

The following screens can be customized using the SDK’s theming system. See Theming Overview for more details.

KTP Onboarding

Class name: DigitalIdentityOnboardingScreenTheme

Screen Annotations

Mapped Properties

  1. statusbar
  2. background
  3. closeButton
  4. ktpCard
    4.1. cardBackground
    4.2. subTitle
    4.3. title
    4.4. image
    4.5. firstGuideline & secondGuideline
    4.5.1. background
    4.5.2. icon
    4.5.3. text
  5. footerBackground
  6. termsTextWidget
  7. continueButton

KTP Camera

Class name: DigitalIdentityKTPCameraScreenTheme

Screen Annotations

Mapped Properties

  1. closeIcon
  2. guidelineText
  3. title
  4. captureStartText
  5. cameraScanFeedbacks
  6. captureManualButton
  7. captureManualCard
    7.1. closeButton
    7.2. background
    7.3. image
    7.4. title
    7.5. description
    7.6. primaryCTA
    7.7. secondaryCTA

KTP Capture Guideline

Class name: DigitalIdentityGuidelineDialogTheme

Screen Annotations

Mapped Properties

  1. closeButton

  2. background

  3. title

  4. autoCaptureInfoView

    4.1. infoBackground

    4.2. infoTitle

    4.3. infoDescription

  5. allowedIllustration

  6. allowedCardTitle

  7. notAllowedIllustration

  8. notAllowedCardTitle

  9. captureInstructions


KTP Manual Capture Guideline

Class name: DigitalIdentityGuidelineDialogTheme

Screen Annotations

Mapped Properties

  1. closeButton
  2. background
  3. title
  4. allowedIllustration
  5. notAllowedIllustration
  6. allowedCardTitle
  7. notAllowedCardTitle
  8. captureInstructions

KTP Verification

Class name: DigitalIdentityVerificationScreenTheme

Screen Annotations

Mapped Properties

  1. statusBar
  2. closeIcon
  3. background
  4. verificationTitle
  5. timerBackground
  6. timerText
  7. timeOutTitle
  8. timerLoaderIcon

Common Dialogs


Documentations