Guía completa de incorporación de ID check
Esta guía está escrita para desarrolladores que están integrando ID check en su servicio por primera vez. Recorre las preocupaciones reales que enfrentará durante la integración, paso a paso, presentando las tecnologías que ARGOS proporciona en cada etapa.- Cuenta de ARGOS Identity (Regístrese en idcheck.argosidentity.com)
- Acceso al dashboard y confirmación de la API key
Principio fundamental de la integración de ID check
Hay algo crítico que entender primero al integrar ID check en su sistema. Rol de la API: La API de ID check sirve como canal para la transferencia segura de información hacia y desde el sistema ARGOS. Sus propósitos principales son:Tabla de contenido
Parte 1: Fundamentos
Parte 2: Integración
Parte 3: Producción
Parte 1: Fundamentos
¿Qué es ARGOS ID check?
ARGOS ID check es una plataforma de verificación de identidad impulsada por IA. Cuando los usuarios capturan sus documentos de identidad y toman selfies, la IA analiza la autenticidad del documento y entrega resultados de verificación.Verificación de documentos
Detección de fraude con IA
Extracción de datos
Cumplimiento KYC/AML
Configuración de cuenta e información esencial
Crear su cuenta
Confirmar información esencial
- Project ID (PID) — Identificador único del proyecto
- URL del Liveform — La URL de la página de verificación de identidad para proporcionar a los usuarios (en la sección Project Pipeline)

Confirme el PID y la URL del Liveform en la página Project Info
- API Key — Se usa para la autenticación de solicitudes de API (nunca la exponga externamente)

Confirme la API Key en la página Integration Info
Conceptos fundamentales
Submission
Submission
- Submission ID — Identificador único (ej.,
sub_abc123) - KYC Status —
approved,rejected,pending(en espera de revisión manual),incomplete(no enviado / inacabado) - Datos extraídos — Nombre, fecha de nacimiento, nacionalidad, etc.
- Imágenes — Fotos del documento de identidad y selfies
- Metadatos — Marcas de tiempo, dirección IP, userid/email pasados por el cliente, etc.
Created es un nombre de trigger de webhook, no un estado KYC. El enum oficial de estados KYC tiene cuatro valores: Approved, Rejected, Pending, Incomplete.Liveform
Liveform
- Escritorio: Muestra un código QR para escanear con el móvil
- Móvil: Procede directamente a la interfaz de cámara
Webhook
Webhook
approved— Verificación aprobadarejected— Verificación rechazadasubmit— Enviado con estado pendienteupdated— Datos actualizadosdelete— Submission eliminadocreated— Submission creadoretry— Reintento del usuariotoken_expired— Token expiradoinjection— Datos inyectados vía APIaml— Verificación AML completadaaml_monitor— Resultado de monitoreo continuo AML
Token — Modo privado
Token — Modo privado
- Evitar que la misma URL sea compartida con múltiples personas
- Proporcionar enlaces de verificación válidos solo para usuarios específicos
- Usar en servicios críticos de seguridad (finanzas, salud, etc.)
- Genere un tokenId único en su servidor y regístrelo con ARGOS
- Agregue el parámetro
tokena la URL del Liveform y entréguela al usuario - Expira 3 minutos después del primer uso o cuando el submission alcanza un estado de decisión
Return URL
Return URL
kycStatus), email, userid, campos personalizados, etc. se pasan como parámetros de consulta.Ejemplo:Query Strings y cifrado
Query Strings y cifrado
email,userid,cf1~cf3— Prellenar información del usuarioblacklistCountries=false,ageLimit=false— Anular temporalmente políticas
allowedCountries— Restringir países permitidosallowedIdTypes— Restringir tipos de documentos permitidosselectedIssuingCountry,selectedIdType— Omitir pantallas de seleccióntoken— Token de modo privado
- AES-256-ECB — Cifrado de bloque rápido y simple
- AES-256-GCM — Cifrado mejorado con autenticación e integridad
- API Key — La API key predeterminada asignada al proyecto
- secretKey personalizada — Una clave dedicada emitida por separado desde el dashboard (se muestra solo una vez después de la emisión; debe reemitirse si se pierde)
Parte 2: Integración
Resuelva las preocupaciones reales que enfrentan los desarrolladores, paso a paso.P1. “¿Cómo hago que los usuarios verifiquen su identidad desde mi aplicación?”
Respuesta: Envíe a los usuarios a la URL del Liveform. Copie la URL del Liveform desde el dashboard y entréguela a los usuarios mediante enlaces de botón, redirecciones, enlaces de correo electrónico o cualquier otro método.Obtenga su URL del Liveform
Entréguela a los usuarios desde su aplicación
Probar el flujo básico


