Saltar al contenido principal

Widget

El widget de Veridia es un único custom element de HTML, <veridia-widget>. Ejecuta el flujo de captura en el navegador: permiso de cámara, frente del documento (y dorso), selfie, reto opcional de prueba de vida (liveness) activa, controles de calidad, subida y envío.

Es la forma más rápida de integrar Veridia. No escribís código de captura, no tocás el endpoint de subida y no manejás la codificación de imágenes.

<script src="https://widget.xxuxe.online/face-api.js"></script>
<script type="module" src="https://widget.xxuxe.online/veridia-widget.min.js"></script>

<veridia-widget
publishable-key="qv_pubt_YOUR_KEY"
country="PY"
document-type="dni"
locale="es">
</veridia-widget>

Qué hace el widget​

  • Solicita la cámara y guía al usuario por cada paso de captura.
  • Ejecuta controles de calidad del lado del cliente (nitidez, brillo, reflejos, presencia de rostro) y pide repetir la toma cuando un cuadro es inutilizable.
  • Llama a POST /v1/verify/init, sube cada imagen y llama a POST /v1/verify/submit.
  • Emite exactamente dos eventos: veridia:complete y veridia:error.

Qué no hace el widget​

Nunca te da el veredicto. Esto es lo más importante que tenés que entender antes de integrar.

veridia:complete se dispara cuando el envío fue aceptado, no cuando la persona aprobó. Su campo status (queued / processing / completed) describe el pipeline, no el resultado. El resultado — approved, review, rejected — vive en otro eje y solo se puede leer con una clave secreta, desde tu servidor:

  • Preferido: recibir el webhook.
  • O: que tu backend llame a GET /v1/verify/{id} con una clave qv_sec_* / qv_sect_*.

El widget lleva una clave publicable (qv_pub_* / qv_pubt_*). Esa clave puede iniciar y enviar verificaciones. No puede leer veredictos, por diseño: es visible para cualquiera que abra el código fuente de tu página. Si pudiera leer veredictos, cualquiera podría leer los tuyos.

Ramificar sobre status para activar una cuenta admite a todos los solicitantes rechazados. El widget no puede protegerte de eso; solo leer verdict del lado del servidor puede.

La clave publicable no es un control de acceso​

Las claves publicables tienen una lista allowedOrigins. Hoy toda clave se crea con esa lista vacía, y una lista vacía permite todos los orígenes. La validación además solo aplica a navegadores: un cliente del lado del servidor no envía cabecera Origin y siempre pasa.

Tratá allowedOrigins como una forma de delimitar dónde se espera que corra tu widget, no como un perímetro. Ver Autenticación.

Subida desde la galería​

El widget permite que el usuario elija la foto del documento desde su galería en lugar de tomarla con la cámara. Es opcional, lo elige el usuario, y aplica únicamente al documento: la selfie y el reto de prueba de vida nunca pueden provenir de un archivo. Detalles en Personalización.

A dónde ir después​

  • Instalación — HTML plano, React, Next.js, Vue, Angular, WebView, CSP.
  • Configuración — cada atributo, su valor por defecto real, y el setter programático config.
  • Eventos — los dos eventos, la forma exacta de su detail, y la tabla completa de códigos de error.
  • Personalización — color de acento, idioma, tamaño, subclasear el elemento.
  • Ejemplos — integraciones completas y ejecutables de punta a punta.