Skip to main content

El Objeto de Validación de Documento

Descripción

El objeto Validación de Documento representa el proceso de verificación de documentos dentro de tus proyectos de Verifik. Este objeto contiene toda la información necesaria para rastrear y gestionar solicitudes de verificación de documentos, incluyendo escaneo del documento, procesamiento OCR y resultados de validación.

Atributos

appRegistration

Tipo: ObjectId
Requerido: No

Referencia al objeto AppRegistration asociado a esta validación de documento.

client

Tipo: ObjectId
Requerido: No

Referencia al objeto Client asociado a esta validación de documento.

project

Tipo: ObjectId
Requerido: No

Referencia al objeto Project asociado a esta validación de documento.

projectFlow

Tipo: ObjectId
Requerido: No

Referencia al objeto ProjectFlow asociado a esta validación de documento.

status

Tipo: String
Requerido: Sí

El estado actual del proceso de validación de documento. Puede ser:

  • "new" - Solicitud de validación creada pero aún no procesada (predeterminado)
  • "pending" - El documento está siendo procesado
  • "completed" - La validación del documento se completó correctamente
  • "failed" - La validación del documento falló
  • "expired" - La sesión de validación ha expirado

documentType

Tipo: String
Requerido: Sí

El tipo de documento que se está validando:

  • "id" - Cédula/Documento nacional de identidad
  • "passport" - Pasaporte
  • "driver_license" - Licencia de conducir
  • "other" - Otro tipo de documento

country

Tipo: String
Requerido: Sí

Código del país donde se emitió el documento (p. ej., "US", "CO", "MX").

documentData

Tipo: Object
Requerido: No

Contiene los datos extraídos del documento:

  • firstName - Nombre según el documento
  • lastName - Apellido según el documento
  • middleName - Segundo nombre según el documento
  • documentNumber - Número de documento
  • birthDate - Fecha de nacimiento
  • expirationDate - Fecha de expiración del documento
  • issueDate - Fecha de emisión del documento
  • gender - Género
  • nationality - Nacionalidad

ocrResults

Tipo: Object
Requerido: No

Contiene los resultados del procesamiento OCR:

  • confidence - Puntaje de confianza del OCR
  • rawText - Texto bruto extraído
  • fields - Resultados de extracción de campos estructurados

validationResults

Tipo: Object
Requerido: No

Contiene los resultados de la validación:

  • documentAuthenticity - Resultado de verificación de autenticidad del documento
  • dataConsistency - Resultado de verificación de consistencia de datos
  • livenessDetection - Resultado de detección de vivacidad
  • antiSpoofing - Resultado de detección anti‑suplantación

images

Tipo: Object
Requerido: No

Contiene imágenes del documento:

  • frontImage - Imagen del frente (base64)
  • backImage - Imagen del reverso (base64)
  • selfieImage - Selfie para comparación

riskScore

Tipo: Number
Requerido: No

Puntaje de evaluación de riesgo para la validación.

age

Tipo: String
Requerido: No

Edad calculada a partir de la fecha de nacimiento.

backUrl

Tipo: String
Requerido: No

URL a la que redirigir después de la validación.

frontUrl

Tipo: String
Requerido: No

URL a la que redirigir al frente después de la validación.

createdAt

Tipo: Date
Requerido: Sí

Fecha y hora en que se creó la validación de documento.

updatedAt

Tipo: Date
Requerido: Sí

Fecha y hora de la última actualización de la validación de documento.

completedAt

Tipo: Date
Requerido: No

Fecha y hora en que la validación de documento se completó correctamente.

Objeto de Ejemplo

{
"_id": "document_validation_123456789",
"appRegistration": "reg_123456789",
"client": "client_123456789",
"project": "project_123456789",
"projectFlow": "flow_123456789",
"status": "completed",
"documentType": "id",
"country": "US",
"documentData": {
"firstName": "John",
"lastName": "Doe",
"middleName": "Michael",
"documentNumber": "123456789",
"birthDate": "1990-01-15",
"expirationDate": "2030-01-15",
"issueDate": "2020-01-15",
"gender": "M",
"nationality": "US"
},
"ocrResults": {
"confidence": 0.95,
"rawText": "US DRIVER LICENSE...",
"fields": {
"firstName": "John",
"lastName": "Doe"
}
},
"validationResults": {
"documentAuthenticity": "passed",
"dataConsistency": "passed",
"livenessDetection": "passed",
"antiSpoofing": "passed"
},
"images": {
"frontImage": "base64_encoded_front_image",
"backImage": "base64_encoded_back_image",
"selfieImage": "base64_encoded_selfie_image"
},
"riskScore": 0.05,
"age": "34",
"backUrl": "https://example.com/back",
"frontUrl": "https://example.com/front",
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:32:00Z",
"completedAt": "2024-01-15T10:32:00Z"
}

Características

  • Identificación única: Cada validación tiene un ID único de referencia
  • Múltiples estados: Soporta diferentes estados del proceso de validación
  • Tipos de documento: Soporte para cédulas, pasaportes, licencias de conducir y otros
  • Datos extraídos: Información completa extraída del documento
  • Procesamiento OCR: Resultados de reconocimiento óptico de caracteres
  • Resultados de validación: Verificación de autenticidad y consistencia
  • Imágenes: Imágenes de frente, reverso y selfie en base64
  • Evaluación de riesgo: Puntaje de riesgo para la validación
  • Marcas de tiempo completas: Registro de creación, actualización y finalización
  • Información de contexto: Datos de cliente, proyecto y flujo del proyecto