- Escritorio: Se muestra un código QR; escanee con el móvil para continuar
- Móvil: Procede directamente a la interfaz de cámara
P2. “¿Puedo pasar la información del usuario de mi servicio con anticipación?”
Respuesta: Agregue parámetros de query string a la URL. Si los usuarios ya se han registrado, prellenar su correo electrónico, ID de usuario, etc. significa que no necesitarán volver a ingresarlos en el Liveform. Estos valores también se guardan con los datos del Submission y se pueden usar más tarde al consultar mediante webhooks o la API GET Submission. Parámetros clave:P3. “Me preocupa que la URL sea compartida con múltiples personas”
Respuesta: Registre un Token para usar el modo privado (URL de un solo uso). Agregar un Token a la URL del Liveform la hace de un solo uso. Después del primer uso, una vez que pasan 3 minutos o la verificación se completa, ya no se puede usar.Genere un tokenId único en su servidor y regístrelo con ARGOS
Entregue la URL del Liveform con Token al usuario
Manejar la expiración del Token
- Han pasado 3 minutos desde el primer uso
- El Submission asociado con el Token alcanza un estado de decisión (approved/rejected/pending)
- Máximo 100,000 tokens por proyecto
- Máximo 500 tokens por solicitud de API
- Formato del Token ID: 8-64 caracteres, alfanuméricos +
-_.
P4. “Quiero permitir solo países o tipos de documentos específicos”
Respuesta: Use parámetros de query string cifrados. Los parámetros sensibles a la seguridad comoallowedCountries y allowedIdTypes deben cifrarse y colocarse en el parámetro encrypted. Puede elegir entre los módulos de cifrado AES-256-ECB o AES-256-GCM, y usar la API key del proyecto o una secretKey personalizada emitida por separado desde el dashboard como clave de cifrado.

Herramienta de cifrado/descifrado de Query String
P5. “Quiero redirigir a los usuarios de vuelta a mi aplicación después de la verificación”
Respuesta: Configure una Return URL en el dashboard. Cuando los usuarios terminan la verificación y hacen clic en “OK”, son redirigidos a la URL configurada. Los resultados de KYC se pasan como parámetros de consulta.Configurar Return URL en el dashboard

Configuración de Return URL
Manejar los resultados de la redirección
kycStatus—approved,rejected,pendinguserid— ID de usuario pasado en la URL del Liveformemail— Correo electrónico del usuariocf1,cf2,cf3— Campos personalizados
P6. “Quiero recibir resultados de verificación en mi servidor en tiempo real”
Respuesta: Configure Webhooks. Los Webhooks envían solicitudes HTTP POST instantáneas a su servidor cuando ocurren eventos de verificación. Este es el método más confiable y recomendado para recibir resultados de verificación.Crear un endpoint de Webhook
Registrar la URL del Webhook en el dashboard

