Transférer vers un conseiller
Passer un appel à un conseiller au bon moment, prévoir des branches de secours quand l'IA ne peut pas conclure, et suivre les transferts.
Un bon agent IA sait quand passer la main : l'appelant demande un humain, sa demande sort du périmètre, un outil ne répond pas. Dans un flow, le transfert est la fin d'un parcours comme une autre : un bloc Raccrocher qui, au lieu de terminer l'appel, le transfère vers un numéro.
Cette page explique comment mettre en place ce transfert, comment y mener la conversation dans chaque situation de secours, et comment suivre les transferts une fois en production.
Avant de commencer
- Le transfert d'appel concerne les appels vocaux. En chat, les paramètres de transfert sont seulement reçus avec la fin de session.
- Ayez sous la main le numéro vers lequel transférer, au format international (
+33123456789), et le mode de transfert accepté par votre téléphonie (voir BRIDGE ou REFER).
Quand transférer
| Situation | Comment le flow la détecte | Ce que vous configurez |
|---|---|---|
| L'appelant demande un conseiller | L'IA comprend la demande | Une fonction de transition vers le bloc de transfert, décrite pour ce cas |
| La demande n'est pas comprise | L'IA n'obtient pas de réponse exploitable après une reformulation | Une consigne dans le prompt et une fonction de transition |
| La demande sort du périmètre de l'agent | L'IA le constate selon son prompt | Une consigne dans le prompt et une fonction de transition |
| Un critère métier l'impose (urgence, client premium) | Une valeur rangée dans les variables | Une Sortie Conditionnelle sur cette valeur |
| Un outil échoue ou ne renvoie rien | L'IA voit le résultat de l'outil | Une consigne dans la description de la fonction de transition |
| Une validation humaine reste sans réponse | Le bloc Validation humaine emprunte sa sortie Timeout | Un lien de cette sortie vers le bloc de transfert |
Mettre en place le transfert
Ajouter le bloc de transfert
- Depuis la Bibliothèque, déposez un bloc Raccrocher sur le canvas.
- Dans Libellé du bloc, nommez-le « Transfert conseiller ». Ce libellé donne aussi son nom à la transition générée vers ce bloc (
aller_transfert_conseiller), celle que l'IA lit : choisissez-le explicite.
Annoncer le transfert
Dans Message d'adieu, écrivez la phrase dite à l'appelant avant le transfert, par exemple « Je vous passe un conseiller, merci de patienter. ». Elle est dite telle quelle, sans passer par le modèle. Laissé vide, le transfert se fait sans annonce.
Configurer le transfert
- Sous Paramètres de fin, cliquez sur Transfert d'appel. Deux lignes apparaissent : Numéro de transfert et Mode de transfert.
- Saisissez le numéro dans Numéro de transfert, par exemple
+33123456789. - Choisissez le Mode de transfert : BRIDGE ou REFER.
Le résumé du bloc sur le canvas affiche alors « → transfert » suivi du numéro et du mode.
Garder la trace du motif
Cliquez sur Paramètre (Paramètre libre quand la liste est vide) et saisissez la clé endReason : la ligne s'intitule alors Motif de fin. Donnez-lui une valeur fixe qui décrit pourquoi l'appel a été transféré, par exemple demande_conseiller ou urgence. Il est enregistré sur la transcription de la session. Créez un bloc de transfert par motif si vous voulez les distinguer.
Y mener la conversation
Tracez un lien vers ce bloc depuis chaque bloc où un transfert est possible : la sortie Réponse d'un Agent LLM, la sortie d'une fonction, la sortie Timeout d'une Validation humaine. Voir Déclencher le transfert.

