Se rendre au contenu

Du support client sans Zendesk : des tickets dans votre Odoo

Une page de soutien publique par équipe, un accusé de réception immédiat, des délais suivis et des réponses prérédigées : notre module Helpdesk, sans licence par agent.

TL;DR : notre module Helpdesk s'installe par-dessus le module communautaire de l'OCA et ajoute ce qui manquait pour du vrai soutien client : une page de soutien publique par équipe, sur votre domaine, sans compte ni mot de passe, un accusé de réception immédiat, des délais suivis avec relance automatique, des réponses prérédigées, un portail de suivi et un sondage de satisfaction à la fermeture. Le tout à côté de vos contacts, de vos projets et de vos factures, sans licence par agent.

Un client vient de basculer quarante personnes vers un nouvel environnement. Pendant les quatre semaines qui suivent, tout le monde a des questions : le mot de passe qui ne passe plus, le fichier qui a changé de place, l'imprimante qui ne répond plus. Ces questions arrivent par courriel, par message texte, par téléphone, à trois personnes différentes, et personne ne sait combien il en reste.

C'est exactement la situation qui nous a fait bâtir la partie la plus récente de notre module : une page de soutien publique, propre à cette équipe, à une adresse simple qu'on peut écrire au tableau.

Le courriel partagé, jusqu'à quand?

Le courriel comme canal de soutien a trois défauts structurels. Aucune visibilité d'équipe : personne ne sait ce qui est en attente ni chez qui. Aucune priorité : la demande urgente attend derrière l'infolettre et les factures. Aucune mesure : impossible de dire si on répond en deux heures ou en deux jours, et encore moins si ça s'améliore.

Tant que la personne qui connaît le client est là, ça tient. Dès qu'elle est en vacances, en rencontre ou débordée, la demande tombe dans un trou et le client relance, à raison, de plus en plus sec. À partir de quelques demandes par semaine, ça commence à paraître.

Le réflexe de l'abonnement, et ce qu'il coûte

La réponse classique, c'est de s'abonner à un outil de billetterie. Les prix sont publics et méritent d'être lus au complet, parce que les chiffres affichés supposent tous un engagement annuel.

Solution Prix affiché Facturé à qui
Zendesk Suite Team 55 $ US par mois, engagement annuel Par agent
Zendesk Support Team (billetterie seule) 19 $ US par mois, engagement annuel Par agent
Freshdesk Growth 19 $ US par mois, engagement annuel Par agent
Odoo Enterprise (pour avoir Helpdesk) 44,20 $ CA par mois, prix courant 55 $ CA Par utilisateur de l'ERP

Deux nuances valent le détour. Chez Freshdesk, le programme gratuit n'est plus le plan à dix agents dont on se souvient : c'est deux agents pendant six mois. Et du côté d'Odoo, l'application Helpdesk n'existe tout simplement pas dans l'édition Community : elle ne figure pas dans les applications du dépôt public, elle vit dans Enterprise. Pour l'obtenir, il faut au minimum le forfait Standard, et Odoo facture par utilisateur, pas par agent de soutien. Donner une file de tickets à trois personnes dans une organisation de trente, c'est trente licences. Il existe bien une formule à une application gratuite, mais c'est une seule : dès que le soutien doit vivre à côté de vos ventes et de votre comptabilité, tout le monde bascule dans un forfait payant. On a détaillé cet arbitrage dans notre comparatif Community contre Enterprise.

Reste le vrai coût, celui qui n'est sur aucune page de prix : c'est un deuxième système. Vos tickets d'un bord, vos clients, vos projets et vos factures de l'autre, et une synchronisation à entretenir entre les deux.

Ce qu'on a bâti par-dessus l'OCA

L'OCA, l'Odoo Community Association, maintient plus de 20 000 modules libres avec 1 600 contributeurs répartis dans 62 pays. Son module de billetterie, helpdesk_mgmt, fait déjà le travail de base : des tickets, des équipes, des étapes, un portail client. On ne l'a pas forké. Notre module s'installe par-dessus et ajoute ce qui manquait pour du soutien client dans le vrai monde.

Une page de soutien par équipe

Chaque équipe de soutien peut avoir sa propre page publique, à une adresse de la forme /support/nom-de-l-equipe, sur votre domaine. La page reprend l'entête, le menu et le pied de page de votre site : ce n'est pas un formulaire orphelin hébergé ailleurs.

