Skip to main content

Flujo: Widget de onboarding embebido

Cuándo usar el widget vs API directa

El widget es ideal cuando:
  • Tienes una app propia y quieres onboarding embebido
  • Tus prospectos no son técnicos — solo necesitan subir archivos
  • Quieres una UX guiada sin construirla tú

Diferencias clave

Loop completo (frontend + backend)

Instalar el widget en tu HTML

Paso 1: Cargar el script desde el CDN

Va dentro de <head> o antes del cierre de <body>. defer asegura que el script no bloquee el render del HTML.

Paso 2: Insertar el componente

Atributos

Comportamiento de redirecturl

La redirección ocurre cuando el usuario termina el flujo del widget (envía o cancela). El estado real de la verificación lo confirmas con webhooks, no con la URL de redirección. Patrón recomendado:
  1. La página de redirecturl muestra un mensaje genérico (“Estamos procesando tu información…”)
  2. Tu frontend hace polling a tu propio backend cada N segundos
  3. Tu backend devuelve el estado real (que actualizaste con los webhooks)
  4. Cuando el backend confirma finished, muestras el siguiente paso al usuario
Para el detalle exacto de cómo Trébol llama a redirecturl (query params, body, eventos), consulta la documentación oficial: https://docs.gotrebol.com/guia-devs/crear-verificaciones/via-widget/instalar

Ejemplo HTML completo

Crear el account-flow (vía API, antes de embeber)

Endpoint: POST /account-flows Un flow tiene dos partes:
  • record_validation_schema — qué documentos pedir y con qué reglas. Cada requerimiento es un slot: doc_1, doc_2, etc.
  • flow_items — items adicionales no-documento: UBOs, formularios personalizados, consultas SAT.

Ejemplo mínimo

⚠️ Importante sobre country en account-flows:
  • En POST /account-flows (schema AccountFlowCreate) el campo country no está declarado en la spec — se omite del body de creación.
  • En PUT y GET de account-flows sí aparece, con enum ["mx", "co"].
  • Si necesitas crear un flow para EEUU, consulta con Trébol antes de inventar un valor de país.

Items del flow

Los más usados: Para la lista completa de items soportados (incluyendo aml_validation, signatory_validation, items por país), consulta reference/openapi.yaml o https://docs.gotrebol.com/guia-devs/referencia/tipos-item.

Personalización (branding)

Configura colores, logo y políticas desde app.gotrebol.com → Personalización. No requiere código. En la misma pantalla se configura el dominio personalizado de onboarding: se agrega el dominio, se crea el registro DNS que muestra la interfaz (CNAME a cname.vercel-dns.com para subdominios; A 76.76.21.21 para dominio raíz) y se verifica. Con el dominio verificado, las ligas de inicio de onboarding (correos de invitación y aplicativo web) quedan https://<dominio>/<id_slug> — el id_slug del account-flow; también son construibles a mano. El onboarding_url que devuelve el API conserva su formato de liga directa a la verificación (con su token de acceso); solo cambia el host, incluso al consultar verificaciones creadas antes de verificar el dominio. Sin dominio configurado, o con el dominio pendiente, todo usa el dominio por defecto de Trébol. El widget embebido (<trebol-widget>) sigue cargando desde el dominio por defecto.

Estados del expediente

A medida que el usuario carga documentos, el expediente pasa por estados. Para monitorear, usa webhooks (verification.v2.created, verification_item.v2.completed, verification.v2.finished) o consulta:

Errores comunes al instalar el widget