BRIDGE ou REFER
| Mode | Fonctionnement | À savoir |
|---|---|---|
| BRIDGE | Pont : le bot reste en ligne et relie l'appelant au conseiller. | Mode proposé par défaut. |
| REFER | Renvoi SIP : le bot sort de l'appel, qui est confié au numéro de destination. | Votre téléphonie doit accepter ce renvoi. |
Si vous ne savez pas lequel choisir, demandez à l'administrateur de votre téléphonie lequel votre installation accepte, puis testez par un appel réel.
Un numéro qui dépend de l'appel
Le numéro de transfert peut être lu dans les variables de la conversation. Cliquez sur abc à côté de Numéro de transfert pour passer en path, puis saisissez un chemin, par exemple state.parameters.numero_agence : la valeur rangée plus tôt par une écriture d'état, comme le numéro de l'agence trouvé dans votre base de données.
Motif de clôture et endReason
Le bloc Raccrocher propose aussi un champ Motif de clôture. Ce sont deux choses différentes :
| Champ | Rôle |
|---|---|
| Motif de clôture | Un repère pour votre équipe, affiché sur le bloc dans le canvas quand aucun transfert n'est configuré. Il n'est pas transmis à la fin de la conversation. |
Paramètre de fin endReason (ligne Motif de fin) | Une valeur transmise à la fin de la conversation et enregistrée sur la transcription de la session. |
Déclencher le transfert
Un bloc conversationnel ne passe au bloc suivant que si l'IA appelle une fonction de transition. Trois façons d'y mener l'IA :
| Façon | Comment faire | Exemple |
|---|---|---|
| Transition automatique | Tracez un lien depuis la sortie Réponse du bloc vers « Transfert conseiller ». Flowtative génère la transition aller_transfert_conseiller. | Un agent d'accueil qui peut toujours passer la main. |
| Transition personnalisée | Dans Transitions automatiques (liens), cliquez sur Personnaliser et réécrivez sa description, que lit l'IA. | « Appelle cette fonction si le client demande un conseiller, s'énerve, ou si tu ne peux pas répondre après deux essais. » |
| Sortie conditionnelle | Sur une fonction, choisissez Sortie Conditionnelle et une branche sur une variable. | state.parameters.urgent = égal à oui vers « Transfert conseiller ». |
Complétez toujours par une consigne dans le Prompt de tâche : « Si le client demande à parler à quelqu'un, ne cherche pas à le retenir : transfère-le. »
Prévoir des branches de secours
Une branche de secours est le chemin que prend la conversation quand le parcours prévu ne peut pas aboutir. Il n'y a pas de bascule automatique vers un autre agent ou un autre modèle : le secours se construit dans le flow, le plus souvent vers un bloc de transfert ou vers un message qui promet un rappel.
La demande n'est pas comprise
Confiez ce cas à l'Agent LLM qui mène l'échange. Dans son Prompt de tâche, demandez-lui de reformuler la question une fois, puis de transférer si la réponse reste floue : « Si tu ne comprends pas la demande après une reformulation, propose de passer un conseiller. » Ajoutez à ce bloc une fonction de transition vers le bloc de transfert, décrite pour ce cas : « Quand la demande reste incomprise après une reformulation ».
Un outil échoue
Quand une fonction appelle un outil, l'IA voit le résultat renvoyé, y compris un résultat vide ou une erreur. Dites-lui quoi faire dans ce cas :
- dans le Prompt de tâche : « Si la recherche de commande ne renvoie rien ou échoue, excuse-toi et propose de passer un conseiller » ;
- et dans la description de la transition vers « Transfert conseiller » : « … ou si un outil a échoué ».
Les blocs d'action (Outil MCP, Datastore, SMS, E-mail) n'ont qu'une seule sortie : ils ne proposent pas de branche d'erreur. Placez après eux un bloc conversationnel qui pourra constater un résultat inattendu.
Attention
Le bloc Requête HTTP a deux sorties, Succès (2xx) et Erreur / timeout, mais ses réglages ne sont pas exécutés pendant une conversation : ne bâtissez pas de secours sur sa sortie d'erreur. Pour appeler une API, créez un outil HTTP / API et appelez-le depuis une fonction (voir Outils).
Une validation reste sans réponse
Le bloc Validation humaine emprunte sa sortie Timeout quand aucun opérateur n'a décidé dans le Délai max (s). Reliez-la à un Message qui explique au client qu'il sera rappelé, ou directement au bloc de transfert. Une tâche distribuée à un agent ViaFlow doit être close sur cette branche : voir Distribuer à un agent ViaFlow.
Faire intervenir un humain sans transférer l'appel
Le transfert vocal n'est pas la seule façon de faire intervenir un humain. Le bloc Validation humaine garde la conversation avec l'agent IA et ne confie à l'humain que la décision :
| Besoin | Brique |
|---|---|
| Un superviseur valide un geste commercial ou un remboursement, l'agent annonce la décision | Bloc Validation humaine, demande traitée dans la console Validations. Voir Validations humaines. |
| Les agents d'un service ViaFlow reçoivent la décision à prendre | Option Distribuer à un agent ViaFlow du même bloc, avec le Service destinataire. |
| L'agent promet un rappel au lieu de transférer | Un bloc Outil MCP qui crée la tâche de rappel dans votre outil de support ou votre CRM, puis un bloc Raccrocher dont le Message d'adieu annonce le rappel et qui porte un endReason = rappel_promis. Voir Outils. |
Astuce
Pendant une validation, l'appelant attend. Faites-le prévenir juste avant par un Message : « Je vérifie avec un responsable, cela prend une minute. »
Suivre les transferts
| Où | Ce que vous y voyez |
|---|---|
| Analytics > indicateur Transfert humain | La part des sessions transférées, et son évolution par rapport à la période précédente. |
| Analytics > Top nœuds de sortie, onglet Transfert | Les étapes du flow d'où partent les transferts. Un nœud qui en concentre beaucoup signale une étape où l'agent ne sait pas conclure. |
| Analytics > Raisons de fin | Le code de fin de chaque session (par exemple transfer) et son issue. Voir Raisons de fin. |
| Transcriptions | La raison de fin Transféré dans l'en-tête de la conversation, et l'échange qui a précédé le transfert. |
Partez des Top nœuds de sortie : si l'étape « Suivi de commande » transfère trop souvent, relisez quelques transcriptions de cette étape pour voir si c'est un outil qui échoue, une question mal comprise ou une demande hors périmètre.
Questions fréquentes
Vérifiez dans le bloc Raccrocher que la ligne Numéro de transfert contient bien un numéro (ou un chemin qui existe à ce moment de la conversation) et que la conversation était un appel vocal. Testez ensuite le mode : si REFER n'est pas accepté par votre téléphonie, essayez BRIDGE.
Le bloc où se trouve la conversation n'a probablement pas de transition vers le bloc de transfert. Tracez un lien depuis sa sortie Réponse, ou personnalisez la transition pour décrire précisément quand l'appeler.
Créez un bloc Raccrocher par destination, chacun avec son numéro et son endReason, et menez-y la conversation par une fonction de transition par motif, chacune décrite pour son cas. Pour un numéro trouvé dans une base, utilisez un chemin state.parameters.… comme Numéro de transfert.
Dans l'agent, section Fin d'appel, vérifiez que Attendre la fin du message avant de raccrocher est activé. Voir Configurer la voix d'un callbot.
Bonnes pratiques
- Laissez toujours une porte de sortie. Chaque bloc conversationnel d'un parcours vocal devrait pouvoir mener à un transfert ou à une fin propre.
- Ne retenez pas l'appelant. Un client qui demande un humain et n'en obtient pas abandonne : cela pèse plus sur votre taux d'Abandon qu'un transfert sur votre taux de résolution.
- Un
endReasonpar motif de transfert pour savoir, en relisant les sessions, pourquoi l'agent a passé la main. - Testez chaque branche de secours, y compris en simulant un outil qui ne répond pas, avant de publier le flow.
Pour aller plus loin
Collecter des informations
Faire recueillir une information par l'IA pendant la conversation, la ranger, l'enregistrer dans une base et la retrouver après l'appel.
Bases de connaissances
Créez une base de connaissances, alimentez-la avec vos documents, vos FAQ, vos sites web et vos outils de support, puis vérifiez ce que vos agents y trouveront.