Datos fiables, compartidos con control

Comparte datos fiables, no todo tu documento de identidad.

Verifícate en tu teléfono, comprueba exactamente qué se solicita y aprueba antes de compartir nada.

Por ejemplo:

Consulta la solicitud

Conoce lo que se solicita antes de aprobarlo.

El servicio inicia una solicitud de Verihop. Completas la verificación guiada, revisas los datos solicitados y continúas donde lo dejaste.

Qué muestra el vídeo

Un servicio solicita datos concretos. Te verificas en el teléfono, revisas la solicitud y apruebas compartirlos. Al terminar, vuelves al servicio.

Qué puedes esperar

Claro, rápido y bajo tu control.

Claro

Comprueba quién solicita información y qué necesita exactamente.

Rápido

Las verificaciones compatibles completadas no pasan por una cola habitual de revisión.

Reutilizable

Usa una verificación guardada y válida cuando el servicio la acepte.

Privacidad desde el diseño

Aprueba solo los datos solicitados.

Teléfono sobre un pasaporte para la verificación de identidad por NFC

Cómo funciona

Empieza desde un enlace de Verihop o código QR. Verás quién solicita datos y cuáles necesita antes de compartir nada.

1

Abre la solicitud

Verihop muestra el servicio solicitante y los datos exactos que necesita.

2

Verifícate en el teléfono

Sigue las comprobaciones guiadas de documento de identidad y titular en vivo disponibles para la solicitud.

3

Aprueba y continúa

Aprobar la solicituded details and continue where you left off.

PROBAR DEMO Mira una verificación de edad de principio a fin. Completa el flujo en tu teléfono y mira exactamente qué recibe la demo.

Creado para la vida real

Demuestra lo necesario. Sigue con lo que estabas haciendo.

Edad

Demuestra que tienes la edad necesaria.

Confirma tu edad y continúa.

Alquileres y servicios

Verifica quién eres.

Comparte los datos verificados solicitados.

Alta de cuentas

Verifica y continúa.

Completa la comprobación y vuelve directamente al servicio.

Acceso a la cuenta

Demuestra que realmente eres tú.

Verifícate para acciones sensibles, asistencia o recuperación de cuenta.

¿Estás creando una de estas experiencias? Descubre cómo funciona Verihop para empresas, integraciones y recorridos de cliente. Ver PARA EMPRESAS →

Tú decides

Verificaciones sólidas. Decisiones sencillas.

Comprobar el documentoLee la MRZ y el chip seguro cuando sea compatible.

Comprobar al titularUtiliza prueba de vida guiada y comparación facial para la verificación activa.

Aprobar la solicitudEl servicio recibe los datos que apruebas.

Cómo trata Verihop la información de identidad

Cuando quieras

Descubre cómo funciona una solicitud de Verihop.

Prueba la demo de control de edad, revisa los datos exactos solicitados y completa el flujo en el teléfono.

API de identidad personal

Una API para datos fiables.

Crea una sesión. Envía la URL de inicio. Obtén el resultado aprobado. Nos encargamos de la verificación, el consentimiento y el dispositivo.

¿Buscas la visión de producto y negocio? Ver PARA EMPRESAS →

PASOS DE INTEGRACIÓN

De la sesión al resultado aprobado en cuatro pasos.

Ver pasos de integración

1. Crea la sesión

POST /v1/sessions

2. Abre Verihop

Usa launch_url o qr_url; las apps nativas de iOS abren app_clip_url sin cambios.

3. Recibe el callback

session_id + result_token

4. Obtén el resultado

GET /v1/sessions/{id}/result

Intercambio de un solo uso en tu backend.

Opcional: consulta el estado GET /v1/sessions/{id}

Las claves API permanecen en tu backend. Los datos personales verificados no se incluyen en las URL de callback.

Flujos de dispositivo y callbacks

Una sesión controlada por tu backend inicia el flujo; la información de identidad aprobada se obtiene de servidor a servidor.

Ver flujo de integración
Ver flujo de usuario

Prueba en el Customer Portal

Ejecuta un Session Ejemplo antes de desarrollar la integración de producción.