Configuración de URL de Webhook
Revisar los eventos de Webhook
P7. “Quiero integrar datos de verificación con nuestra BD/sistema”
Respuesta: Use la API GET Submission para consultar datos de verificación. Mientras que la recepción en tiempo real mediante webhooks es posible, use la API GET Submission cuando necesite consultar directamente datos específicos de un Submission en un momento dado.POST /submission/review permite a los clientes revisar submissions pendientes directamente vía API cuando el revisor del proyecto está configurado como ‘Client’. Los submissions ya aprobados/rechazados no pueden modificarse.P8. “Quiero migrar datos KYC existentes a ARGOS”
Respuesta: Use la API POST Submission (Migración). Esta API se usa en las siguientes situaciones:- Migración de datos: Transferir datos de KYC completados de sistemas existentes al dashboard de ARGOS
- Situaciones especiales: Insertar datos directamente en casos excepcionales donde la verificación de ID Check es difícil
- Desarrollo y pruebas: Usar durante el desarrollo para probar varios escenarios
idType, issuingCountry, nationality, gender, issueDate, expireDate, identityNumber, documentNumber, userid, cf1~cf3, etc.
Notas:
- Solo se admiten datos de tipo string. Para datos de imagen, use la API PUT Image por separado.
- Para mayor seguridad, puede cifrar el cuerpo de la solicitud con AES-256-ECB antes de enviar.
Parte 3: Implementación en producción
Fortalecimiento de seguridad
Complete estas configuraciones de seguridad antes de implementar en producción.1. Gestión segura de API Key
1. Gestión segura de API Key
.gitignore:2. Configuración de lista blanca de IP
2. Configuración de lista blanca de IP

Gestión de lista blanca de IP
3. Habilitar cifrado de datos de Webhook
3. Habilitar cifrado de datos de Webhook

Configuración de transferencia segura de datos
Lista de verificación de pruebas
Verifique los siguientes elementos antes de implementar en producción.Pruebas del flujo del Liveform
Flujo básico
Flujo básico
- La URL básica del Liveform carga correctamente en escritorio/móvil
- El código QR se escanea en el móvil y el flujo procede
- La solicitud de permiso de cámara funciona correctamente
- La captura de documento y selfie seguida del envío se completa
Parámetros de Query String
Parámetros de Query String
- La información del usuario se prellena con los parámetros
email,userid - Los parámetros cifrados (
allowedCountries, etc.) funcionan correctamente - La URL en modo privado con Token funciona correctamente
- Se muestra la pantalla de error apropiada al acceder a un Token expirado
Return URL
Return URL
- Se redirige a la Return URL después de completar la verificación
- Los parámetros
kycStatus,userid,emailse pasan correctamente - Los parámetros se pasan mediante el parámetro
encryptedcuando la opción de cifrado está habilitada
Pruebas de Webhook
Verificación de recepción de Webhook
Verificación de recepción de Webhook
- El endpoint de Webhook recibe eventos correctamente
- Los eventos
approved,rejected,submitse procesan correctamente - Se devuelve respuesta 200 OK de inmediato al recibir el webhook
- El manejo de idempotencia para webhooks duplicados funciona
- Los webhooks cifrados se descifran correctamente
Pruebas de API
- GET Submission devuelve datos correctos
- La consulta por
userid,emailfunciona - El registro de Token (POST Token) y la recuperación (GET Token) funcionan correctamente
- Solo las IPs autorizadas pueden acceder cuando la lista blanca de IP está habilitada
- Se devuelve respuesta 403 para solicitudes con API keys inválidas
Pruebas de seguridad
- La API key no está expuesta en código del lado del cliente
- La API key no está incluida en el historial de git
- La URL de Webhook usa HTTPS
- No se otorgan permisos basándose únicamente en los parámetros de Return URL (verificar mediante webhook)
Lista de verificación de transición a producción
Verificación final de configuración del dashboard
- La URL de Webhook está configurada con la dirección del servidor de producción (HTTPS)
- Todas las IPs del servidor de producción están registradas en la lista blanca de IP
- La transferencia segura de datos (cifrado de webhook) está configurada según sea necesario
- La Return URL está configurada con la dirección de la aplicación de producción
- La configuración del proyecto (tipos de documentos permitidos, lista negra de países, límites de edad, etc.) coincide con los requisitos
Verificación final del código
- La API key se carga desde variables de entorno
- No hay API keys codificadas en el código
- El manejo de errores y el registro están implementados en el handler de webhook
- El manejo de idempotencia de webhook está implementado
- El frontend no llama directamente a la API de ARGOS
Configuración de monitoreo
- Inicios de verificación vs. completados
- Ratios de aprobado / rechazado / pendiente
- Tasa de fallos en la recepción de webhooks
- Frecuencia de reemisión de tokens debido a expiración