Saltar al contenido principal
Cuando se inicia una sesión de verificación de empresas, Didit consulta los registros oficiales de empresas para obtener y validar la información de la empresa. Esta consulta automatizada es la base de todo el proceso de verificación de empresas.

Búsqueda en el registro

Didit se conecta a los registros de empresas de los países compatibles para obtener datos oficiales. En el flujo alojado, el usuario selecciona el país de constitución e introduce el nombre de la empresa, el número de registro o ambos; se requiere al menos uno. Los números de registro se normalizan cuando el registro lo exige (por ejemplo, los números de empresa del Reino Unido se completan con ceros a la izquierda hasta ocho dígitos) y, cuando se proporcionan ambos identificadores, la búsqueda en el registro los combina.

Rellenar previamente la búsqueda con expected_details

Si ya conoces la empresa, pasa expected_details (company_name, registry_country, registration_number) al crear la sesión. El flujo alojado preselecciona y bloquea el país (y el estado en los registros de nivel estatal como US-CA), rellena los campos de búsqueda correspondientes y ejecuta automáticamente la búsqueda indicada, de modo que el usuario llega directamente al resultado de su empresa. Ambos campos siguen siendo editables para que el usuario pueda corregir datos declarados incorrectos. Es solo un relleno previo: seleccionar una empresa distinta de la indicada no genera ninguna advertencia.

Tipos de búsqueda

Las búsquedas en el registro admiten dos modos:

Proceso de búsqueda

La búsqueda en el registro sigue un proceso asíncrono:

Buscar

Didit consulta el registro con el país seleccionado y los identificadores proporcionados: nombre de la empresa, número de registro o ambos combinados. El campo searched_by de la respuesta indica cómo se cotejaron los resultados (name, registration_number o registration_number_and_name), y la interfaz alojada ofrece, en los resultados por número de registro, la opción “Search as company name instead” para buscar por nombre de empresa con un solo toque. La búsqueda se ejecuta de forma asíncrona.

Consultar los resultados

Consulta periódicamente el estado de la búsqueda hasta que se resuelvan los resultados. Los registros grandes pueden tardar unos segundos en devolver resultados.

Seleccionar la empresa

Revisa las empresas devueltas y selecciona la que corresponda. Didit vincula la empresa seleccionada a la comprobación KYB y completa todos los datos disponibles.

Confirmar y continuar

Confirma o corrige los datos de la empresa y continúa con el siguiente paso configurado. Algunos registros devuelven el perfil de la empresa antes de que el informe de propiedad esté listo; ese informe sigue generándose en segundo plano mientras el solicitante completa pasos independientes, como la carga de documentos. El relleno previo desde el registro no bloquea el formulario de personas clave: el solicitante puede introducir personas manualmente, y las personas disponibles en el registro aparecen antes del envío a medida que llega el informe. Las decisiones personalizadas que dependen del informe siguen esperando al informe en lugar de suponer su resultado. Tus correcciones se conservan cuando llega el informe. Un informe pendiente no cuenta como una comprobación de registro completada ni como una aprobación automática, y la facturación del registro se basa en el nivel realmente entregado.

Envío manual

Si la empresa no se encuentra en el registro, envía los datos de la empresa manualmente. La sesión continúa con los datos proporcionados y is_from_registry se establece en false.

Datos obtenidos

Estados de la empresa

Las empresas con un estado distinto de Activa pueden marcarse o rechazarse automáticamente según la configuración de tu flujo de verificación (workflow).

Indicador de origen de los datos

Cada registro de empresa incluye un indicador is_from_registry:
  • true: los datos se obtuvieron de un registro oficial de empresas
  • false: los datos se enviaron manualmente porque la empresa no se encontró en el registro
El campo fetch_status indica si la consulta al registro ha finalizado, ha fallado o sigue en curso.

Niveles de datos y precios

En el flujo alojado, seleccionar una empresa genera el cargo del registro, aunque el solicitante abandone antes de confirmar los datos o de terminar la verificación. Si el informe está listo en el momento de la selección, el nivel entregado se cobra de inmediato. Si la propiedad sigue pendiente, se cobra Lite en la selección y solo se cobra la diferencia de precio cuando se entrega un nivel superior. Si la propiedad no está disponible, no se aplica ningún recargo por propiedad. El total usa los precios indicados en la selección y nunca supera el precio indicado para el nivel solicitado. La selección y cualquier ajuste posterior de propiedad cuentan como una sola consulta al registro; leer el informe adquirido o confirmar sus datos no genera un nuevo cargo. Los contratos de tarifa plana existentes generan una consulta al registro en la selección, sin una segunda unidad de contrato por la entrega posterior de la propiedad. Las búsquedas del flujo alojado no tienen una tarifa de búsqueda aparte. Las búsquedas independientes por API pueden tener una tarifa de $0.50 por solicitud exitosa; consulta facturación de búsquedas. Consulta precios del registro KYB para ver la tabla completa por país. Un flujo alojado elige el nivel por país en Workflows → KYB Registry Check → Countries. Cuando el registro no tiene datos de propiedad de una empresa, una solicitud de Accionistas o de UBO se entrega y se factura al nivel más alto que pueden ofrecer los registros del país, normalmente Lite. Una empresa que no se encuentra y se introduce manualmente (is_from_registry: false) se factura a una tarifa fija de $0.75: la búsqueda se realizó igualmente, aunque no se devolvió ningún registro.
Lite devuelve solo el perfil de la empresa, sin accionistas, UBOs ni estructura de propiedad:
El nivel Accionistas añade ownership_structure y las entradas de accionistas, además de los directores y administradores. El nivel UBOs además resuelve los beneficiarios finales con sus porcentajes de propiedad. Consulta Propiedad y Administradores y directores.