Le visiteur n'a ni compte ni mot de passe à créer. Il entre son courriel, son sujet, sa description, joint une capture d'écran au besoin, et c'est envoyé. Un accusé de réception part immédiatement avec le numéro de la demande, ce qui règle le « avez-vous reçu mon courriel? ». Si la personne est déjà connectée au portail, ses coordonnées sont pré-remplies et elle est redirigée vers sa demande.

Ce qui rend la page utile, c'est ce qui se configure par équipe, dans Odoo, sans toucher au code :

Un texte d'introduction et un message de confirmation qui vous appartiennent. Pour l'hypercare qui nous a servi de banc d'essai, l'introduction rappelle la période couverte et invite les gens à voir d'abord leur référent de département pour les questions d'usage simple. Ça filtre autant qu'un formulaire de tri, sans en avoir l'air.

Un sélecteur de catégorie configurable. Vous choisissez le libellé (« Département » par défaut), la liste de choix, et si la réponse est obligatoire. Le choix devient une étiquette sur le ticket à la création. C'est ce qui permet de répondre à « d'où viennent les demandes? » sans imposer un questionnaire de douze champs à quelqu'un dont l'imprimante est en panne.

Des pièces jointes. Une capture d'écran vaut trois échanges de courriels. Les plafonds sont de 10 Mo par fichier et 25 Mo au total par défaut, ajustables.

Ce qu'on a durci, et pourquoi

Un formulaire public, c'est une porte ouverte sur Internet qui crée des enregistrements dans votre ERP et déclenche des courriels. On l'a traité comme tel.

Un champ leurre invisible attrape les robots qui remplissent tout ce qui ressemble à une case : la page répond poliment « merci », sans rien créer. Un plafond de cinq soumissions par tranche de dix minutes et par adresse IP empêche autant l'inondation de tickets que le bombardement de courriels d'accusé de réception vers une victime. Le format du courriel est validé côté serveur, pas seulement dans le navigateur.

Le morceau le moins évident concerne les pièces jointes. Au-delà des exécutables et des scripts, la liste des extensions refusées inclut les fichiers .html, .svg et .xml. La raison : ces formats s'affichent dans le navigateur, et un fichier ouvert par un agent depuis le ticket s'exécuterait dans sa session Odoo. Un déposant anonyme aurait alors un chemin vers le compte de la personne qui lui répond. Pour la même raison, le type du fichier est redéterminé par le serveur et jamais celui annoncé par l'expéditeur.

Ce que le ticket voit

Parce que le ticket vit dans Odoo, l'agent a le dossier complet sous les yeux, sans changer d'onglet. Le contact et son historique. Le style d'adresse et le ton à employer avec cette personne, si vous documentez ça. Le lien vers l'élément de la matrice de connaissances du mandat, avec un indicateur qui dit si la demande est alignée avec la portée convenue ou si elle déborde.

Quand une équipe est reliée à une banque d'heures, le solde s'affiche en direct sur le ticket, avec un ruban quand ça descend sous le seuil. Le temps se saisit à même le ticket et atterrit sur le projet, donc il débite la banque sans double saisie. C'est le prolongement naturel de notre module de banques d'heures.

Et comme le soutien génère souvent la suite des choses, un ticket se convertit en rencontre en un clic, avec son numéro et son titre déjà remplis. Le pépin d'aujourd'hui devient le mandat de demain sans rien retaper. Un bouton dédié ouvre aussi le rédacteur de courriel avec un gabarit de mise à jour au client : le texte est modifiable et rien ne part tout seul.

Les délais, sans la mise en scène

Chaque équipe définit deux cibles en heures : le délai de première réponse et le délai de résolution. Le ticket affiche un ruban dès qu'une cible est dépassée, et un robot passe deux fois par jour pour déposer une tâche de suivi sur la personne assignée, une seule fois par ticket pour ne pas transformer la liste en champ de mines.

Deux précisions honnêtes. Ces heures sont calendaires et non ouvrables : un ticket ouvert un vendredi à 17 h avec une cible de quatre heures sera en dépassement le samedi matin. Et le robot constate le dépassement, il ne l'anticipe pas. Si votre engagement contractuel se calcule en heures d'affaires, il faut en tenir compte dans le chiffre que vous inscrivez.

Ce qui se fait tout seul