Usa una cuenta de prueba para elegir los campos solicitados, configurar un callback, ejecutar el Session Ejemplo e inspeccionar la solicitud, respuesta, estado de sesión y resultado estructurado reales.

Abrir área de Developers

Skill de integración para agentes

Dale a tu agente de programación la guía de Verihop.

Una fuente segura para la configuración de pruebas, sesiones del servidor, callbacks, resultados, comportamiento de apertura y patrones concisos para Node, Python, Swift, Kotlin, Java, Go, PHP, Ruby y cURL.

Descargar SKILL.md

Colección de Postman

Importa la colección API de Verihop.

Prueba la colección con una clave Test. Conserva la clave de idempotencia para los reintentos y obtén el resultado una sola vez desde tu backend.

Descargar colección de Postman

Bases

Los valores de ejemplo no son credenciales reutilizables. Usa las URL, los identificadores y los plazos devueltos realmente.

URL base: https://api.verihop.com

Autentica las requests de partner solo desde tu backend:

Authorization: Bearer <api_key>

Las solicitudes GET no tienen cuerpo. Usa la clave Test o Live correspondiente para consultar el estado y el resultado; JWKS no requiere clave API.

Crea primero una cuenta de prueba para obtener una API key. Las respuestas de prueba están redactadas por diseño y la misma cuenta puede activarse después para producción.

Test oculta los valores personales devueltos; las comprobaciones del teléfono siguen tratando datos de identidad. El acceso Live requiere aprobación separada del uso, los campos, el callback y la activación.

Crear cuenta de prueba

POST /v1/sessions

Create a verification session and receive the public launch fields.

Los ejemplos usan una clave Test. Los ajustes de verificación Live se proporcionan al activar tu cuenta.

Este ejemplo solicita datos personales y documentales de un documento de identidad o un pasaporte; no exige ambos.

Duración y caducidad de la sesión
  • Usa el expires_at devuelto como plazo absoluto. Abrir el enlace o continuar la verificación nunca amplía este plazo.
  • Nunca reutilices tokens de lanzamiento o callback caducados. Resuelve el intento anterior antes de iniciar expresamente otra Session; un canje incierto no debe generar una sustitución automática.
  • Verihop never refreshes a Session automatically. The partner must create the replacement Session; compatible documents already verified and stored locally may still be reused.

Cabeceras

Authorization: Bearer <api_key>
Content-Type: application/json
Idempotency-Key: <uuid>

Cuerpo

{
  "app": "RideNow",
  "header": "Identity details",
  "fields": ["legalName", "over18", "documentNumber", "documentExpiry"],
  "allowedDocuments": ["idCard", "passport"],
  "callback": "https://partner.example/verihop/callback"
}
Guía de elementos del body
  • app: nombre visible de la app partner dentro de Verihop (máx. 80 caracteres).
  • header: título corto de verificación mostrado al usuario (máx. 120 caracteres).
  • fields: Indica los tokens del catálogo que necesitas. Una lista omitida o vacía no solicita campos.
  • allowedDocuments: Lista opcional de tipos admitidos: passport, idCard, driverLicense o residencePermit. Omítela para aceptar cualquier tipo de documento admitido; no envíes un array vacío.
  • callback: URL base de retorno enviada en POST /v1/sessions. Verihop la abre al terminar y añade session_id, result_token (success path) y opcionalmente callback_jwt; requerida y validada contra tu allowlist de producción.
Fields, allowed documents, and minimum evidence

fields says which verified values you request. allowedDocuments says which document types may provide evidence.

{
  "fields": ["legalName", "over18"],
  "allowedDocuments": ["passport", "idCard"]
}

