> 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.md).

# Integration Overview

This page explains how VIDA KYC Mobile SDK fits into your system and what needs to happen for it to works on both Android and iOS.

{% content-ref url="/pages/mofohQ1vrDoJwaFbwuGL" %}
[Android SDK](/identity-stack/verify/kyc-mobile-sdk/integration-overview/android-sdk.md)
{% endcontent-ref %}

{% content-ref url="/pages/m5bJWF7q27XYZxNf9Vvx" %}
[iOS SDK](/identity-stack/verify/kyc-mobile-sdk/integration-overview/ios-sdk.md)
{% endcontent-ref %}

### Configuring VidaKycRequest

The `VidaKycRequest` object is used to configure and initialize the KYC SDK. Below are all the parameters available when building the request.

<details>

<summary>JAVA Response</summary>

{% code expandable="true" %}

```javascript
VidaKycRequest request = new VidaKycRequest();

request.setVidaFlow(VidaFlow.ID_VERIFICATION);
request.setApiKey(KeyConstant.api_key);
request.setLicenseKey(KeyConstant.license_key);
request.setVidaSdkRegion(region);
request.setUserID("USER-ID");                                    // Mandatory if ID Fraud Shield is enabled
request.setVidaIdFraudShieldClientId("shield-client-id");       // Required if ID Fraud Shield is enabled
request.setToken(token);
vidaKycRequest.setPartnerTransactionID("PARTNER_TRANSACTION_ID");
```

{% endcode %}

</details>

#### Parameters

<table><thead><tr><th width="144.4765625">Parameter</th><th width="179.41015625">Method</th><th width="125.31640625">Required</th><th>Description</th></tr></thead><tbody><tr><td>Vida Flow</td><td><code>setVidaFlow()</code></td><td>Yes</td><td>Specifies the KYC workflow. Use <code>VidaFlow.ID_VERIFICATION</code> for identity verification.</td></tr><tr><td>API Key</td><td><code>setApiKey()</code></td><td>Yes</td><td>Your API key used for authenticating SDK requests.</td></tr><tr><td>License Key</td><td><code>setLicenseKey()</code></td><td>Yes</td><td>Your license key to authorize the SDK.</td></tr><tr><td>SDK Region</td><td><code>setVidaSdkRegion()</code></td><td>Yes</td><td>The region for the SDK. Pass the appropriate region value based on your deployment.</td></tr><tr><td>User ID</td><td><code>setUserID()</code></td><td>No</td><td>A unique identifier representing the user. </td></tr><tr><td>ID Fraud Shield Client ID</td><td><code>setVidaIdFraudShieldClientId()</code></td><td>Yes, if ID Fraud Shield is enabled.</td><td>The client ID for ID Fraud Shield. Required when ID Fraud Shield is part of the KYC workflow.</td></tr><tr><td>Token</td><td><code>setToken()</code></td><td>Yes</td><td>The bearer token used for authenticating the session.</td></tr><tr><td>Partner Transaction ID</td><td><code>setPartnerTransactionID()</code></td><td>No</td><td>Your own reference for this KYC flow. If you do not set it, the SDK creates a UUID for you. The SDK adds the operation name and attempt number to your value, so the <code>partnerTrxId</code> in the SDK response will not be the same as the value you sent. See the <a href="/pages/HENEPEHafIwKfP6VhP0g">SDK Response</a> page.</td></tr></tbody></table>
