Ir al contenido principal

Aprobaciones con intervención humana para Procedimientos Fin

Utiliza este artículo para añadir un Loop en el paso de teammate / agent a un Procedimiento Fin, pausando Fin para esperar una decisión humana antes de continuar. Conecta un webhook, configura campos de respuesta y tiempo de espera, luego prueba de ext...

El paso Loop en teammate / agent permite que Fin se pause a mitad del procedimiento y espere una decisión humana antes de continuar. Fin envía una notificación a un sistema externo de tu elección: alguien revisa la solicitud, se envía una decisión y Fin retoma donde se quedó.

El editor de Procedimientos Fin mostrando un procedimiento de varios pasos con un Loop en teammate / agent configurado como paso 7

Los datos de informes para los pasos Human-in-the-Loop solo aplican a correos electrónicos y no a chats.


Cuándo usar el webhook HITL independiente

El paso Loop en teammate / agent tiene dos usos principales:

  • Supervisión humana: para acciones de alto riesgo o alto valor donde un humano debe revisar y aprobar antes de que Fin continúe. Ejemplos: aprobaciones de reembolsos o excepciones, solicitudes sensibles a cumplimiento (p. ej., cierres de cuenta, eliminación de datos), escalaciones de clientes de alto valor, gestos de buena voluntad o cualquier situación donde la política requiera aprobación humana.

  • Pruebas de procedimiento: para reemplazar un conector de datos o acción de backend que aún no está construido. Un humano puede realizar el paso manualmente, permitiéndote probar el flujo completo del procedimiento antes de que la integración esté lista.


Lo que necesitarás

Antes de comenzar, asegúrate de tener:

  • Un Procedimiento Fin con al menos un paso Loop en teammate / agent

  • Una URL (endpoint webhook) donde tu sistema pueda recibir y responder notificaciones de Fin

  • El permiso Manage apps and integrations en Configuración

Nota: No necesitas herramientas de desarrollo de terceros ni credenciales de aplicaciones para configurar esto; todo se configura directamente en el editor de procedimientos.


Cómo funciona

Cuando la conversación de un cliente llega a un paso Loop en teammate / agent en un Procedimiento Fin:

1. Fin pausa la conversación

  • Antes de pausar, Fin puede enviar un mensaje al cliente para informarle que su solicitud está siendo revisada.

  • Fin envía una notificación a tu sistema externo.

  • Fin espera y no continúa hasta que se reciba una respuesta o el paso expire.

2. Tu sistema es notificado

  • Tu sistema recibe una notificación con los detalles de la conversación y la información necesaria para tomar una decisión.

  • Un revisor humano ve la solicitud o tu sistema aplica su propia lógica para responder automáticamente.

Cuando Fin llega al paso Loop en teammate / agent, envía una notificación a tu sistema externo con los detalles de la conversación y la acción necesaria. En este ejemplo, un revisor recibe una solicitud de restablecimiento 2FA e instrucciones para verificar la identidad del cliente antes de responder.

Una conversación en Fin Messenger mostrando a Fin confirmando la solicitud de restablecimiento 2FA de un cliente, luego dejando un comentario interno con instrucciones para que el revisor verifique la identidad del cliente y desactive su inscripción 2FA existente antes de responder.

3. La decisión es enviada de vuelta

  • Tu sistema envía la decisión de vuelta a Fin.

4. Fin continúa el procedimiento

  • Fin retoma desde donde se pausó.

  • La respuesta de tu sistema está disponible en pasos posteriores mediante un paso Read attribute.

  • Usa una condición IF/ELSE para ramificar según el resultado — por ejemplo: aprobado, continuar; rechazado, enviar un mensaje al cliente.

Importante: Un procedimiento con un paso Loop en teammate / agent no puede publicarse hasta que la conexión webhook esté configurada. Se te pedirá completar la configuración antes de publicar.