Datos del registro frente a datos proporcionados por el usuario

Didit conserva los datos devueltos por el registro y los datos confirmados por el usuario como registros de auditoría separados, con una vista canónica combinada que usan las comprobaciones posteriores. Cada empresa incluye tres bloques relacionados: La marca de tiempo confirmed_by_user_at indica cuándo el usuario final confirmó o editó los datos del registro. Mientras esa marca de tiempo siga siendo nula y is_editable sea true, el usuario final puede seguir modificando campos dentro del flujo alojado. En las empresas introducidas manualmente (is_from_registry: false), user_provided_data es la única fuente y is_editable pasa a ser false cuando el usuario envía los datos. Los analistas pueden ver ambas fuentes lado a lado en la revisión de la sesión en Business Console y comparar lo que figuraba en el registro con lo que confirmó el usuario.

Campos configurables del formulario de registro

Tú decides qué campos de datos de la empresa solicita el flujo de verificación alojado durante el paso de confirmación del registro. Puedes configurarlos en la Business Console: abre el editor del flujo de verificación (workflow), selecciona el nodo KYB Registry check y cambia a la pestaña Fields. Cada campo puede estar en uno de estos tres estados: Hay tres campos que siempre se muestran y siempre son obligatorios, porque identifican a la empresa y no se pueden configurar: company_name, country_code y region (estado o región, cuando el registro es regional). Los 16 campos configurables: registration_number, incorporation_date, legal_address, vat_number, alternative_names, tax_number, company_type, legal_entity_identifier, location_of_registration, nature_of_business, registered_capital_amount, registered_capital_currency, website, email, phone, control_scheme De forma predeterminada, y en todos los flujos existentes, solo incorporation_date es Obligatorio; todos los demás campos configurables son Opcionales, de modo que el formulario se comporta exactamente igual que antes de que existiera esta opción. La obligatoriedad se aplica en el servidor: si envías el formulario de registro con un campo obligatorio vacío, se devuelve 400 con mensajes de error por campo, y la interfaz alojada muestra solo los campos habilitados. En la API de flujos, esta opción es el objeto kyb_registry_fields_config del nodo KYB Registry; consulta las configuraciones de funciones para ver su estructura.
Cuando vat_number está marcado como Obligatorio, solo se exige para empresas constituidas en un país con IVA de la UE (ver más abajo); para el resto de países, el campo se trata como opcional aunque esté marcado como obligatorio, ya que no hay ningún número de IVA de la UE que recopilar. Su tax_number se sigue validando cuando se proporciona.

Validación del IVA y de la identificación fiscal

