Descripción general
Elegir un contrato
La elección del contrato es una consecuencia de dónde ocurre la captura biométrica — no una decisión independiente. Usa la tabla a continuación como guía.
| Contrato | Usa cuando… | Captura | Flujo |
|---|---|---|---|
| Web & SDK | El recorrido de captura está alojado por Unico (Web iFrame, Redirect o SDK nativo) | Unico controla | El proceso se crea antes de la captura → el usuario sigue el recorrido → el resultado regresa mediante callback o polling |
| API | Tu aplicación controla la captura (con o sin el SDK de Unico) y envía la imagen directamente en la llamada | El cliente controla | La imagen se envía junto con la creación del proceso → el resultado regresa de forma sincrónica |
Hosts y entornos
| Contrato | Host de sandbox | Host de producción |
|---|---|---|
| Web & SDK | https://api.idcloud.uat.unico.app | https://api.idcloud.unico.app |
| API | https://api.id.uat.unico.app | https://api.id.unico.app |
| OAuth2 / Token | https://identityhomolog.acesso.io | https://identity.acesso.io |
Detalles completos en Entornos.
Autenticación
Todos los contratos de Unico usan token Bearer (JWT) obtenido mediante OAuth2 con urn:ietf:params:oauth:grant-type:jwt-bearer.
Detalles completos en Autenticación.
Diferencias de payload entre contratos
La misma operación conceptual ("crear un proceso de verificación de identidad") luce diferente en cada contrato. Usa las tablas a continuación como referencia rápida al migrar entre integraciones.
Process creation
| Aspecto | Web & SDK | API |
|---|---|---|
| Endpoint | POST /client/v1/process | POST /processes/v1 |
| Auth | Authorization: Bearer <jwt> | Authorization: Bearer <jwt> + APIKEY |
| Imagen | No se envía (capturada por el recorrido de Unico) | Enviada como imageBase64 |
| Identificación del usuario | person.duiType + person.duiValue | subject.code (CPF / CURP) |
| Tipos de documento | CPF, CURP, SSN, NIN, DNI, NIK | Solo CPF, CURP |
| Definición del pipeline | flow (enum, más de 30 valores) | Implícito en APIKEY (capacidades) |
| Callback | callbackUri (redirección del usuario) | Ninguno (sincrónico) |
| Webhook | Webhook v1 (resultado final) | Webhook v1 (opcional) |
| Devuelve URL de recorrido | Sí (userRedirectUrl) | No |
| Resultado | Asíncrono (polling GET o webhook) | Sincrónico (en la respuesta) |
| Token SDK | Sí (token, webAppToken) | No |
Result retrieval
| Aspecto | Web & SDK | API |
|---|---|---|
| Endpoint | GET /client/v1/process/\{id\} | GET /processes/v1/\{id\} (también en la respuesta de creación) |
| Estado | state + result (enums con prefijo) | status (1, 3, 5) |
| Estructura del resultado | Anidado bajo process.authenticationInfo.{capability}Result | Plano: unicoId, liveness, government, identityFraudsters |
| Documento | services[].documents[] (RG/CNH con OCR) | Endpoint separado (GET /processes/v1/\{id\}/document) |
Próximos pasos
- Autenticación — flujo OAuth2 y generación de JWT
- Entornos — sandbox vs producción
- Colección de Postman — colecciones listas para usar
- Webhooks y Eventos — entrega asíncrona de resultados
- SDKs y Herramientas — Web SDK, Android, iOS, Flutter