This means Passport OR ID Card is eligible. It does not require both. The user chooses the concrete document used by each relevant section in the Verihop app.

  • passport, idCard, driverLicense, and residencePermit are cumulative document-type assertions (AND). A request such as ["legalName", "passport", "idCard"] requires Passport + ID Card.
  • documentNumber, documentExpiry, documentCountry, and documentNationality are one detail bundle. With explicit required types, they apply to each compatible required contributor; without one, the holder chooses one eligible document for the whole bundle. Driving licences do not supply documentNationality.
  • Personal facts are global and conflict-safe; committed evidence can establish them without requiring another document.
  • A holder may have multiple documents of the same type, including two passports from the same issuing country. Document type is not a unique identifier; receipt-backed partner evidence is distinguished by receiptId.
  • Impossible combinations are rejected at creation. Requiring Passport while allowing only ID card is invalid. A Driver's licence-only request for documentNationality is also invalid.
Guía de headers
  • Authorization: API key partner en formato bearer.
  • Content-Type: usa application/json para parsear el request body.
  • Idempotency-Key: Recomendada para reintentar la creación. Genera un UUID por intento nuevo y reutilízalo solo con el mismo cuerpo de solicitud.
Respuesta 201 correcta
{
  "session_id": "sess_123",
  "expires_at": 1893456900,
  "launch_url": "https://www.verihop.com/verify.html?session_id=sess_123&token=h_example123456789",
  "app_clip_url": "https://appclip.apple.com/id?p=KycBox.VerifyBox.Clip&session_id=sess_123&token=h_example123456789",
  "qr_url": "https://www.verihop.com/verify.html?session_id=sess_123&token=h_example123456789",
  "status_url": "https://api.verihop.com/v1/sessions/sess_123"
}
Guía de elementos de respuesta
  • session_id: identificador único para tracking y obtención del resultado.
  • expires_at: expiración de sesión (Unix epoch seconds).
  • launch_url: URL principal para web, Android, QR, emails, SMS y handoff general.
  • app_clip_url: URL nativa directa del App Clip para apps partner de iOS. Ábrela exactamente como se devuelve; no la reconstruyas.
  • qr_url: URL segura para QR; actualmente equivalente a launch_url.
  • status_url: endpoint de estado de sesión para polling server-side.
Errores comunes
  • 401 missing_bearer_token, 401 invalid_api_key
  • 403 customer_inactive
  • 400 missing_callback_url, invalid_callback_url, callback_host_not_allowed
  • 400 field_not_allowed, invalid_field_token, invalid_allowed_documents
  • 409 idempotency_key_conflict, idempotency_key_in_progress, idempotency_key_expired
  • 413 request_too_large
  • 429 rate_limit_exceeded, daily_quota_exceeded

GET /v1/sessions/{id}

Opcional: consulta el progreso sin obtener datos personales.

Authorization: Bearer <api_key>
Respuesta 200 correcta
{
  "session_id": "sess_123",
  "status": "issued",
  "issued_at": 1893456000,
  "expires_at": 1893456900,
  "last_status": null,
  "last_status_at": null,
  "opened_at": null,
  "result_available": false,
  "result_token_expires_at": null
}

Una sesión completada puede mostrar status: "used" y last_status: "success". result_available indica que se guardó un resultado; puede seguir siendo true tras consumirlo o caducar. Obtén el resultado una sola vez antes de su vencimiento.

Consultar el estado es de solo lectura y no marca la sesión como abierta. Una sesión completada con clave Test también incluye result_token para obtener el resultado redactado en Postman. Los tokens Live llegan mediante el callback.

GET /v1/sessions/{id}/result

Obtén la result payload verificada server-to-server usando un result token de un solo uso.

A launch token starts with h_ and cannot be used here. X-Result-Token requires the short-lived res_ token from a live callback or completed test-key status response.

Authorization: Bearer <api_key>
X-Result-Token: <result_token>
Respuesta 200 correcta

Respuesta Test ilustrativa para la solicitud anterior: el usuario eligió un documento de identidad. Los valores personales están redactados; los identificadores y las fechas son ejemplos.

{
  "session_id": "sess_123",
  "status": "success",
  "result": {
    "legalName": "XXXTEST_USERXXX",
    "over18": "XXXTEST_USERXXX"
  },
  "personalDetailsDocument": {
    "type": "idCard",
    "issuingCountry": "ESP",
    "receiptId": "dr_AAAAAAAAAAAAAAAAAAAAAAAA"
  },
  "documents": [
    {
      "type": "idCard",
      "issuingCountry": "ESP",
      "receiptId": "dr_AAAAAAAAAAAAAAAAAAAAAAAA",
      "details": {
        "documentNumber": "XXXTEST_USERXXX",
        "documentExpiry": "XXXTEST_USERXXX"
      }
    }
  ]
}