Cuando se envía el paso de registro, Didit valida el vat_number de la empresa con la fuente oficial de su país. Si la empresa no tiene vat_number, se valida su tax_number en su lugar. El número puede enviarse con o sin el prefijo del país y con cualquier separador (DE 123 456 789, DE123456789 y 123456789 son equivalentes para una empresa alemana). Registros oficiales. En estos países, el número se comprueba en tiempo real con el registro mercantil oficial o de la administración pública, que además devuelve el nombre registrado (y, en la mayoría de los casos, la dirección): Si se envía como número de IVA un SIREN o SIRET francés, un RSIN neerlandés o un número fiscal húngaro completo, se convierte en el número de IVA correspondiente antes de comprobarlo. Los números de IVA griegos se comprueban automáticamente con el prefijo EL. Reglas de dígito de control. En estos países no se puede consultar ningún registro, así que el número se comprueba con el formato oficial y las reglas de dígito de control del país: Albania, Andorra, Argentina, Australia, Azerbaiyán, Bielorrusia, Canadá, Chile, China, República Dominicana, Egipto, El Salvador, Ghana, Guatemala, Islandia, India, Indonesia, Israel, Japón, Kenia, Liechtenstein, México, Moldavia, Mónaco, Montenegro, Marruecos, Mozambique, Nueva Zelanda, Macedonia del Norte, Perú, Rusia, San Marino, Serbia, Singapur, Sudáfrica, Corea del Sur, Taiwán, Tailandia, Túnez, Turquía, Ucrania, Reino Unido, Estados Unidos, Uruguay, Venezuela y Vietnam. Estas reglas también se aplican en la UE cuando un tax_number es una identificación fiscal nacional sin número de IVA que comprobar, como la Steuernummer alemana. Un tax_number solo indica un identificador fiscal, no un registro de IVA, así que, cuando VIES no lo incluye, el resultado se determina con estas reglas en lugar de ser invalid. Las empresas de cualquier otro país obtienen vat_validation_status: "not_applicable". Lo mismo ocurre con las sesiones de sandbox, que nunca contactan con un registro fiscal. El resultado se guarda en la empresa y se expone en el payload de decisión de KYB: vat_validation_source es uno de estos valores: eu_vies, pl_vat_white_list, no_brreg, ch_uid_register, br_receita_federal, co_rues, cr_hacienda, ec_sri, py_dnit o format_rules. Una vez que un número es valid, invalid, format_valid o invalid_format, el resultado se conserva durante el resto de la sesión y no se vuelve a consultar el registro, a menos que el número cambie. Comparación del nombre. Cuando el número es valid y la fuente facilita el nombre registrado, Didit lo compara de forma aproximada (fuzzy) con el nombre de la empresa enviado. Una diferencia significativa genera la advertencia KYB_COMPANY_VAT_NAME_MISMATCH sin cambiar el estado de la sesión: es una señal orientativa para los revisores. Su additional_data incluye registry_name, registry_source y submitted_name, además de vies_name cuando la fuente es VIES. Algunos Estados miembros de la UE no facilitan el nombre ni la dirección; en ese caso, los campos se devuelven vacíos y no se realiza ninguna comparación. Acciones configurables. Dos opciones de configuración del nodo de comprobación de registro KYB controlan qué efecto tiene en la sesión una comprobación fallida (valores REVIEW, DECLINE, NO_ACTION): Un tax_number que es invalid_format se indica en el payload sin activar ninguna acción, porque el campo fiscal de texto libre suele contener otro identificador de la empresa. Cada resultado también genera la advertencia correspondiente (KYB_COMPANY_VAT_INVALID, KYB_COMPANY_VAT_COULD_NOT_VALIDATE) en la comprobación de registro; consulta las advertencias de Verificación de empresas.

Verificación cruzada de datos

Didit compara automáticamente los datos proporcionados por el usuario o los datos canónicos con lo que devolvió el registro y con los datos de OCR extraídos de los documentos subidos:
  • Nombre de la empresa: coincidencia aproximada para tener en cuenta abreviaturas y diferencias de formato
  • Número de registro: validación de coincidencia exacta
  • País: comprobación de coherencia entre el país proporcionado y el del registro
  • Dirección: geocodificación y normalización para la comparación
Cualquier incoherencia se marca como advertencia en la sesión y los analistas pueden verla en la consola.

Resumen financiero

Cuando están disponibles, Didit obtiene del registro datos financieros resumidos:
  • Ingresos o volumen de negocio
  • Número de empleados
  • Códigos de actividad SIC/NACE
  • Fechas de presentación y estado de cumplimiento

Campos adicionales del registro

Según la cobertura de cada jurisdicción, la respuesta del registro también puede incluir:
  • alternative_names: nombres comerciales, nombres DBA y denominaciones legales anteriores
  • legal_entity_identifier (LEI): para entidades financieras y entidades cotizadas
  • website, email, phone: datos de contacto que constan en el registro
  • nature_of_business: descripción breve (en el idioma del registro)
  • registered_capital: capital autorizado o emitido como objeto {amount, currency}
Todos los campos se incluyen en el bloque business de la decisión KYB.

Confianza y estado de verificación

Cada respuesta del registro incluye un verification_status: Combínalo con is_from_registry para controlar tu propia lógica posterior:

Resultados de la verificación cruzada

Cada verificación cruzada se ejecuta por campo y devuelve uno de estos valores:
  • MATCH: los datos proporcionados coinciden con el registro.
  • MISMATCH: divergencia significativa. Se marca como advertencia.
  • NO_DATA: una de las dos partes no contenía datos; no es posible comparar.
Las discrepancias se pueden ver campo por campo en la revisión de la sesión en la consola.

Qué determina el resultado

El estado de la empresa, el país de constitución, los resultados AML y la coincidencia con los datos declarados contribuyen a la decisión mediante etiquetas de advertencia en la comprobación del registro y en el análisis AML. Tu flujo decide si cada advertencia conlleva la aprobación, la revisión o el rechazo. Consulta la evaluación de riesgos para ver las señales y las claves del flujo que las controlan.

Países admitidos

La cobertura varía según el país: consulta los países admitidos para ver el desglose de niveles por región.

Próximos pasos

Propiedad

Identificación de UBO y cadenas de propiedad.

Esquema de respuesta

Dónde aparece cada campo en el payload.

Países admitidos

Cobertura por región.
Última modificación el 1 de noviembre de 2026