Use a etapa Loop in teammate / agent para pausar um Fin Procedure em um ponto crítico e solicitar a opinião ou aprovação de um teammate antes que Fin continue. Isso é útil para decisões de alto risco, solicitações sensíveis a conformidade ou para testar fluxos de procedimento antes que uma integração esteja totalmente construída. Enquanto Fin mantém o controle da conversa, um teammate revisa o contexto, preenche uma decisão ou resposta, e Fin retoma de onde parou. Este artigo cobre quando usar human-in-the-loop (HITL), como configurá-lo e testá-lo, e como o assignment e SLAs se comportam enquanto a etapa está ativa.
Nota: Human-in-the-loop é uma etapa que você adiciona dentro de um Fin Procedure existente. Se você é novo em procedures, leia Fin Procedures explained e Quick start: Create a Fin Procedure antes de continuar.
Quando usar human-in-the-loop
A etapa Loop in teammate / agent em Fin Procedures tem dois usos principais:
Supervisão humana — para ações de alto risco ou alto valor onde um teammate deve revisar e aprovar antes que Fin prossiga. Exemplos: aprovações de reembolso ou exceção, solicitações sensíveis a conformidade (ex.: encerramento de contas, exclusão de dados), escalonamentos de clientes de alto valor, gestos de boa vontade ou qualquer situação onde a política exige aprovação humana.
Teste de procedimento — para substituir um conector de dados que ainda não foi construído. Se um conector de reembolso ou cancelamento ainda está em desenvolvimento, um teammate pode executar essa etapa manualmente, permitindo testar o fluxo completo do procedimento antes que a integração esteja pronta.
Como human-in-the-loop funciona
1. Fin alcança uma etapa Loop in teammate / agent
Quando Fin atinge uma etapa Loop in teammate / agent em um procedimento:
Antes da execução da etapa, você pode configurar uma mensagem que Fin envia ao cliente.
Uma nota Loop in teammate / agent aparece na inbox, mostrando ao teammate tudo que ele precisa revisar e agir.
A conversa permanece na inbox do Fin — ainda não foi passada para um humano.
Fin espera e não continua o procedimento até que um teammate aja ou o tempo limite seja atingido.
2. Teammate revisa e responde
Da inbox ou Slack, o teammate vê o cartão Fin requires your decision e pode escolher entre 2 opções:
Opção 1: Enviar uma resposta (Fin continua): O teammate preenche os campos solicitados (por exemplo, uma decisão ou motivo) e envia.
A resposta deles é registrada na conversa.
Fin retoma o procedimento. As respostas do teammate podem ser usadas em etapas posteriores e na mensagem final que Fin envia ao cliente.
Opção 2: Assumir a conversa (Fin para): O teammate pode assumir se necessário — a conversa é atribuída a ele e Fin para de responder.
Configurando human-in-the-loop
Digite @ no editor de procedimento e selecione Loop in teammate / agent no menu.
Escreva a pergunta ou instrução que Fin mostrará ao teammate no cartão Loop in teammate / agent. Escreva como se estivesse orientando o teammate — diga o que você precisa que ele decida ou faça.
Por exemplo: "Posso mudar o plano do cliente para anual pro?" Se uma etapa Call data connector anterior no procedimento buscou dados do cliente (como plano atual, data de cobrança ou histórico da conta), esses dados são exibidos abaixo da sua pergunta no cartão, dando ao teammate o contexto necessário para decidir.
Configure as informações que o teammate deve fornecer usando os campos Response to Collect. Cada campo tem um tipo de dado: use True/False para decisões de aprovação (ex.: Aprovado: Sim/Não) e Text para respostas abertas (ex.: Motivo, Notas).
Use a resposta em uma etapa posterior. Após a etapa Loop in teammate / agent, adicione uma etapa Read attribute para acessar a resposta do teammate. Você pode então usar uma condição IF/ELSE para ramificar o procedimento com base na resposta — por exemplo: se Aprovado for True, prossiga com a ação; se False, envie uma mensagem ao cliente explicando que a solicitação foi recusada. Sem a etapa Read attribute, Fin não pode referenciar a resposta do teammate em etapas subsequentes.
Atribua um revisor. Escolha um teammate que deve revisar esta etapa. Se deixar em branco, Fin usa o Default assignee configurado nas suas configurações de handover do Fin. Use Mark as priority para sinalizar a conversa na inbox, para que sua equipe possa priorizá-la.
Defina o Tempo de Espera — quanto tempo Fin deve esperar pela resposta do teammate antes de escalar. Configure:
Duração: Defina o tempo limite em minutos ou horas.
Proprietário da escalada: Escolha quem será o responsável pela conversa se o tempo limite expirar.
Mensagem de escalada: Escreva a mensagem que Fin envia ao cliente se nenhum teammate responder a tempo — por exemplo: "Ainda não recebi resposta do teammate, então estou passando para a equipe."
Pausar fora do horário (opcional): Ative para pausar o temporizador quando sua equipe estiver fora do horário de expediente. O temporizador reinicia no início do próximo período de expediente, usando o horário da equipe que você selecionou — ou o padrão do workspace se você não selecionou nenhum ou selecionou um único teammate.
Importante: Você deve incluir pelo menos um Campo para Coletar para salvar uma etapa Loop in teammate / agent. Também são necessários um tempo limite e uma mensagem de escalada antes que o procedimento possa entrar em produção.
Como usar human-in-the-loop via Slack
Na aba More channels das configurações da etapa Loop in teammate / agent, você pode conectar um canal Slack para que os teammates sejam notificados lá quando essa etapa for alcançada.
Selecione a aba More channels no painel de configurações da etapa.
Em Slack, selecione o canal que deseja notificar no dropdown. Para ajuda na configuração do seu workspace Slack e adicionar @Intercom aos canais, veja Configurar notificações do Slack. Ao configurar o canal nas Configurações, defina o Channel Purpose para Post Slack notifications only, isso garante que as notificações sejam postadas no Slack sem disparar conversas separadas no Intercom.
A notificação do Slack mostra o nome do procedimento, detalhes do cliente, mensagens recentes da conversa e a pergunta Loop in teammate / agent, incluindo quaisquer dados puxados por etapas anteriores de conector de dados. Os teammates podem clicar em Respond para enviar a resposta diretamente do Slack, ou View in Inbox para abrir a conversa no Intercom.
Uma vez que um teammate age, a notificação é atualizada automaticamente:
✅ Resolvido: a resposta enviada pelo teammate é exibida (por exemplo, approve: true), e Fin continua o procedimento.
⏳ Expirado: se o tempo limite passar sem resposta, a notificação mostra “Nenhuma resposta recebida. A conversa foi escalada.”
Se vários teammates virem a notificação — tanto no Slack quanto no Inbox — a primeira resposta enviada vence. Todas as outras notificações abertas são automaticamente atualizadas para 'Resolvido'.
Como usar dados externos no Loop in teammate nas etapas do teammate
Você pode combinar etapas Loop in teammate / agent com dados dos seus próprios sistemas. Por exemplo:
Uma etapa anterior no procedimento pode puxar o plano, gasto ou pontuação de risco do cliente usando um conector de dados.
Essas informações podem ser exibidas diretamente no cartão Loop in teammate / agent para que os teammates possam tomar decisões mais rápidas e melhor informadas.
Os mesmos dados também podem aparecer na mensagem de escalonamento para o cliente se ocorrer um tempo limite.
Como funcionam os tempos limite e o escalonamento
Quando você define um tempo limite em uma etapa Loop in teammate / agent:
Fin aguardará a resposta de um teammate até que o tempo limite expire.
Se nenhum teammate responder antes do tempo limite, Fin envia a mensagem de escalonamento, remove-se da conversa e a atribui conforme suas configurações de escalonamento.
Você pode pausar opcionalmente o temporizador quando sua equipe estiver fora do horário de expediente. Quando pausado, o temporizador reinicia no início do próximo período de expediente — usando o horário da equipe que você selecionou, ou o padrão do workspace se você não selecionou nenhum ou selecionou um único teammate.
Nota: Respostas do cliente durante a espera não estendem o tempo limite — Fin não responderá até que o teammate aja.
Como testar human-in-the-loop
Clique em Testar no editor de procedimentos para abrir as opções de teste. Você pode testar a etapa Loop in teammate / agent usando uma pré-visualização interativa ou executando uma simulação.
Pré-visualização
Clique em Testar no editor de procedimentos e insira uma frase de gatilho (por exemplo, "Quero mudar meu ciclo de cobrança de mensal para anual") para iniciar a pré-visualização.
Visão do cliente: Fin envia sua mensagem pré-configurada (por exemplo, "Preciso verificar com um teammate antes de alterar seu plano.") e pausa na etapa Loop in teammate / agent.
Revisão do teammate: Na janela de pré-visualização, clique em Revisar ou no link “Review as teammate from inbox”. Isso abre o cartão exato Loop in teammate / agent que sua equipe verá no Inbox.
Complete a ação: Preencha os Campos para Coletar (por exemplo, um menu suspenso Aprovar/Negar e um campo de texto para Motivo) e clique em Enviar.
Verifique o resultado: Confirme que Fin retoma o procedimento e envia a mensagem de acompanhamento correta com base na sua decisão (por exemplo, "Ótimas notícias! Seu plano foi alterado com sucesso para cobrança anual. Agora você está no plano Pro Yearly por $470/ano, economizando $118 anualmente."). Se o resultado for inesperado, verifique suas condições IF/ELSE e confirme que a etapa de atributo Read está referenciando corretamente os campos de resposta Loop in teammate / agent.
Use a configuração Pré-visualizar como usuário ou lead para testar como o procedimento se comporta para diferentes segmentos de clientes.
Simulações
Quando um procedimento inclui etapas Loop in teammate / agent, o formulário de simulação mostra uma seção Entrada do teammate disponível para Fin. Você precisa editar a simulação e adicionar os valores antes de executar a simulação, por exemplo, "Approved: true".
Execute a simulação e, quando ela atingir uma etapa Loop in teammate / agent:
Uma nota é criada com a pergunta Loop in teammate / agent, a mesma nota que os teammates veem em uma conversa real.
Todos os valores obrigatórios preenchidos: uma nota "Resposta enviada para Fin" é criada e o procedimento continua como se um teammate tivesse respondido.
Qualquer valor obrigatório ausente: a simulação trata isso como um tempo limite: a mensagem de escalonamento é enviada e a conversa é escalada, da mesma forma que se um teammate real não tivesse respondido a tempo.
Como o comportamento de atribuição e SLAs funciona durante human-in-the-loop
Como o comportamento de atribuição, SLAs (Acordos de Nível de Serviço) e inatividade do teammate funciona durante uma etapa Loop in teammate / agent depende se a conversa começou com Fin ou um teammate humano.
Como as atribuições funcionam para human-in-the-loop
Quando Fin é o dono da conversa (bot inbox ativado)
Fin atribui a conversa para a equipe ou teammate revisor configurado na etapa Loop in teammate / agent.
As regras de atribuição da equipe revisora se aplicam normalmente — round-robin, balanceamento de carga ou manual.
A conversa ainda é tratada como gerenciada por bot, mesmo que esteja temporariamente com um humano. Isso afeta o adiamento do SLA e o comportamento de inatividade do teammate (veja abaixo).
Quando o teammate envia o formulário Loop in teammate / agent, a conversa retorna para o inbox do bot Fin e o procedimento é retomado.
Quando um teammate clica em 'Assumir controle' durante Loop in teammate / agent
A conversa é atribuída ao teammate que clicou em Assumir controle.
O procedimento para — Fin não retoma.
Quando um humano já é o dono da conversa (sem bot inbox)
Fin registra o dono atual antes de atribuir ao revisor.
Quando o teammate envia o formulário Loop in teammate / agent, a conversa retorna para o responsável original — não para Fin.
Comportamento do SLA durante human-in-the-loop
O comportamento do SLA depende de duas configurações do workspace: se o bot inbox está ativado e se Adiar SLAs para bot inbox está ligado.
Bot inbox ativado, SLAs adiados
Esta é a configuração recomendada se você quiser que Fin funcione sem afetar seus SLAs humanos.
Os SLAs permanecem adiados durante Loop in teammate / agent. Atribuir temporariamente a conversa a um colega não inicia os temporizadores de SLA — ainda é tratado como gerenciado pelo bot.
Os SLAs começam apenas na saída permanente. Os temporizadores iniciam quando a conversa sai permanentemente do bot inbox — por exemplo, quando Fin escala, um colega clica em Assumir, ou um passo de Loop in teammate / agent expira.
Reatribuições manuais durante Loop in teammate / agent mantêm os SLAs adiados. Se os colegas reatribuírem a conversa para outra pessoa enquanto Loop in teammate / agent estiver ativo, os SLAs permanecem adiados.
A escalada por tempo limite inicia o relógio do SLA. Um passo de Loop in teammate / agent que expirou é uma saída permanente do bot inbox — os SLAs adiados começam nesse ponto.
Bot inbox ativado, SLAs não adiados ou conversas já atribuídas a um colega humano
Em todos esses cenários, não há adiamento em vigor — os temporizadores de SLA funcionam a partir do momento em que são aplicados.
Os temporizadores de SLA funcionam a partir do momento em que o SLA é aplicado, como em qualquer outra conversa.
As atribuições de Loop in teammate / agent não alteram o comportamento do SLA — são tratadas como atribuições normais para fins de SLA.
Dica: Para a melhor experiência com procedimentos e Loop in teammate / agent, recomendamos ativar o bot inbox e ligar a opção ' Excluir o tempo que as conversas passam no bot inbox dos objetivos de SLA '. Isso permite que Fin realize o máximo de trabalho possível sem consumir seus SLAs humanos, preservando o comportamento existente do SLA quando um colega assume.
Inatividade do colega durante o loop humano
O comportamento dos workflows ‘teammate has been unresponsive’ depende se a conversa é gerenciada pelo Fin ou já está atribuída a um colega quando o passo Loop in teammate / agent é alcançado.
Conversa atribuída ao Fin (bot inbox ativado)
Uma vez que a conversa é temporariamente atribuída a um colega para revisão, os workflows ‘teammate has been unresponsive’ não serão acionados — a conversa ainda é considerada gerenciada pelo Fin.
Os workflows de inatividade não são acionados durante Loop in teammate / agent. A conversa ainda é considerada gerenciada pelo bot, então as regras de ‘teammate unresponsive’ não disparam.
Os workflows de inatividade retomam após a saída permanente. Uma vez que a conversa sai permanentemente do bot inbox, o comportamento de inatividade volta ao normal.
Conversa já atribuída a um colega (sem bot inbox)
Quando Loop in teammate / agent é alcançado, não há mudança no comportamento — os workflows ‘teammate has been unresponsive’ são acionados como antes.
Resumo cenário a cenário
Veja como SLAs, inatividade do colega e atribuição se comportam em cada resultado de Loop in teammate / agent.
Cenário | Comportamento do SLA | Inatividade do colega | Atribuição após resposta de Loop in teammate / agent |
Bot inbox ativado, SLAs adiados | Adiado — SLAs não iniciam | Suprimido durante Loop in teammate / agent | Retorna para Fin (bot inbox) |
Bot inbox ativado, SLAs não adiados | SLAs funcionam normalmente | Suprimido durante Loop in teammate / agent | Retorna para Fin (bot inbox) |
Sem bot inbox | SLAs funcionam normalmente | Acionado normalmente | Retorna para o responsável humano original |
Tempo limite de Loop in teammate / agent (qualquer configuração) | SLAs iniciam — saída permanente do Fin | Acionado normalmente | Escalado conforme regras de escalada do passo Loop in teammate / agent |
Colega clica em 'Assumir' | SLAs iniciam — saída permanente do Fin | Acionado normalmente | Atribuído ao colega que assumiu |
Estados de resolução
A tabela a seguir mostra o estado de resolução que Fin registra para cada resultado de Loop in teammate / agent e o que acontece com a conversa em seguida.
Cenário | Estado de resolução | O que acontece a seguir |
O colega responde a tempo | Resolução normal | Fin continua executando o procedimento de onde parou. |
O colega assume a conversa | Resolução presumida | Fin para. A conversa é atribuída ao colega e continua como uma conversa humana. |
Nenhuma resposta do colega dentro do tempo limite | Transferência / escalonamento | Fin para. A mensagem de escalonamento é enviada ao cliente e a conversa é direcionada conforme suas configurações de escalonamento. |
Incluir colega / agente vs. uma transferência de procedimento para a equipe
Esses dois recursos parecem semelhantes, mas funcionam de forma diferente:
Transferência para a equipe: Fin para de responder e um colega assume toda a conversa a partir desse ponto.
Incluir colega / agente: Fin pausa, espera a entrada ou decisão de um colega e então retoma o procedimento. O colega contribui, não assume o controle.
Do ponto de vista do cliente, Incluir colega / agente é invisível — a conversa continua sem interrupção.
