Des règles par mots-clés étiquettent les tickets à la création, ce qui évite le tri manuel des demandes évidentes. Les réponses qui reviennent sont enregistrées comme macros, applicables en un clic depuis l'en-tête du ticket puis ajustables, ce qui garde un ton constant peu importe qui répond.

La passerelle courriel a été durcie, parce qu'une file de tickets alimentée par une adresse partagée se remplit vite de fantômes. Les réponses automatiques, les absences du bureau, les envois en masse et les avis de non-remise sont écartés au lieu de créer un ticket que personne n'ose fermer. Pour les urgences, une notification poussée peut partir vers votre téléphone dès qu'un ticket critique entre, avec un seuil réglable par équipe.

Avant d'ouvrir une page de soutien publique, quatre décisions à prendre :

  1. Qui reçoit, concrètement, et qui est le remplaçant quand cette personne est absente
  2. Les catégories offertes au visiteur, en langage d'usager et non en langage d'organigramme
  3. Le délai que vous êtes prêts à écrire, en tenant compte des soirs et des fins de semaine
  4. Ce qui arrive aux demandes hors portée, avant qu'elles deviennent un débat de facturation

Et l'IA, là-dedans

Un bouton de triage peut analyser un ticket et proposer une catégorie, une étape, une personne à qui l'assigner et un brouillon de première réponse. Trois choses à savoir. C'est déclenché à la main, ticket par ticket, jamais automatiquement sur tout ce qui entre. La suggestion s'affiche dans un onglet et attend un humain, elle ne part jamais au client. Et si aucun fournisseur d'IA n'est configuré, le bouton se contente d'un avis discret pendant que le reste du module continue de fonctionner.

C'est un choix qu'on assume : le soutien client est le pire endroit où laisser une réponse automatique passer à côté de la plaque.

Ce que ça ne fera pas

Pas de centre d'appels intégré : le module gère des demandes écrites, pas une file téléphonique. Pas de base de connaissances publique en libre-service : le portail montre au client ses demandes, pas des articles d'aide. Les cibles de délai ignorent les horaires d'affaires, comme dit plus haut. Le sondage de satisfaction ne part que si un sondage est associé à l'équipe, sinon la fermeture reste silencieuse.

Pour les organisations à très haut volume, multilingues, ouvertes en tout temps, les gros joueurs gardent leur pertinence. Notre module vise les équipes de PME et d'OBNL qui traitent des dizaines de demandes par semaine, pas des milliers par jour.

Le point Loi 25

Un ticket de soutien contient des renseignements personnels : un nom, un courriel, parfois une capture d'écran où figurent des données de clients ou d'employés. Depuis septembre 2023, une entreprise québécoise qui communique des renseignements personnels à l'extérieur du Québec doit d'abord réaliser une évaluation des facteurs relatifs à la vie privée, et la communication doit faire l'objet d'une entente écrite. La Commission d'accès à l'information le dit noir sur blanc.

Ce n'est pas un argument contre les outils infonuagiques, c'est un dossier à monter et à tenir à jour. Quand la billetterie tourne sur votre propre instance, hébergée où vous l'avez décidé, le dossier ne se pose pas dans les mêmes termes. C'est aussi ce qui fait du canal de soutien un morceau naturel de l'arrivée d'un nouveau client ou d'un nouvel employé.

Chez nous

Nos propres demandes internes vivent dans ce module, en petit volume : une panne chez un fournisseur, un blocage de courriels, une fenêtre de maintenance à planifier. La page publique, elle, a été montée pour le mandat d'hypercare décrit plus haut, avec un sélecteur de département obligatoire et la notification poussée branchée sur les tickets critiques.

Le sondage de satisfaction, on ne l'a pas encore activé pour nous-mêmes. C'est écrit ici parce que c'est vrai, et parce qu'un module qu'on vous décrit sans dire ce qu'on n'utilise pas encore vaut moins cher.

Le module est publié sous licence libre sur notre dépôt GitHub, avec le reste de nos modules maison. Sa fiche vit sur notre page modules.

Si vos demandes clients vivent dans des boîtes personnelles et que personne ne sait ce qui est en attente, écrivez-nous et on vous montre une file en action.

Sources

Banques d'heures : facturer au prépayé sans chiffrier
Vendez des blocs d'heures, consommez au fil des feuilles de temps : le solde se calcule tout seul et le client le voit en temps réel