Skip to main content

Interactive

Facia’s Interactive KYC solution is designed for real-time, user-facing identity verification. It guides individuals through a seamless, step-by-step flow that includes liveness detection, facial matching, and document verification and AML, all within a secure and intuitive interface. This approach ensures maximum engagement and accuracy by capturing data directly from the end-user during the session. Ideal for digital onboarding, financial services, and any environment requiring real-time user authentication, the interactive mode enhances trust, reduces fraud risk, and supports regulatory compliance with minimal friction.

  1. Quick Liveness detection
  2. Document OCR
  3. Face Match
  4. Document Verification
  5. Anti Money Laundering (AML)

These components work together within a unified framework to deliver accurate results while reducing manual review and user friction.

Generate KYC URL

To generate the KYC verification, send a request to the following endpoint with the mentioned sample payload. The KYC URL can be obtained from the API at:

Endpoint

POSThttps://api.facia.ai/generate-liveness-url

Authorization:

Token Type: Bearer
Description:

This API utilizes Access token or Client-Secret key in header for authentication.

You can use your client_id and client_secret key when using the "/request-access-token" endpoint to obtain a Bearer token for authorization while connecting to this API. For additional details on Authorization, click Here

Request Body Samples:

//POST /generate-liveness-url  HTTP/1.1
//Host: api.facia.ai
//Content-Type: application/json
//Authorization: Bearer <access-token-here>

{
"is_kyc_request": true,
"services": [
"quick_liveness",
"face_match",
"document_ocr",
"document_verification",
"aml",
],
"redirect_url": "https://www.example.com",
"callback_url": "https://www.example.exc.com",
"ttl": 60
}
ParametersDescription
is_kyc_requestRequired: Yes
Type: Boolean
Example: is_kyc_request=true
This flag must be set to true to indicate that the request is for initiating a KYC process.
servicesRequired: Yes
Type: Array of Strings
Allowed values: quick_liveness, document_ocr, document_verification, face_match, aml
At least one service must be selected.
redirect_urlRequired: No
Type: String
Example: redirect_url=https://www.example.com/?64db8940a619c1692109120
Indicates the URL to be used for post-transaction redirection.
callback_urlRequired: No
Type: String
Example: callback_url=https://www.example.exc.com/
Multiple server-to-server calls are initiated to communicate updates on verification status to Facia’s clients.
ttlRequired: No
Type: Integer
Example: ttl=60
Minimum: 1 minute
Maximum: 43200 minutes (30 days)
Default: 60 minutes
Specifies the time-to-live (TTL) in minutes, indicating the duration until the link expires.

Response Sample


{
"status": true,
"message": "Success",
"result": {
"data": {
"liveness_url": "https://app.facia.ai/?64db8940a619c1692109120",
"reference_id": "W4437KIWN0KDM13",
"callback_url": "https://www.example.exc.com",
"redirect_url": "https://www.example.com"
}
}
}


Response Parameter

ParametersDescription
statusType: Boolean
Example: true or false
Indicates whether the request was successful (true) or not (false).
messageType: String
Descriptive message corresponding to the request status.
errorsType: Object (present only if status is false)
contains errors explaining why the request failed.
result.data.liveness_urlThe link to perform KYC.
Example: liveness_url=https://app.facia.ai/?64db8940a619c1692109120
result.data.reference_idThe unique identified associated with the created transaction.
result.data.callback_urlThe link where the transaction response will be sent.
Example: callback_url=https://www.example.exc.com/
result.data.redirect_urlIndicate the URL to be used for post-transaction redirection.

iFrame Integration

Integrate the kyc iFrame into your platform to ensure users are physically present during interactions. Use the code snippet below to embed the iframe and pass the liveness_url which you got in response of generate-liveness-url endpoint within the src attribute of the iFrame.

<iframe 
src="liveness_url"
allow="camera"
style="width: 100%; height: 600px; border: none;"
></iframe>

For optimal user experience, we recommend:

  • Minimum width: 375px
  • Minimum height: 600px
  • Responsive layout that adjusts to the container size