Paso 1: Añadir y configurar el paso

  1. Ve a Train > Procedure y abre el procedimiento al que quieres añadir el paso.

  2. En el bloque de instrucciones, escribe @ y selecciona Loop en teammate / agent.

    El menú de menciones @ en el editor de procedimientos Fin mostrando Loop en teammate / agent resaltado bajo Routing y ending.

  3. El paso aparece en el editor de procedimientos. Verás un conteo Collect mostrando cuántos campos de respuesta están definidos, y un Wait time mostrando cuánto tiempo Fin esperará — ambos configurados desde el panel de ajustes del paso.

    El bloque del paso Loop en teammate / agent en el editor de procedimientos, mostrando un indicador Collect con 0 campos de respuesta definidos y un Wait time de 10 minutos.

  4. Haz clic en el icono de engranaje para abrir los ajustes del paso. El panel de ajustes tiene tres secciones: Ask via webhook (para la conexión webhook), Response to collect (los campos que tu revisor debe completar) y Wait time (cuánto tiempo Fin espera antes de expirar).

    El panel de ajustes del paso mostrando tres secciones: Ask via webhook con un botón Configurar conexión webhook y una advertencia para configurar antes de publicar, Response to collect con un botón + Añadir, y Wait time configurado a 10 minutos con un mensaje editable para el cliente en caso de tiempo agotado.
  5. En Ask via webhook, haz clic en Configurar. Ingresa tu Delivery URL — la dirección web donde Intercom envía la notificación cuando se alcanza este paso — luego haz clic en Guardar.

    El modal Configurar conexión webhook mostrando un campo de entrada Delivery URL, una plantilla de Callback URL de solo lectura y el tema suscrito configurado a procedure.hitl_notification.created.

    El modal Loop en teammate / agent webhook revela tus credenciales de desarrollador una vez conectado.

  6. En Response to collect, haz clic en + Añadir para definir los campos que tu revisor debe completar. Asigna a cada campo un formato y un nombre — por ejemplo, un campo de texto 'Razón de rechazo' o un booleano 'Aprobado'.

    El modal Añadir campo de respuesta con un desplegable de Formato configurado en Texto, un campo Nombre con texto de marcador y un campo Descripción opcional.

    Cada campo de respuesta tiene un formato — desplegable, texto o booleano (verdadero/falso) — un nombre y una descripción opcional. Cuando un teammate es incluido en el loop, completa estos campos directamente en la conversación.

    La sección Response to collect en el panel de ajustes del paso mostrando un campo añadido llamado Aprobado, configurado como un atributo booleano con valores Verdadero o Falso.

  7. En Wait time, establece cuánto tiempo Fin debe esperar una respuesta antes de expirar. El mínimo es 1 minuto — no hay máximo. Puedes elegir minutos u horas. Edita el mensaje abajo para controlar lo que Fin dice al cliente si se excede el tiempo de espera.

    La sección Wait time mostrando un desplegable de duración con Minuto(s) seleccionado y Horas como alternativa, con un mensaje editable de tiempo agotado abajo.

  8. Guarda tu Procedimiento. Continúa al Paso 2 para obtener tus credenciales de desarrollador — el procedimiento no puede publicarse hasta que la conexión webhook esté configurada.

Nota: Para el paso Loop en teammate / agent con entrega webhook, este es el único canal de entrega — no hay opción para enrutar a un inbox o equipo.


Paso 2: Obtén tus credenciales de desarrollador

Después de guardar la Delivery URL en el modal Loop en teammate / agent webhook, el modal muestra Webhook conectado y revela tres credenciales que tu desarrollador necesita. Si muestra No configurado, verifica que tu Delivery URL esté guardada y que ningún token de acceso emitido previamente haya expirado o sido revocado — un token revocado también impide que el Procedimiento Fin se publique.

  • Access token: autentica las respuestas que tu sistema envía de vuelta a Fin.

  • Signing secret: confirma que las notificaciones entrantes son genuinamente de Intercom.

  • Ejemplo de callback URL: se genera una URL única para cada conversación. Tu sistema envía la decisión del revisor a esta URL para reanudar el procedimiento.

Nota: Puedes ver estas credenciales en cualquier momento haciendo clic en Configurar en la sección Ask via webhook del panel de ajustes del paso. Solo los teammates con el permiso Manage apps and integrations pueden abrir este diálogo; los que no lo tienen verán un aviso para solicitar permiso.


Paso 3: Maneja la carga útil del webhook

Una vez que el modal muestra Webhook conectado, comparte el Access token, Signing secret y Ejemplo de callback URL del modal Loop en teammate / agent webhook con el desarrollador que construye la integración. Él creará el endpoint que:

  • Recibe la notificación de Fin cuando se alcanza el paso

  • Presenta la solicitud a un revisor o aplica lógica automatizada

  • Envía la decisión de vuelta para que Fin pueda continuar

Carga útil del webhook

