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 colega antes que o Fin continue. Isso é útil para decisões de alto impacto, solicitações sensíveis a conformidade ou para testar fluxos de procedimento antes que uma integração esteja totalmente construída. Enquanto o Fin mantém o controle da conversa, um colega revisa o contexto, preenche uma decisão ou resposta, e o Fin retoma de onde parou. Este artigo cobre quando usar o human-in-the-loop (HITL), como configurá-lo e testá-lo, e como o assignment e os 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 procedimentos, 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 colega deve revisar e aprovar antes que o 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 colega pode executar essa etapa manualmente, permitindo testar o fluxo completo do procedimento antes que a integração esteja pronta.
Como o human-in-the-loop funciona
1. O Fin alcança uma etapa Loop in teammate / agent
Quando o Fin atinge uma etapa Loop in teammate / agent em um procedimento:
Antes da execução da etapa, você pode configurar uma mensagem que o Fin envia ao cliente.
Uma nota Loop in teammate / agent aparece na inbox, mostrando ao colega tudo que ele precisa revisar e agir.
O Fin espera e não continua o procedimento até que um colega aja ou o tempo limite seja atingido.
Notas:
A atribuição da conversa depende das configurações do seu workspace e do Fin Procedure. Se seu workspace tem o Bot Inbox habilitado e você deixar o "Review Team" configurado como padrão, o Fin permanecerá atribuído e a conversa ficará no Bot Inbox. Se o Bot Inbox não estiver habilitado e o "Review Team" estiver no padrão, a conversa será atribuída ao responsável padrão.
Em ambos os casos, se um Team Inbox estiver atribuído, a conversa será atribuída a esse Inbox.
2. O colega revisa e responde
Da inbox ou Slack, o colega vê o cartão Fin requires your decision e pode escolher entre 2 opções:
Opção 1: Enviar uma resposta (Fin continua): O colega preenche os campos solicitados (por exemplo, uma decisão ou motivo) e envia.
A resposta é registrada na conversa.
O Fin retoma o procedimento. As respostas do colega podem ser usadas em etapas posteriores e na mensagem final que o Fin envia ao cliente.
Opção 2: Assumir a conversa (Fin para): O colega pode assumir se necessário — a conversa é atribuída a ele e o Fin para de responder.
Configurando o human-in-the-loop
Digite @ no editor de procedimentos e selecione Loop in teammate / agent no menu.
Escreva a pergunta ou instrução que o Fin mostrará ao colega no cartão Loop in teammate / agent. Escreva como se estivesse orientando o colega — 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 colega o contexto necessário para decidir.
Configure as informações que o colega 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 colega. 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, o Fin não pode referenciar a resposta do colega em etapas subsequentes.
Atribua um revisor. Escolha um colega que deve revisar esta etapa. Se deixar em branco, o Fin usa o responsável Default configurado nas suas configurações de transferência do Fin. Use Marcar como prioridade para sinalizar a conversa na inbox, para que sua equipe possa priorizá-la.
Defina o Tempo de Espera — quanto tempo o Fin deve aguardar a resposta de um colega antes de escalar. Configure:
Duração: Defina o tempo limite em minutos ou horas.
Responsável pela escalada: Escolha quem será o responsável pela conversa se o tempo limite expirar.
Mensagem de escalada: Escreva a mensagem que o Fin envia ao cliente se nenhum colega responder a tempo — por exemplo: "Ainda não recebi resposta do colega, então estou encaminhando para a equipe."
Pausar fora do horário de expediente (opcional): Ative para pausar o temporizador quando sua equipe estiver fora do horário comercial. O temporizador reinicia no início do próximo período de expediente, usando o horário da equipe selecionada — ou o padrão do workspace se você não selecionou nenhum ou selecionou um único colega.
Importante: Você deve incluir pelo menos um Campo para Coletar para salvar uma etapa Loop in teammate / agent. Também são obrigató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 colegas 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 menu suspenso. Para ajuda na configuração do seu workspace Slack e na adição do @Intercom aos canais, veja Configurar notificações do Slack. Ao configurar o canal nas Configurações, defina o Channel Purpose como 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 obtidos por etapas anteriores de conector de dados. Os colegas podem clicar em Respond para enviar a resposta diretamente do Slack, ou em View in Inbox para abrir a conversa no Intercom.
Uma vez que um colega age, a notificação é atualizada automaticamente:
✅ Resolvido: a resposta enviada pelo colega é exibida (ex.: aprovar: 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 colegas 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 em Loop na etapa de colega
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 colegas tomem decisões mais rápidas e 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 a escalada
Quando você define um tempo limite em uma etapa Loop in teammate / agent:
Fin aguardará a resposta de um colega até que o tempo limite expire.
Se nenhum colega responder antes do tempo limite, Fin envia a mensagem de escalada, remove-se da conversa e a atribui conforme suas configurações de escalada.
Você pode pausar opcionalmente o temporizador quando sua equipe estiver fora do horário comercial. Quando pausado, o temporizador reinicia no início do próximo período de horário comercial — usando o horário comercial da equipe selecionada ou o padrão do workspace se você não selecionou nenhum ou selecionou um único colega.
Nota: Respostas do cliente durante a espera não estendem o tempo limite — Fin não responderá até que o colega aja.
Como testar o 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 (ex.: "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 (ex.: "Preciso verificar com um colega antes de alterar seu plano.") e pausa na etapa Loop in teammate / agent.
Revisão do colega: Na janela de pré-visualização, clique em Revisar ou no link "Revisar como colega do inbox". Isso abre o cartão exato Loop in teammate / agent que sua equipe verá no Inbox.
Complete a ação: Preencha os Campos a Coletar (ex.: um dropdown Aprovar/Negar e um campo de texto para Motivo) e clique em Enviar.
Verifique o resultado: Confira se Fin retoma o procedimento e envia a mensagem de acompanhamento correta com base na sua decisão (ex.: "Ótimas notícias! Seu plano foi alterado com sucesso para cobrança anual. Você está agora no plano Pro Anual 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 do 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 colega disponível para Fin. Você precisa editar a simulação e adicionar os valores antes de executar a simulação, por exemplo, "Aprovado: true".
Execute a Simulação e quando ela alcançar uma etapa Loop in teammate / agent:
Uma nota é criada com a pergunta Loop in teammate / agent, a mesma nota que os colegas 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 colega tivesse respondido.
Qualquer valor obrigatório ausente: a simulação trata isso como um tempo limite: a mensagem de escalada é enviada e a conversa é escalada, como se um colega real não tivesse respondido a tempo.
Como a atribuição e os SLAs se comportam durante o human-in-the-loop
Como a atribuição, os SLAs (Acordos de Nível de Serviço) e a inatividade do colega se comportam durante uma etapa Loop in teammate / agent depende se a conversa começou com Fin ou com um colega humano.
Como funcionam as atribuições para human-in-the-loop
Quando Fin é o dono da conversa (bot inbox ativado)
Fin atribui a conversa para a equipe ou colega 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 colega (veja abaixo).
Quando o colega envia o formulário Loop in teammate / agent, a conversa retorna para o bot inbox do Fin e o procedimento é retomado.
Quando um colega clica em 'Assumir' durante Loop in teammate / agent
A conversa é atribuída ao colega que clicou em Assumir.
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 colega envia o formulário Loop in teammate / agent, a conversa retorna para o responsável original — não para o Fin.
Comportamento do SLA durante o human-in-the-loop
O comportamento do SLA depende de duas configurações do workspace: se o bot inbox está ativado e se a opção Defer SLAs for bot inbox está ligada.
Bot inbox ativado, SLAs adiados
Esta é a configuração recomendada se você quiser que o Fin funcione sem afetar seus SLAs humanos.
Os SLAs permanecem adiados durante o Loop in teammate / agent. Atribuir temporariamente a conversa a um colega não inicia os temporizadores do 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 o Fin escala, um colega clica em Assumir, ou um passo Loop in teammate / agent expira.
Reatribuições manuais durante o Loop in teammate / agent mantêm os SLAs adiados. Se os colegas reatribuírem a conversa para outra pessoa enquanto o Loop in teammate / agent estiver ativo, os SLAs permanecem adiados.
A escalada por tempo limite inicia o relógio do SLA. Um passo Loop in teammate / agent que expirou é uma saída permanente do bot inbox — os SLAs adiados começam nesse momento.
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 do SLA funcionam a partir do momento em que são aplicados.
Os temporizadores do SLA funcionam a partir do momento em que o SLA é aplicado, como em qualquer outra conversa.
As atribuições do Loop in teammate / agent não alteram o comportamento do SLA — elas 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 'Exclude the time conversations spend in the bot inbox from SLA targets'. Isso permite que o 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 human-in-the-loop
O comportamento dos workflows ‘colega não respondeu’ 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 ‘colega não respondeu’ não serão acionados — a conversa ainda é considerada gerenciada pelo Fin.
Workflows de inatividade não são acionados durante o Loop in teammate / agent. A conversa ainda é considerada gerenciada pelo bot, então as regras ‘colega não respondeu’ não disparam.
Workflows de inatividade retomam após a saída permanente. Quando 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 o Loop in teammate / agent é alcançado, não há mudança no comportamento — os workflows ‘colega não respondeu’ 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 do Loop in teammate / agent.
Cenário | Comportamento do SLA | Inatividade do colega | Atribuição após resposta do Loop in teammate / agent |
Bot inbox ativado, SLAs adiados | Adiado — SLAs não iniciam | Suprimido durante o Loop in teammate / agent | Retorna ao Fin (bot inbox) |
Bot inbox ativado, SLAs não adiados | SLAs funcionam normalmente | Suprimido durante o Loop in teammate / agent | Retorna ao Fin (bot inbox) |
Sem bot inbox | SLAs funcionam normalmente | Acionados normalmente | Retorna ao responsável humano original |
Tempo esgotado no Loop in teammate / agent (qualquer configuração) | SLAs iniciam — saída permanente do Fin | Acionados normalmente | Escalado conforme regras de escalada do passo Loop in teammate / agent |
Colega clica em 'Assumir' | SLAs iniciam — saída permanente do Fin | Acionados normalmente | Atribuído ao colega que assumiu |
Estados de resolução
A tabela a seguir mostra o estado de resolução que o Fin registra para cada resultado do Loop in teammate / agent e o que acontece com a conversa em seguida.
Cenário | Estado da resolução | O que acontece a seguir |
Colega responde a tempo | Resolução normal | Fin continua executando o procedimento de onde parou. |
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 | 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, ele não assume o controle.
Do ponto de vista do cliente, Incluir colega / agente é invisível — a conversa continua sem interrupção.
