result contains requested Personal Details only. personalDetailsDocument identifies the verified document selected by the user as their Personal Details source. The same document also appears in documents[]; that duplication is deliberate and is not an additional verification.

Los resultados de solo documentos omiten personalDetailsDocument.

documents[] contains every unique document that supported the Session: the Personal Details source, generic Document Details source, and each exact required-document source. Every entry contains type, issuingCountry, receiptId, and details. When no document details were requested, details is {}. Internal field attribution is never exposed.

  • Este endpoint entrega el resultado privado aprobado una sola vez. Cada receiptId remite a la evidencia histórica de verificación de ese documento.
  • Completa la verificación → recibe el callback → obtén el resultado y los ID de los recibos.
  • For a multi-document result, retrieve each documents[].receiptId independently with GET /v1/document-receipts/{receipt_id}. There is no combined receipt endpoint or combined JWS.
  • Retrieving a Document Receipt is repeatable, but it does not recover or replay this private result payload.
  • El acceso al resultado privado termina en el primer plazo almacenado de la sesión o del token de resultado. En ese límite exacto o después, la respuesta es 410 result_token_expired; la lectura y verificación de recibos siguen siendo independientes.
  • One unique supporting document produces one Document Receipt; two unique supporting documents produce two.
  • When a saved verification is reused, the receipt preserves the original verified_at; reuse is not represented as a new document verification.

Test mode

Test mode preserves this exact structure and redacts only actual Personal Details and document-detail values with XXXTEST_USERXXX. It does not redact type, issuingCountry, receiptId, or structural keys.

Errores comunes
  • 401 missing_bearer_token, invalid_api_key, missing_result_token
  • 403 customer_inactive, api_key_environment_mismatch, invalid_result_token
  • 410 result_token_expired
  • 409 result_token_used
  • 404 result_not_available, session_not_found
  • 503 document_receipt_unavailable

GET /.well-known/jwks.json

Claves públicas para verificar JWT de callback y Document Receipts.

No requiere clave API. La caché dura 300 segundos. Verifica las firmas y los claims en tu backend; detén la verificación si falla la obtención de claves o la clave es desconocida.

Respuesta 200 correcta
{
  "keys": [
    {
      "kty": "RSA",
      "kid": "example-key-id",
      "alg": "RS256",
      "use": "sig",
      "n": "...",
      "e": "AQAB"
    }
  ]
}

DOCUMENT RECEIPTS · OPCIONAL

GET /v1/document-receipts/{receipt_id}

Retrieve an already-issued Document Receipt from your partner backend. Persistent retrieval is an optional extension to the four-step Sessions integration.

Authorization: Bearer <api_key>
Issuance and reuse
  • Los Document Receipts se preparan automáticamente al completarse la verificación. Usa los valores receiptId devueltos por GET /v1/sessions/{id}/result para obtenerlos.
  • The partner-facing identifier is the opaque dr_.... Internal receipt identifiers and data-model terminology are not part of the public contract.
  • Reuse of the same underlying verification for the same partner returns the same Document Receipt. Different partners receive different Document Receipts. A genuinely fresh verification creates a new receipt lineage.
Respuesta 200 correcta
{
  "receiptId": "dr_AAAAAAAAAAAAAAAAAAAAAAAA",
  "receiptVersion": 1,
  "issuedAt": "2026-09-11T12:00:00.000Z",
  "document": {
    "type": "idCard",
    "issuingCountry": "ESP"
  },
  "receipt": "eyJhbGciOiJSUzI1NiIsImtpZCI6InZocmNwdC1yczI1Ni0yMDI2MDkxMS0wMSIsInR5cCI6InZlcm...eyJyZWNlaXB0X3ZlcnNpb24iOjEsInZlcmlmaWNhdGlvbiI6ey4uLn19.signature-placeholder"
}

