Saltar al contenido principal

Revalidación silenciosa

Atributos de PrepareInfo
AtributoTipoRequeridoDescripción
externalUserIdStringIdentificador del usuario en tu sistema. Se aplica automáticamente un hash SHA-256 antes de la transmisión, nunca se envía en texto plano.
Iniciar una Revalidación silenciosa
Paso 1 — Implementar initializeSDK

Crea una nueva clase u objeto UnicoSDK, con un método estático initializeSDK que devuelve la instancia de UnicoSDK, recibiendo el context y un UnicoSDKConfig con tu sdkKey, bundleId y environment. Guarda la instancia devuelta — la necesitarás más adelante para llamar a startSilentValidation desde Java.

Llámalo al iniciar la app

UnicoSDK.initializeSDK debe llamarse lo antes posible al iniciar la app (por ejemplo, en Application.onCreate). Llamarlo más tarde reduce el tiempo de procesamiento en segundo plano y aumenta la probabilidad de respuestas de autenticación no concluyentes.

UnicoSDK.initializeSDK(
context,
UnicoSDKConfig(
sdkKey = "your_sdk_key",
bundleId = "your_bundle_id",
environment = Environment.UAT
)
)
Paso 2 — Implementar startSilentValidation

Después de initializeSDK, asocia la recolección que ya está en curso con el usuario identificado llamando a startSilentValidation con un PrepareInfo que contenga el externalUserId.

val prepareInfo = PrepareInfo(
externalUserId = "external_user_id"
)

UnicoSDK.startSilentValidation(prepareInfo)
.onSuccess { result -> /* ... */ }
.onFailure { error -> /* ... */ }

Si la validación ocurre al inicio del flujo, por ejemplo durante el inicio de sesión, espera el callback onSuccess antes de continuar con el Paso 3.

Paso 3 — Crear el proceso y autenticar

Con la validación en curso, crea el proceso de verificación para completar la autenticación. Consulta Referencia de API ▸ API ▸ Crear proceso.

Incluye el mismo externalUserId enviado en el PrepareInfo del Paso 2 en el cuerpo de la solicitud — esto es lo que permite al backend correlacionar la creación del proceso con la validación que ya está en curso.

curl -X POST https://api.id.unico.app/processes/v1 \
-H "Authorization: Bearer $TOKEN" \
-H "APIKEY: $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"subject": {
"duiType": 1,
"code": "12345678909",
"name": "Luke Skywalker",
"gender": "M",
"birthDate": "2000-05-20",
"email": "[email protected]",
"phone": "5519725570707"
},
"useCase": "Onboarding",
"externalUserId": "external_user_id",
"imageBase64": "/9j/4AAQSkZJR..."
}'

La respuesta incluye el campo silentAuth.result con el resultado de la autenticación:

{
"id": "80371b2a-3ac7-432e-866d-57fe37896ac6",
"status": 3,
"silentAuth": {
"result": "yes"
}
}
CampoTipoDescripción
silentAuth.resultstringyes o no — consulta los valores posibles a continuación.
silentAuth.result — valores posibles
ValorSignificado
yesAutenticación aprobada, usuario reconocido con suficiente confianza, no se necesita captura adicional.
noDatos insuficientes para aprobar de forma silenciosa. Se recomienda autenticar mediante biometría (selfie) u otro método alternativo.