GET /v3/session/{id}/decision/ para una sesión de Verificación de empresas (KYB). El endpoint es unificado: cuando pasas un session_id de empresa, la respuesta incluye session_kind: "business" y los arrays de funciones específicos de la empresa que se describen a continuación.
Estructura de nivel superior
Campos compartidos de nivel superior
registry_checks[]
Cada elemento es una verificación en el registro de empresas (normalmente una por sesión; varias en flujos basados en grafos con KYB recursivo de UBO corporativos).
Bloque company
El objeto anidado de la empresa es la vista completa de la entidad jurídica tal como se obtiene del registro (y, opcionalmente, editada por el usuario):
Un único formato para cada país y fuente de registro
Didit consulta registros de empresas en muchos países a través de varias fuentes de registro. Cada fuente publica su propia estructura, pero el bloquecompany siempre tiene la misma forma: las claves siguientes están siempre presentes, con los mismos tipos, sea cual sea el país y la fuente de los que proceda la empresa.
Un dato que el registro no publica es null; nunca necesitas ramificar la lógica según el país ni analizar registry_data.
La misma forma la devuelven la decisión, los endpoints independientes del registro KYB y el flujo de verificación alojado.
Dirección (cada elemento de addresses)
Industria (cada elemento de
industries)
Cuando el registro indica actividades pero no una descripción de la empresa,
nature_of_business se completa a partir de las etiquetas de las actividades.
Los datos de contacto y los nombres alternativos se completan cuando están disponibles, aunque las ediciones explícitas del usuario o del revisor siempre tienen prioridad.
Propiedad (ownership)
Detalle del registro (
registry_data)
Detalle propio de Didit sobre la comprobación en el registro, nunca el registro de la fuente registral.
Todas las claves son opcionales y solo aparecen cuando la empresa tiene un valor para ellas, y se pueden añadir claves nuevas: consulta los campos canónicos anteriores para todo lo que cubren.
Estructura de un directivo (dentro de company.officers)
date_of_birth solo se completa cuando el registro proporciona una fecha completa.
Si el registro solo indica un año, o un mes y un año, usa date_of_birth_year y date_of_birth_month; el día que falta nunca se deduce.
Los nombres, los datos de nacimiento, la dirección y las fechas de nombramiento siguen disponibles tanto en la lista de directivos de la empresa como en la lista del registro de personas clave.
Estructura de un beneficiario final (dentro de company.beneficial_owners)
kyc_status usa una proyección apta para B2C: Approved, Declined o Pending (los estados completos de la sesión se agrupan en Pending hasta que termina el KYC).
shareholding indica lo que posee el propietario, con la misma estructura para todos los países y fuentes registrales: share_class, number_of_shares, currency, nominal_value, total_value y percentage (la participación exacta, con cuatro decimales).
Es null cuando el registro no indica ninguna participación.
Un rango, como el 25-50% de un PSC del Reino Unido, no es una participación: percentage es null y el rango se mantiene en ownership_min_shares / ownership_max_shares.
Los accionistas y los UBO se incluyen en beneficial_owners; roles permite distinguirlos.
key_people_checks[]
Esta es la comprobación agregada de todos los cargos y UBO de la sesión. Expone dos grupos para que la consola pueda mostrar en paralelo “extraído del registro” y “enviado por la empresa”, además de un resumen general del KYC de los UBO.
registry.officers/registry.beneficial_owners: partes extraídas de la comprobación del registro de empresas.submitted.parties: partes que el administrador de la empresa añadió explícitamente durante el flujo de personas clave (registros consource = "USER").
registry.officers[] / registry.beneficial_owners[]
Los datos del registro coinciden con company.officers / company.beneficial_owners descritos arriba.
Personas clave incluye además el estado AML y la vinculación detallada con la verificación, como kyc_session_id y los campos del flujo de verificación.
Las listas de la empresa conservan su estado de KYC simplificado y su URL de verificación.
submitted.parties[]
Las partes enviadas por el usuario incluyen su vinculación con el KYC o con el KYB hijo:
entity_type: "company") incluyen además company_name, registration_number y kyb_sub_session_id / kyb_sub_session_status / kyb_sub_session_deleted cuando el KYB anidado está habilitado para los UBO corporativos.
kyc_session_deleted (y su equivalente corporativo kyb_sub_session_deleted) es true cuando la sesión hija de la parte se eliminó. Una sesión hija eliminada conserva el estado que tenía en el momento de la eliminación y nunca puede finalizar, así que consulta este indicador en lugar del estado: el *_session_url correspondiente se devuelve como null porque el enlace ya no funciona, y la comprobación de personas clave pasa a In Review en lugar de esperar indefinidamente. Eliminar una sesión hija nunca cuenta como aprobación. Exime a la parte con PATCH /v3/session/{id}/kyb/parties/{party_uuid}/ para que el KYB pueda finalizar.
ubo_kyc_summary
Progreso agregado del KYC de los UBO, útil para una sola tarjeta del panel:
Devuelve
null cuando ningún UBO tiene sesiones de KYC vinculadas.
document_verifications[]
Documentos agrupados por nodo:
Metadatos de documentos corporativos
En los documentos corporativos en PDF,items[].document_metadata.overlay_manipulation puede incluir evidencia forense de una posible edición mediante texto superpuesto. Cuando está presente, incluye:
El campo es
null cuando no se encontró evidencia de manipulación mediante texto superpuesto, cuando el documento no es un PDF o cuando no se pudo analizar el PDF.
aml_screenings[]
Análisis AML a nivel de empresa y (cuando el flujo los incluye) a nivel de persona.
total_hits > 0, cada coincidencia incluye la puntuación de coincidencia, la puntuación de riesgo, las fuentes de la lista de vigilancia y un review_status por coincidencia que puedes actualizar con el endpoint update-aml-hit-status. Consulta el informe de Análisis AML para ver la estructura de las coincidencias.
Arrays de funciones compartidas
phone_verifications, email_verifications, questionnaire_responses e ip_analyses usan la misma estructura por elemento que las sesiones de usuario (KYC). Son null cuando el flujo no las incluye. Consulta la respuesta de KYC para ver los esquemas de los elementos.
signatures está presente cuando el flujo tiene un paso de Firma electrónica. Una sesión de empresa tiene un elemento por cada persona clave que firma en nombre de la empresa, con signer.capacity: "company", el nombre de la empresa y los roles de la persona clave. Consulta el informe de Firma electrónica.
Grupos de advertencias por función
Las advertencias de Verificación de empresas se agrupan según la función que las generó:KYB_REGISTRYpara problemas de disponibilidad del registro, propiedad, actividad de la empresa y restricciones por país.KYB_DOCUMENTSpara problemas de extracción de documentos corporativos, verificación cruzada, metadatos, manipulación, subtipo, antigüedad y límite de intentos.AMLpara coincidencias en el análisis AML de la empresa o falta de datos del análisis.KYB_KEY_PEOPLEpara problemas a nivel de persona relacionados con directores, directivos, UBO o representantes.PHONEpara problemas de riesgo del número de teléfono, duplicados, lista de bloqueo e intentos del código de verificación.EMAILpara problemas de riesgo del correo electrónico, entregabilidad, duplicados, lista de bloqueo e intentos del código de verificación.QUESTIONNAIREpara reglas de estado personalizadas basadas en las respuestas del cuestionario.LOCATIONpara problemas de Análisis de dispositivo e IP, red privada, lista de bloqueo de IP, lista de bloqueo de dispositivos y dispositivos o IP duplicados.SIGNATUREpara rechazos de Firma electrónica, confirmaciones de código fallidas, discrepancias en el nombre del firmante, firmantes no verificados, documentos modificados y datos de campos faltantes. Consulta las advertencias de Firma electrónica.
Filtrado de campos según el flujo
Los flujos pueden limitar qué campos anidados aparecen en cada elemento de función medianteresponse_attributes. Estos campos se incluyen siempre, sin excepción: status, warnings, node_id. Todos los demás campos se establecen en null cuando no están en la lista de permitidos: la clave se mantiene en la respuesta para que el esquema sea estable.
Próximos pasos
Estados
Qué significa cada valor de estado.
Evaluación de riesgo
Qué determina el resultado de una verificación KYB.
Informe AML
Referencia completa del payload de coincidencias AML.
Personas clave
Cómo las partes del registro y las enviadas por el usuario se clasifican en los grupos
registry / submitted.Documentos
Grupos de documentos, OCR y verificación cruzada.
Recuperar sesión
Referencia completa del endpoint con ejemplos de respuestas.