> For the complete documentation index, see [llms.txt](https://docs.vida.id/identity-stack/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.vida.id/identity-stack/verify/kyc-mobile-sdk/integration-overview/android-sdk/customization/customization-through-api.md).

# Customization through API

This section will cover how developers can use VidaUICustomizationOption to control colors, themes, and language preferences in the KYC SDK’s built-in UI.

### UI Customization Using API

Use `VidaCardUICustomizationOption` to control colors, themes, screen visibility, and language preferences in the KYC SDK's built-in UI.

```java
// Create an instance of UI Customization using
//VidaCardUICustomizationOption
VidaCardUICustomizationOption vidaUICustomizationOption =
VidaUICustomizationOption.VidaUICustomizationOptionBuilder.newInstance()
// Set Locale of the application for the specific language
.setLocal(locale)
// Set maximum backend attempts
.setMaxAttempt(3)
.setShowIntroScreen(true) //  Enable or disable the Introduction screen
.setShowTutorialScreen(true) // Enable or disable the tutorial screen
.setShowSelectionScreen(true)// Enable or disable the selection screen
.setPassportScanningEnabled(false)// To disable passport based flows
.setCountryCode(countryCode)// Set the country code of the KYC flow
.setTutorialScreenFactory(new MyTutorialUiFactory())
// Sets a custom Tutorial UI implementation
.build();
```

#### Configurations Options

<table><thead><tr><th width="331.6875">Option</th><th>Description</th></tr></thead><tbody><tr><td><code>setLocal(locale)</code></td><td>Set the locale/language of the SDK UI.</td></tr><tr><td><code>setMaxAttempt(int)</code></td><td>Set maximum attempts for backend requests.</td></tr><tr><td><code>setShowIntroScreen(boolean)</code></td><td>Enable or disable Introduction screen.</td></tr><tr><td><code>setShowTutorialScreen(boolean)</code></td><td>Controls whether the Document OCR tutorial screen is displayed to users. This setting does not affect the Liveness tutorial screen, which is currently always shown. Support for disabling the Liveness tutorial independently will be available in a future release.</td></tr><tr><td><code>setShowSelectionScreen(boolean)</code></td><td>Enable or disable selection screen.</td></tr><tr><td><code>setShowReviewScreen(boolean)</code></td><td>Enable or disable review confirmation screen.</td></tr><tr><td><code>setPassportScanningEnabled(boolean)</code></td><td>Enable or disable passport scanning.</td></tr><tr><td><code>setCountryCode(String)</code></td><td>Set the country code of the KYC flow.</td></tr></tbody></table>

#### Liveness Customization using API

{% code expandable="true" %}

```java
// Configure Liveness Customization Options
VidaLivenessCustomisationOptions vidaUICustomizationOption = 
VidaLivenessCustomisationOptions.VidaLivenessCustomisationOptionsBuilder.newInstance()
.setShowLivenessTutorialScreen(true) 
.build();
```

{% endcode %}

The `setLivenessCustomisationOptions` method allows developers to configure options specific to the liveness verification flow, such as enabling or disabling the liveness tutorial screen.

***

### Setting the Card Type

Use `setCardType(CardType)` on the `VidaKycRequest` object to explicitly set which document type the SDK should capture. This is especially useful when you hide the built-in document selection screen and want to control the document type programmatically.

#### How to Set the Card Type

Call `setCardType()` on your `VidaKycRequest` instance before starting the SDK:

{% code expandable="true" %}

```java
VidaKycRequest request = new VidaKycRequest();
VidaSdkRegion region = getSelectedSdkRegion();

request.setVidaFlow(VidaFlow.KYC);
request.setApiKey(KeyConstant.api_key);
request.setLicenseKey(KeyConstant.license_key);
request.setToken(token);
request.setVidaSdkRegion(region);
// Set the document type to capture
request.setCardType(CardType.MY_TENTERA); // Example when using My Tentera.
request.setUserID(UserIDManager.getUserID(getApplicationContext()));
request.setVidaIdFraudShieldClientId(KeyConstant.id_fraud_shield_client_id);
```

{% endcode %}

#### Supported values

`CardType` supports the following values:

<table><thead><tr><th width="425.9609375">Type Card</th><th>Description</th></tr></thead><tbody><tr><td><code>KTP</code></td><td>Indonesian national ID card</td></tr><tr><td>Malaysian Cards (<code>MyKAD</code>, <code>MyKAS</code>, <code>MyPR</code>, <code>My_TENTERA</code>)</td><td>Malaysian identity card</td></tr><tr><td><code>PASSPORT</code></td><td>Passport</td></tr><tr><td><code>DL</code></td><td>Driver's license</td></tr></tbody></table>

#### Default Behaviour

If `setCardType()` is not called, the SDK uses the default document type for the flow:

<table><thead><tr><th width="311.88671875">Flow</th><th>Default card type</th></tr></thead><tbody><tr><td>Indonesia</td><td><code>KTP</code></td></tr><tr><td>Malaysia</td><td><code>MY_KAD</code></td></tr></tbody></table>

***

#### Usage with Hidden Selection Screen

When you hide the built-in selection screen using `setShowSelectionScreen(false)`, you should explicitly call `setCardType()` to specify which document the SDK should capture. If you hide the selection screen without calling `setCardType()`, the SDK falls back to the default document type for the region.

{% code expandable="true" %}

```java
// Step 1: Hide the built-in selection screen
VidaCardUICustomizationOption uiOption =
    VidaUICustomizationOption.VidaUICustomizationOptionBuilder
        .newInstance()
        .setLocal(Locale.ENGLISH)
        .setShowIntroScreen(true)
        .setShowTutorialScreen(true)
        .setShowSelectionScreen(false) // Hide selection screen
        .setPassportScanningEnabled(true)
        .setCountryCode(countryCode)
        .build();

// Step 2: Set the card type on the request
VidaKycRequest request = new VidaKycRequest();
request.setCardType(CardType.MY_TENTERA); // Explicitly set document type
// ... other request configuration
```

{% endcode %}

{% hint style="info" %}
`setCardType()` is available in **KYC Android SDK v1.1.6 and later**. If you are on an older version, please upgrade before using this method.
{% endhint %}

#### Building your own selection screen

To replace the built-in document selection screen with your own:

1. Disable the built-in screen in the UI customization builder.
2. Show your own document type picker in your app.
3. Pass the user's choice to `VidaKycRequest.setCardType()` before starting the SDK.

```java
return VidaUICustomizationOption.VidaUICustomizationOptionBuilder
        .newInstance()
        .setLocal(Locale.ENGLISH)
        .setShowIntroScreen(true)
        .setShowTutorialScreen(true)
        // Hide the built-in document selection screen
        .setShowSelectionScreen(false)
        .setPassportScanningEnabled(true)
        .setCountryCode(countryCode)
        .build();
```

***

### Card Detection Options

Use `VidaCardDetectionOption` to configure how the SDK detects and captures the document in the camera view.

```java
VidaCardDetectionOption detectionOption =
    VidaCardDetectionOption.VidaCardDetectionOptionBuilder
        .newInstance()
        .setDetectionTimeout(30000)
        .setMinimumFrame(5)
        .setManualCaptureModeAllowed(true)
        .build();
```

<table><thead><tr><th width="309.08203125">Options</th><th>Description</th></tr></thead><tbody><tr><td><code>detectionTimeOut</code></td><td>Camera detection timeout (in milliseconds).</td></tr><tr><td><code>minimumStableFrames</code></td><td>Minimum number of stable frames before capture.</td></tr><tr><td><code>manualCaptureModeAllowed</code></td><td>Enable or disable manual capture mode.</td></tr></tbody></table>

***

### Custom Tutorial Screens

`TutorialScreenFactory` allows the Host App to replace the default tutorial screen UI with its own custom implementation. This interface is for providing custom views only — it does not control whether individual tutorial screens (Document OCR or Liveness) are shown or hidden.

This interface is intended **only for customizing the tutorial screen UI**. The Host App can replace the default tutorial screen with its own design and implementation.

{% hint style="info" %}
**Note**: `TutorialScreenFactory` is not used to enable or disable individual tutorial screens. To control the Document OCR tutorial visibility, use `setShowTutorialScreen(boolean)`. Disabling the Liveness tutorial screen independently is not supported in the current Android SDK release but will be available in a future version. This capability is already supported on the iOS SDK.
{% endhint %}

```java
public interface TutorialScreenFactory {
boolean supportsDocumentOcr();
boolean supportsLiveness();
DocumentOcrTutorialUi createDocumentOcr(LayoutInflater inflater,
ViewGroup container);

LivenessTutorialUi createLiveness(LayoutInflater inflater,
ViewGroup container);
}
```

```java
public interface DocumentOcrTutorialUi {
   View getRoot();
   View getBackButton();
   View getNextButton();
}
```

```java
public interface LivenessTutorialUi {
    View getRoot();
    View getBackButton();
    View getNextButton();
}
```

| Method          | Description                      |
| --------------- | -------------------------------- |
| getRoot()       | Root view of the tutorial screen |
| getBackButton() | View used to navigate back       |
| getNextButton() | View used to proceed to capture  |

#### Localization

The SDK includes built-in support for the following languages:

* **English** (`en`) - Default
* **Indonesian** (`id`)

To use a supported language, pass the locale when building the UI customization options:

```java
.setLocal(new Locale("id")) // Indonesian
```

To add support for additional languages not included in the SDK, provide translated string resources in your app's `res/values-<language>/strings.xml` for the SDK's string keys.

***

### Customization Using Attributes

You can also customize the SDK's appearance by overriding XML attributes in your app's theme. These attributes control colors, text, font sizes, images, and branding across all SDK screens.

#### Common Styles

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<!-- Background & CTA colors -->
<attr name="vida_kyc_bg_primary_color" format="color"/>
<attr name="vida_kyc_bg_secondary_color" format="color"/>
<attr name="vida_kyc_primary_cta_enabled_color" format="color"/>
<attr name="vida_kyc_primary_cta_enabled_border_color" format="color"/>
<attr name="vida_kyc_primary_cta_disabled_color" format="color"/>
<attr name="vida_kyc_primary_cta_disabled_border_color" format="color"/>
<attr name="vida_kyc_back_cta_color" format="color"/>
<attr name="vida_kyc_primary_cta_enabled_text_color" format="color"/>
<attr name="vida_kyc_primary_cta_disabled_text_color" format="color"/>
<attr name="vida_kyc_secondary_cta_enabled_color" format="color"/>
<attr name="vida_kyc_secondary_cta_enabled_border_color" format="color"/>
<attr name="vida_kyc_secondary_cta_enabled_text_color" format="color"/>

<!-- Font family -->
<attr name="vida_kyc_text_font_family" format="string"/>

<!-- Spinner -->
<attr name="vida_kyc_spinner_start_color" format="color"/>
<attr name="vida_kyc_spinner_center_color" format="color"/>
<attr name="vida_kyc_spinner_end_color" format="color"/>
<attr name="vida_kyc_light_status_bar" format="boolean"/>
```

{% endcode %}

</details>

#### Introduction Screen

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<!-- Colors -->
<attr name="vida_kyc_doc_intro_eula_text_color" format="color"/>
<attr name="vida_kyc_doc_intro_title_text_color" format="color"/>
<attr name="vida_kyc_doc_intro_description_text_color" format="color"/>
<attr name="vida_kyc_doc_intro_doc_capture_title_text_color" format="color"/>
<attr name="vida_kyc_doc_intro_doc_capture_description_text_color" format="color"/>
<attr name="vida_kyc_doc_intro_selfie_capture_title_text_color" format="color"/>
<attr name="vida_kyc_doc_intro_selfie_capture_description_text_color" format="color"/>
<attr name="vida_kyc_doc_intro_checkbox_enabled_color" format="color"/>
<attr name="vida_kyc_doc_intro_checkbox_disabled_color" format="color"/>
<attr name="vida_kyc_doc_intro_hyperlink_color" format="color"/>

<!-- Text -->
<attr name="vida_kyc_doc_intro_title_text" format="string"/>
<attr name="vida_kyc_doc_intro_description_text" format="string"/>
<attr name="vida_kyc_doc_intro_sub_description_text" format="string"/>
<attr name="vida_kyc_doc_intro_doc_capture_title_text" format="string"/>
<attr name="vida_kyc_doc_intro_doc_capture_description_text" format="string"/>
<attr name="vida_kyc_doc_intro_selfie_capture_title_text" format="string"/>
<attr name="vida_kyc_doc_intro_selfie_capture_description_text" format="string"/>

<!-- Font sizes -->
<attr name="vida_kyc_doc_intro_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_doc_intro_description_text_font_size" format="dimension"/>
<attr name="vida_kyc_doc_intro_doc_capture_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_doc_intro_doc_capture_description_text_font_size" format="dimension"/>
<attr name="vida_kyc_doc_intro_selfie_capture_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_doc_intro_selfie_capture_description_text_font_size" format="dimension"/>

<!-- Branding logos -->
<attr name="vida_kyc_doc_intro_branding_logo_kominfo_visibility" format="boolean"/>
<attr name="vida_kyc_doc_intro_branding_logo_iso_visibility" format="boolean"/>
```

{% endcode %}

</details>

#### Document Selection Screen

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<!-- Colors -->
<attr name="vida_kyc_doc_selection_radio_button_enabled_color" format="color"/>
<attr name="vida_kyc_doc_selection_radio_button_disabled_color" format="color"/>
<attr name="vida_kyc_doc_selection_radio_button_not_selected_color" format="color"/>
<attr name="vida_kyc_doc_selection_title_text_color" format="color"/>
<attr name="vida_kyc_doc_selection_description_text_color" format="color"/>
<attr name="vida_kyc_doc_selection_radio_button_title_text_color" format="color"/>
<attr name="vida_kyc_doc_selection_radio_button_option_text_color" format="color"/>

<!-- Text -->
<attr name="vida_kyc_doc_selection_title_text" format="string"/>
<attr name="vida_kyc_doc_selection_description_text" format="string"/>
<attr name="vida_kyc_doc_selection_radio_button_one_title_text" format="string"/>
<attr name="vida_kyc_doc_selection_radio_button_one_option_text" format="string"/>
<attr name="vida_kyc_doc_selection_radio_button_two_title_text" format="string"/>
<attr name="vida_kyc_doc_selection_radio_button_two_option_text" format="string"/>

<!-- Font sizes -->
<attr name="vida_kyc_doc_selection_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_doc_selection_description_text_font_size" format="dimension"/>
<attr name="vida_kyc_doc_selection_radio_button_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_doc_selection_radio_button_option_text_font_size" format="dimension"/>
```

{% endcode %}

</details>

#### Document Capture Screen

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<!-- Colors -->
<attr name="vida_kyc_doc_capture_back_cta_color" format="color"/>
<attr name="vida_kyc_doc_capture_title_text_color" format="color"/>
<attr name="vida_kyc_doc_capture_description_text_color" format="color"/>
<attr name="vida_kyc_doc_capture_guide_text_color" format="color"/>

<!-- Text -->
<attr name="vida_kyc_doc_capture_title_text" format="string"/>
<attr name="vida_kyc_doc_capture_description_text" format="string"/>

<!-- Font sizes -->
<attr name="vida_kyc_doc_capture_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_doc_capture_description_text_font_size" format="dimension"/>

<!-- Image -->
<attr name="vida_kyc_doc_capture_instruction_image" format="reference"/>
```

{% endcode %}

</details>

#### Camera Screen

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<!-- Colors -->
<attr name="vida_kyc_camera_screen_title_text_color" format="color"/>
<attr name="vida_kyc_camera_screen_instruction_text_color" format="color"/>
<attr name="vida_kyc_camera_screen_overlay_color" format="color"/>
<attr name="vida_kyc_camera_screen_stroke_text_color" format="color"/>
<attr name="vida_kyc_camera_screen_progress_bar_color" format="color"/>
<attr name="vida_kyc_camera_screen_help_text_color" format="color"/>
<attr name="vida_kyc_camera_screen_help_icon_color" format="color"/>

<!-- Text -->
<attr name="vida_kyc_camera_screen_title_text" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_text" format="string"/>
<attr name="vida_kyc_camera_screen_help_text" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_text_no_card_text" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_instructions_text_passport_text" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_instruction_text_hold_still_capturing_your_card_text" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_text_card_is_too_far_bring_it_closer_text" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_text_card_is_too_close_move_it_back_text" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_text_card_is_not_detected_text" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_text_card_is_too_dark" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_text_card_is_not_in_box_text" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_text_card_is_not_of_selected_type_text" format="string"/>
<attr name="vida_kyc_camera_screen_instruction_text_multiple_card_detected_text" format="string"/>

<!-- Font sizes -->
<attr name="vida_kyc_camera_screen_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_camera_screen_instruction_text_font_size" format="dimension"/>
<attr name="vida_kyc_camera_screen_help_text_font_size" format="dimension"/>
```

{% endcode %}

</details>

#### Permission Dialog

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<!-- Colors -->
<attr name="vida_kyc_permission_dialog_title_text_color" format="color"/>
<attr name="vida_kyc_permission_dialog_description_text_color" format="color"/>

<!-- Text -->
<attr name="vida_kyc_permission_dialog_title_text" format="string"/>
<attr name="vida_kyc_permission_dialog_description_text" format="string"/>
<attr name="vida_kyc_permission_dialog_primary_cta_enabled_text" format="string"/>
<attr name="vida_kyc_permission_dialog_secondary_cta_enabled_text" format="string"/>

<!-- Font sizes -->
<attr name="vida_kyc_permission_dialog_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_permission_dialog_description_text_font_size" format="dimension"/>
<attr name="vida_kyc_permission_dialog_primary_cta_enabled_text_font_size" format="dimension"/>
<attr name="vida_kyc_permission_dialog_secondary_cta_enabled_text_font_size" format="dimension"/>

<!-- Image -->
<attr name="vida_kyc_permission_dialog_image" format="reference"/>
```

{% endcode %}

</details>

#### Leaving Soon Dialog

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<!-- Colors -->
<attr name="vida_kyc_leaving_soon_dialog_title_text_color" format="color"/>
<attr name="vida_kyc_leaving_soon_dialog_description_text_color" format="color"/>

<!-- Text -->
<attr name="vida_kyc_leaving_soon_dialog_title_text" format="string"/>
<attr name="vida_kyc_leaving_soon_dialog_description_text" format="string"/>
<attr name="vida_kyc_leaving_soon_dialog_primary_cta_enabled_text" format="string"/>
<attr name="vida_kyc_leaving_soon_dialog_secondary_cta_enabled_text" format="string"/>

<!-- Font sizes -->
<attr name="vida_kyc_leaving_soon_dialog_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_leaving_soon_dialog_description_text_font_size" format="dimension"/>
<attr name="vida_kyc_leaving_soon_dialog_primary_cta_enabled_text_font_size" format="dimension"/>
<attr name="vida_kyc_leaving_soon_dialog_secondary_cta_enabled_text_font_size" format="dimension"/>

<!-- Image -->
<attr name="vida_kyc_leaving_soon_dialog_image" format="reference"/>
```

{% endcode %}

</details>

#### Manual Capture Dialog

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<!-- Colors -->
<attr name="vida_kyc_manual_capture_dialog_title_text_color" format="color"/>
<attr name="vida_kyc_manual_capture_dialog_description_text_color" format="color"/>

<!-- Text -->
<attr name="vida_kyc_manual_capture_dialog_title_text" format="string"/>
<attr name="vida_kyc_manual_capture_dialog_description_text" format="string"/>
<attr name="vida_kyc_manual_capture_dialog_primary_cta_enabled_text" format="string"/>
<attr name="vida_kyc_manual_capture_dialog_secondary_cta_enabled_text" format="string"/>

<!-- Font sizes -->
<attr name="vida_kyc_manual_capture_dialog_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_manual_capture_dialog_description_text_font_size" format="dimension"/>
<attr name="vida_kyc_manual_capture_dialog_primary_cta_enabled_text_font_size" format="dimension"/>
<attr name="vida_kyc_manual_capture_dialog_secondary_cta_enabled_text_font_size" format="dimension"/>

<!-- Image -->
<attr name="vida_kyc_manual_capture_dialog_image" format="reference"/>
```

{% endcode %}

</details>

#### General Error Screen

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<!-- Colors -->
<attr name="vida_kyc_general_error_title_text_color" format="color"/>
<attr name="vida_kyc_general_error_description_title_text_color" format="color"/>
<attr name="vida_kyc_general_error_description_detail_text_color" format="color"/>
<attr name="vida_kyc_general_error_info_text_color" format="color"/>
<attr name="vida_kyc_general_error_email_text_color" format="color"/>
<attr name="vida_kyc_general_error_support_text_color" format="color"/>
<attr name="vida_kyc_general_error_retry_attempt_text_color" format="color"/>
<attr name="vida_kyc_general_error_primary_cta_enabled_text_color" format="color"/>
<attr name="vida_kyc_general_error_secondary_cta_enabled_text_color" format="color"/>

<!-- Text -->
<attr name="vida_kyc_general_error_title_text" format="string"/>
<attr name="vida_kyc_general_error_description_title_text_network_error" format="string"/>
<attr name="vida_kyc_general_error_description_title_text_401_and_403" format="string"/>
<attr name="vida_kyc_general_error_description_title_text_404_and_500" format="string"/>
<attr name="vida_kyc_general_error_description_title_text_default" format="string"/>
<attr name="vida_kyc_general_error_description_detail_text_network_error" format="string"/>
<attr name="vida_kyc_general_error_description_detail_text_401_and_403" format="string"/>
<attr name="vida_kyc_general_error_description_detail_text_404_and_500" format="string"/>
<attr name="vida_kyc_general_error_description_detail_text_default" format="string"/>
<attr name="vida_kyc_general_error_info_text" format="string"/>
<attr name="vida_kyc_general_error_email_text" format="string"/>
<attr name="vida_kyc_general_error_support_text" format="string"/>
<attr name="vida_kyc_general_error_retry_attempt_text" format="string"/>
<attr name="vida_kyc_general_error_retry_attempt_text_no_attempt_left" format="string"/>
<attr name="vida_kyc_general_error_primary_cta_enabled_text" format="string"/>
<attr name="vida_kyc_general_error_secondary_cta_enabled_text" format="string"/>

<!-- Font sizes -->
<attr name="vida_kyc_general_error_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_general_error_description_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_general_error_description_detail_text_font_size" format="dimension"/>
<attr name="vida_kyc_general_error_info_text_font_size" format="dimension"/>
<attr name="vida_kyc_general_error_email_text_font_size" format="dimension"/>
<attr name="vida_kyc_general_error_support_text_font_size" format="dimension"/>
<attr name="vida_kyc_general_error_retry_attempt_text_font_size" format="dimension"/>
<attr name="vida_kyc_general_error_primary_cta_enabled_text_font_size" format="dimension"/>
<attr name="vida_kyc_general_error_secondary_cta_enabled_text_font_size" format="dimension"/>
```

{% endcode %}

</details>

#### IQA Error Screen

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<!-- Colors -->
<attr name="vida_kyc_iqa_error_title_text_color" format="color"/>
<attr name="vida_kyc_iqa_error_description_title_text_color" format="color"/>
<attr name="vida_kyc_iqa_error_description_doc_type_text_color" format="color"/>
<attr name="vida_kyc_iqa_error_description_error_type_text_color" format="color"/>
<attr name="vida_kyc_iqa_error_instruction_text_color" format="color"/>

<!-- Text -->
<attr name="vida_kyc_iqa_error_title_text" format="string"/>
<attr name="vida_kyc_iqa_error_description_title_text" format="string"/>
<attr name="vida_kyc_iqa_error_description_doc_type_text" format="string"/>
<attr name="vida_kyc_iqa_error_description_biometric_type_text" format="string"/>
<attr name="vida_kyc_iqa_error_description_error_type_text_blurry" format="string"/>
<attr name="vida_kyc_iqa_error_description_error_type_text_dark" format="string"/>
<attr name="vida_kyc_iqa_error_description_error_type_text_glare" format="string"/>
<attr name="vida_kyc_iqa_error_description_error_type_text_cropped" format="string"/>
<attr name="vida_kyc_iqa_error_description_error_type_text_quality" format="string"/>
<attr name="vida_kyc_iqa_error_description_error_type_text_generic" format="string"/>
<attr name="vida_kyc_iqa_error_description_error_type_text_face_covered" format="string"/>
<attr name="vida_kyc_iqa_error_instruction_text" format="string"/>
<attr name="vida_kyc_iqa_error_primary_cta_enabled_text" format="string"/>
<attr name="vida_kyc_iqa_error_secondary_cta_enabled_text" format="string"/>

<!-- Font sizes -->
<attr name="vida_kyc_iqa_error_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_iqa_error_description_title_text_font_size" format="dimension"/>
<attr name="vida_kyc_iqa_error_description_doc_type_text_font_size" format="dimension"/>
<attr name="vida_kyc_iqa_error_instruction_text_font_size" format="dimension"/>
<attr name="vida_kyc_iqa_error_primary_cta_enabled_text_font_size" format="dimension"/>
<attr name="vida_kyc_iqa_error_secondary_cta_enabled_text_font_size" format="dimension"/>

<!-- Images -->
<attr name="vida_kyc_iqa_document_image" format="reference"/>
<attr name="vida_kyc_iqa_biometric_image" format="reference"/>
```

{% endcode %}

</details>

#### Tutorial & Card Images

<details>

<summary>XML Attributes</summary>

{% code expandable="true" %}

```xml
<attr name="vida_kyc_correct_card_bg_color" format="color"/>
<attr name="vida_kyc_incorrect_card_bg_color" format="color"/>
<attr name="vida_kyc_phone_steady_image" format="reference"/>
<attr name="vida_kyc_clear_phone_lens_image" format="reference"/>
<attr name="vida_kyc_correct_card_image" format="reference"/>
<attr name="vida_kyc_cropped_card_image" format="reference"/>
<attr name="vida_kyc_hidden_card_image" format="reference"/>
<attr name="vida_kyc_over_exposed_card_image" format="reference"/>
<attr name="vida_kyc_blue_card_image" format="reference"/>
```

{% endcode %}

</details>
