Validación Biométrica
Valida el rostro del usuario contra el template registrado — para login, pagos o firma de contratos.
Antes de integrar, instala el SDK en Getting Started → Instalar el SDK →
/api/kyc/verify Login seguro, autorización de transferencias, aprobación de pagos, firma de contratos — cualquier operación donde necesitas confirmar que la persona es realmente el usuario enrolado.
Flujo
Validación de entorno
Controles RASP previos a la captura.
Captura facial
Captura del rostro con prueba de vida.
Datos cifrados
El SDK devuelve template + payload cifrados al aplicativo bancario.
Solicitud de validación
Tu backend reenvía template + payload al endpoint /api/kyc/verify, que compara contra el template registrado.
Llamada del SDK
// Step-up auth — login, payment, contract signing, etc.
SmartId
.getInstance()
.captureBiometric(getApplicationContext())
.onSuccess { template, payload ->
// forward to your backend → POST /api/kyc/verify
}
.onFailure { message, errorCode ->
// capture failed
}
.start() SID.shared.startLocation()
SID.shared
.captureBiometric()
.onSuccess(success: { template, payload in
// forward to your backend → POST /api/kyc/verify
})
.onFailure(failure: { message, errorCode in
// capture failed
})
.start() Llamada al backend
curl -X POST https://<api-url>/api/kyc/verify \\
-H "Content-Type: application/json" \\
-H "X-Api-Key: <your-api-key>" \\
-d '{
"User": "[email protected]",
"Template": "<template from SDK>",
"PayLoad": "<payload from SDK>"
}' Cuerpo de la solicitud
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
User | string | Requerido | Identificador único del usuario (debe estar previamente enrolado) |
Template | string | Requerido | Template biométrico cifrado generado por el SDK |
PayLoad | string | Requerido | Metadata adicional generada por el SDK |
Códigos de respuesta
| Código | Significado |
|---|---|
200 | Validación exitosa |
406 | Usuario no encontrado (no enrolado previamente) |
407 | Validación del template falló |
409 | Comparación facial falló |
413 | Similitud por debajo del umbral |
414 | Canal del usuario deshabilitado |
425/426 | Timestamp inválido / template expirado |
500/701 | Error interno / al llamar al servicio |