Cuando el procedimiento llega al paso Loop en teammate / agent, Intercom envía una solicitud POST a tu Delivery URL. La carga útil incluye:

  • El ID de la conversación

  • La pregunta que Fin está haciendo

  • Los atributos que tu sistema necesita completar

  • Una URL de callback para enviar tu respuesta

  • Mensajes recientes de la conversación para contexto

Para la carga útil completa y especificaciones de campos, formato de solicitud de callback, detalles de autenticación, tipos de datos soportados y códigos de error, consulta la referencia API de procedimientos.


Cómo probar el webhook HITL independiente

Usa Simulations — ejecuciones de prueba automatizadas en el editor de procedimientos — para probar el paso Loop en teammate / agent sin activar una notificación webhook real a tu sistema.

Abre una simulación para el procedimiento y busca la sección Teammate input available to Fin. Añade los valores que esperarías de un revisor — por ejemplo, Aprobado: true — luego ejecuta la simulación. Fin usa esos valores como si tu sistema hubiera respondido.

Nota: Si no añades valores antes de ejecutar, Fin trata el paso como expirado.


Limitaciones

  • Hay una URL de entrega por espacio de trabajo. Cambiarla actualiza la conexión webhook para cada Procedimiento Fin que use el paso Loop en teammate / agent.

  • Si el tiempo de espera expira y no se recibe respuesta, Fin envía al cliente el mensaje de tiempo agotado que configuraste — el procedimiento termina y la conversación se escala.

  • El mensaje de tiempo agotado predeterminado se refiere a ‘el equipo’ — actualízalo antes de publicar para que coincida con tu configuración real.


Webhook HITL independiente vs enfoque API Developer Hub

Ambos métodos pausan un procedimiento en un paso HITL y notifican a tu sistema vía webhook, pero difieren en cómo se configuran y para quién son:

  • Webhook HITL independiente: Configurado directamente en el editor de procedimientos — no requiere app Developer Hub ni permisos OAuth. Una URL de entrega por espacio de trabajo. Solo disponible para espacios de trabajo Fin Standalone. El canal webhook se habilita automáticamente en todos los pasos HITL en procedimientos Standalone.

  • Enfoque API Developer Hub: Requiere una app Developer Hub, versión Preview API y permisos OAuth read_conversations y write_conversations. Se habilita por paso y funciona junto con los canales Intercom Inbox y Slack. Disponible para espacios de trabajo no Standalone. Consulta Aprobaciones Human-in-the-loop vía API.

Desde la perspectiva del cliente, ambos enfoques son invisibles: la conversación continúa sin interrupciones una vez que tu sistema responde.


Preguntas frecuentes

¿Puedo usar una URL webhook diferente para distintos procedimientos?

No puedes usar una URL webhook diferente para distintos procedimientos: hay una URL de entrega por espacio de trabajo. Cada Procedimiento Fin que use el paso Loop en teammate / agent envía notificaciones al mismo endpoint. Si necesitas enrutar solicitudes de forma diferente por procedimiento, tu sistema externo puede manejarlo según los detalles incluidos en la notificación.

¿Qué pasa con el cliente mientras espera una respuesta?

Mientras espera una respuesta, Fin pausa la conversación silenciosamente a menos que hayas añadido un mensaje de espera. Puedes configurar esto en la sección Wait time de los ajustes del paso — por ejemplo, “Estamos revisando tu solicitud y nos pondremos en contacto pronto.” Si no se recibe respuesta a tiempo, Fin envía el mensaje de tiempo agotado que configuraste, el procedimiento termina y la conversación se escala.

¿Puedo añadir más de un paso Loop en teammate / agent al mismo procedimiento?

Sí, puedes añadir más de un paso Loop en teammate / agent al mismo procedimiento. Se soportan múltiples pasos para recopilar entrada humana en diferentes puntos del flujo. Todos los pasos comparten la misma conexión webhook del espacio de trabajo.

¿Puedo cambiar la Delivery URL después de configurarla?

Sí, puedes cambiar la Delivery URL después de configurarla. Haz clic en Configurar en la sección Ask via webhook del panel de ajustes del paso e ingresa una nueva URL. Ten en cuenta que cambiarla actualiza la conexión webhook para cada Procedimiento Fin que use este paso, no solo para el que estás editando.

¿Hay alguna forma de rastrear qué decisiones se tomaron?

No hay forma de rastrear decisiones tomadas a través de este paso en Intercom; no existen informes ni análisis para decisiones individuales. Tu sistema externo es responsable de registrar y rastrear las respuestas.

¿Ha quedado contestada tu pregunta?