The abbreviated signature above is a display placeholder, not a cryptographically valid sample receipt. receipt contains the original compact signed JWS, not a URL. The response identifies the document by type and issuing country without identity PII.

Propiedad, recuperación y ciclo de vida
  • Use the owning partner account's Bearer API key. Knowing a dr_ identifier does not authorize access.
  • A missing receipt and another partner's receipt both return the same non-enumerating 404 document_receipt_not_found.
  • Repeated authorized retrieval returns the same stored JWS. It does not consume or re-sign the receipt and does not perform another document verification.
  • A multi-document result has multiple independent receipt IDs. Call this endpoint once per ID; Verihop does not provide a combined receipt or multi-document JWS.
  • Availability follows the approved receipt lifecycle and historical-key policy. It is not a promise of permanent storage.
verihop_v1 methodology and signature verification

The partner-facing methodology is verihop_v1, version 1. Verihop obtains document information from the supported document, runs its holder-verification flow, checks liveness, and matches the presented person against the document-holder evidence.

  • Successful completion is presented as verification outcome verified, holder verification passed, and liveness passed.
  • A successfully verified stored document can support later Sessions without a new face, selfie, or liveness step merely because it is reused.
  • The methodology does not claim separate issuer or document cryptographic authentication.
  • Historical evidence does not establish that a document is currently valid and does not bind or authenticate the complete Session result payload.
  • A receipt is not a global person/document identifier or cross-partner identity lineage.

Decodificar una JWS compacta no verifica la firma. Verifica en tu backend con el endpoint JWKS de Verihop configurado. Exige alg=RS256, typ=verihop-document-receipt+jwt, un kid conocido para recibos, el issuer configurado y la audience de tu configuración de confianza. No tomes una URL de claves, una audience esperada o una decisión de confianza del token sin verificar. Las claves de callback y Document Receipt tienen finalidades separadas.

Errores del endpoint
  • 400 invalid_document_receipt_id
  • 401 missing_bearer_token, 401 invalid_api_key
  • 403 customer_inactive, 403 api_key_environment_mismatch
  • 404 document_receipt_not_found
  • 409 document_receipt_revoked, 423 document_receipt_held, 410 document_receipt_erased
  • 503 document_receipt_verification_unavailable, 503 document_receipt_unavailable

Catálogo de campos

Request field tokens (fields)

legalName, dateOfBirth, over18, over21, passport, idCard, driverLicense, residencePermit, documentNumber, documentExpiry, documentCountry, documentNationality

Campos de resultado de la respuesta

result contiene los datos personales solicitados: legalName, dateOfBirth, over18 y over21. Los atributos documentales solicitados aparecen en documents[].details. Los requisitos de tipo como passport e idCard exigen esos documentos; no añaden un booleano a result ni todos sus atributos.

Preguntas frecuentes

¿Puede el flujo empezar desde una web desktop con un QR?

Sí. Tu backend crea una sesión mediante POST /v1/sessions y muestra la qr_url devuelta dentro de un QR en la página de escritorio. El usuario escanea ese QR con el teléfono y Verihop abre la mejor experiencia disponible.

¿El QR debe abrir primero una web o Verihop directamente?

La mejor experiencia es el inicio directo: codifica la qr_url devuelta. Es el mismo traspaso HTTPS universal que launch_url y admite rutas de app, experiencia ligera y fallback web.

¿El deep link es igual para iOS y Android?

Usa launch_url en Android y para el handoff web general. Una app partner de iOS que quiera mostrar la tarjeta nativa del App Clip debe abrir la app_clip_url devuelta. La forma del callback no cambia: Verihop añade session_id, en caso de éxito result_token y opcionalmente callback_jwt.

¿Cómo inicio el App Clip de Verihop directamente desde mi app iOS?

Crea la sesión en tu backend y envía la app_clip_url devuelta a tu app iOS. Abre esa URL con SwiftUI Link o UIApplication.open en iOS 17 o posterior. No analices launch_url, no copies su token ni fijes en código el bundle ID del App Clip de Verihop. Si la app completa de Verihop está instalada, iOS la abre conservando la misma sesión.

¿Qué deben registrar las apps Android partner para callbacks?

Si usas un callback personalizado como ridenow://verified, la app Android partner debe declarar un intent filter para ese scheme y host. Si usas un callback https:// para flujos iniciados desde desktop o web, trátalo como un endpoint de backend salvo que tu app Android sea dueña de ese dominio con App Links verificados.

¿Qué callback debo usar para flujos iniciados desde desktop o web?

Usa una URL de retorno https:// en tu backend. Verihop la abre en el teléfono con session_id y, en caso de éxito, result_token en la query. Es el retorno del usuario, no un webhook entre servidores. Tu backend valida la sesión almacenada y obtiene GET /v1/sessions/{id}/result. La página de escritorio puede consultar a tu backend si terminó.

¿POST /v1/sessions devuelve un JWT para el partner?

No. La creación devuelve campos de orquestación y URL opacas de lanzamiento, no un JWT ni datos privados de identidad. Abre la URL devuelta sin modificarla.

¿Qué contiene el callback?

Un retorno correcto incluye session_id y result_token, además de callback_jwt si está habilitado. Algunos flujos añaden metadatos de estado u origen. No son resultados personales ni una prueba de verificación. Valida la sesión, verifica cualquier JWT de callback recibido y obtén el resultado aprobado en tu backend.

¿Los partners deben verificar callback_jwt, y dónde?

Sí, en el backend del partner cuando esté presente. Verifica firma y claims con Verihop JWKS en GET /.well-known/jwks.json. Valida issuer, audience y expiry, y asegúrate de que los claims JWT coincidan con los valores del callback.

¿Mi frontend puede llamar directamente a GET /v1/sessions/{id}/result?

No. Mantén las API keys en servidor y obtén resultados solo desde tu backend. El frontend/web client solo debe manejar UI y pasar estado a la sesión de backend.

¿Cómo gestionamos expiración y retries?

Primero reconcilia un canje consumido, caducado o incierto. Nunca reintentes automáticamente result GET ni crees otra Session. Solo una nueva acción expresa inicia otro intento.

¿Qué pasa si Verihop no está instalado en el teléfono?

Abre la launch_url o qr_url devuelta; la página alojada guía al usuario hacia la app, el App Clip o la instalación admitida. En Android puede volver tras instalar y tocar Open Verihop mientras la sesión siga vigente. No crees una sesión nueva solo por necesitar la instalación. Tras caducar, el usuario inicia expresamente otro intento.

¿Cómo funciona idempotency y cómo se limita el abuso?

POST /v1/sessions soporta Idempotency-Key para llamadas create-session seguras ante retries: la misma key con la misma payload reproduce la respuesta original, mientras que la misma key con una payload distinta devuelve 409 idempotency_key_conflict. El abuso se mitiga además con autenticación por API key, política de callback allowlist, validación de campos permitidos, rate limits/cuota por cliente, TTL corto de sesión y result_token de un solo uso.

Ejemplo

Abrir demo de verificación de edad

Empieza en modo de prueba

Crea una sesión y revisa el traspaso completo.

Use a redacted cuenta de prueba, keep credentials on your backend, and move to production only after callback and field controls are approved.

Verificación de identidad centrada en la privacidad

Obtén los datos fiables que necesitas para decidir.

Solicita datos de identidad o elegibilidad verificados. Los clientes completan la comprobación en su teléfono y aprueban lo que se comparte.

Por ejemplo:

sin fotos del documento ni archivos de selfies.

Prueba la demo en directo
  • Recorrido móvil guiado
  • Resultados estructurados aprobados
  • Sin imágenes del documento en el resultado
Vista general del flujo de Verihop en un dispositivo Paso de Verihop para comprobar documento y perfil

De la comprobación a datos fiables

Solicita lo que necesitas. Recibe lo que se aprobó.

  1. SolicitarElige los datos que necesitas para decidir.
  2. VerificarVerihop se encarga de las comprobaciones compatibles de documento y titular.
  3. RecibirTu backend recibe el resultado aprobado.
Qué muestra el vídeo

Un servicio solicita datos concretos. El cliente se verifica en su teléfono, revisa la solicitud y aprueba compartirlos. El servicio recibe el resultado aprobado.

Por qué importa

Menos fricción. Menos datos de identidad que proteger.

La verificación debe ayudar a los clientes a continuar, sin convertir una decisión en otro archivo de documentos.

Más de la mitad

de las personas encuestadas en los Países Bajos dijo que nunca compartiría online una copia de su pasaporte, documento de identidad o permiso de conducir.

CBS, 2025
Ver el estudio y la metodología

En el mismo estudio de FullCircl, el alta duró una media de 35 minutos, 2,8 veces más de lo que querían los clientes. FullCircl, State of Identity Verification 2025

La autoridad neerlandesa de protección de datos registró 39.407 notificaciones de brechas de datos personales en 2025. Autoriteit Persoonsgegevens, 2026

Lo que ganas

Verificaciones sólidas. Una experiencia más fluida.

Elige una ventaja para ver cómo funciona.

Comparar al titularComprobaciones de documento y titular

La lectura de MRZ y chip NFC apoya la comparación del titular.

Ayuda a los clientes a continuarVerificación guiada en un teléfono compatible

La duración puede variar según el dispositivo, el documento y la conexión.

Decide al momentoResultado tras una comprobación satisfactoria

Una verificación satisfactoria devuelve el resultado sin una cola habitual de revisión manual.

Gestiona menos datos sensiblesCampos estructurados aprobados

Recibe campos aprobados, no la imagen del pasaporte ni el selfie del cliente.

No preguntes dos vecesReutiliza cuando sea válida y aceptada

Los clientes pueden aprobar una verificación guardada en su dispositivo cuando siga siendo válida y tu política la acepte.

Comparar con la subida de documentos
Flujo típico de subida Con Verihop
Verifica desde una imagenEl cliente envía fotos de un documento de identidad para su verificación. Leer el chip + comparar al titularEl piloto controlado lee los datos del documento del chip NFC y compara al titular con su retrato. No autentica al gobierno emisor.
Espera el resultadoLas comprobaciones automatizadas pueden requerir controles adicionales o revisión manual antes de que haya una decisión. Obtén un resultado al instanteUna verificación correcta produce el resultado de inmediato, sin una cola habitual de revisión manual.
Recopila el documentoLos archivos de pasaporte, documento de identidad o selfie pueden convertirse en datos sensibles que tu empresa debe recibir, almacenar y proteger. Recibe solo lo que necesitasTu sistema recibe la información verificada aprobada, no la imagen del pasaporte ni el selfie del cliente.
Vuelve a verificarLos clientes que regresan pueden tener que repetir la comprobación del documento y del titular para otra solicitud. Reutiliza cuando se acepteLos clientes pueden aprobar una verificación guardada en su dispositivo cuando siga siendo válida y tu política la acepte.
Datos de un documento de identidad que fluyen a través de un teléfono hacia campos aprobados

Empieza por la decisión

¿Qué necesitas saber realmente?

Edad y elegibilidad

¿Esta persona es mayor de 18 años?

Solicita un resultado de edad verificado.

Alta de cuentas

¿Quién se está registrando?

Comprueba los datos que necesitas para decidir sobre el alta.

Alquileres y acceso

¿Es la persona correcta?

Verifica la identidad antes de conceder el acceso.

Recuperación de cuentas

¿Es el titular de la cuenta?

Solicita una nueva comprobación para acciones sensibles.

Verihop verifica los datos aprobados. Tu empresa toma la decisión.

Customer Portal

Prueba el flujo completo antes de lanzar.

Prueba

Ejecuta sesiones con datos ocultos e inspecciona el flujo.

Pasa a producción

Envía tu configuración de producción y el alcance de campos a revisión.

Opera

Supervisa sesiones, callbacks, uso y acceso del equipo.

Empieza con un caso de uso

¿Qué datos fiables necesita tu producto?

Cuéntanos tu recorrido de cliente y la decisión que necesitas tomar. Definiremos la solicitud mínima útil y cómo probarla.