Ce que votre application doit dire quand elle plante : écrire des messages d'erreur que les gens comprennent vraiment

Un bon message d'erreur dit ce qui s'est passé, à qui la faute revient, ce qu'il faut faire ensuite, et n'efface jamais le travail de l'utilisateur — transformant un moment de panne en une nouvelle tentative plutôt qu'en abandon définitif de votre application.

Toute application finit par planter un jour ou l’autre. La connexion internet lâche, un serveur a un raté, quelqu’un tape des lettres dans un champ de numéro de téléphone. Cette partie-là, vous ne pouvez pas totalement l’empêcher. Ce que vous pouvez contrôler, c’est le message d’erreur — le texte que votre application affiche quand quelque chose tourne mal — et ce simple message fait souvent toute la différence entre un utilisateur qui hausse les épaules et réessaie, et un utilisateur qui décide en silence que votre application est cassée et ne revient jamais.

La plupart des applications construites par IA ratent exactement ce moment-là. Pas parce que le générateur a fait quoi que ce soit à la légère, mais parce que les messages d’erreur sont la partie à laquelle personne ne pense avant qu’un problème ne survienne devant une vraie personne. Par défaut, les applications ont tendance à afficher l’une des deux pires choses possibles : rien du tout, ou un bloc de texte technique effrayant. Corrigeons les deux.

Pourquoi les applications échouent-elles en silence ou affichent-elles des messages d’erreur effrayants ?

Les applications plantent mal de deux façons : soit elles ne disent rien quand quelque chose échoue, soit elles affichent une erreur technique qu’une personne normale ne peut pas lire. Dans les deux cas, l’utilisateur en est réduit à deviner — et c’est justement ça qui pousse les gens à abandonner.

L’échec silencieux. Une freelance que j’appellerai Maya avait créé un formulaire de réservation pour son activité de photographe. Une cliente a appuyé sur « Confirmer la réservation », le bouton a clignoté, et… rien. Pas de confirmation, pas d’erreur, pas d’indicateur de chargement. Est-ce que ça avait marché ? La cliente n’en était pas sûre, alors elle a réservé une seconde fois. Résultat : Maya s’est retrouvée avec deux réservations pour le même créneau et une cliente perdue. L’application n’avait pas planté — l’enregistrement avait simplement échoué, et l’application n’avait rien dit, donc la personne en face n’avait aucune idée de ce qui s’était réellement passé.

L’erreur technique effrayante. L’autre échec est plus bruyant, et d’une certaine façon pire. Une bénévole qui organisait une collecte de fonds communautaire a essayé d’importer un tableur et a reçu un encadré rouge indiquant Error 500: Internal Server Error. Elle l’a interprété comme « j’ai cassé quelque chose ». Elle n’a pas réessayé, n’a pas envoyé d’e-mail pour demander de l’aide, elle a simplement fermé l’onglet — parce que le message donnait l’impression que le problème venait d’elle, et qu’il valait peut-être mieux ne plus y toucher.

Ces deux utilisatrices ont rencontré un problème normal et parfaitement récupérable. Toutes les deux sont parties, parce que les messages d’erreur de l’application n’ont soit rien dit, soit dit quelque chose d’effrayant.

Qu’est-ce qui fait un bon message d’erreur ?

Un bon message d’erreur fait quatre petites choses, en mots simples : il dit ce qui s’est passé, il dit à qui revient le problème, il dit quoi faire ensuite, et il ne perd pas le travail de l’utilisateur.

  1. Dit ce qui s’est passé — « Nous n’avons pas pu enregistrer votre réservation », pas le silence, pas un 500.
  2. Dit à qui revient le problème — la réponse honnête est généralement « au nôtre », et le dire rassure les gens.
  3. Dit quoi faire ensuite — « Réessayez dans un instant » ou « Vérifiez votre connexion internet et réessayez ».
  4. Ne perd pas leur travail — tout ce qu’ils ont saisi est toujours dans le formulaire au moment où le message apparaît.

C’est tout. Pas de dissertation d’excuses, pas de code d’erreur en titre, pas de reproches. Voici les trois mêmes échecs, réécrits :

  • ❌ (rien ne se passe) → ✅ « Nous n’avons pas pu enregistrer ça à l’instant. Vos informations sont toujours là — appuyez sur Confirmer pour réessayer. »
  • ❌ Error 500: Internal Server Error → ✅ « Un problème est survenu de notre côté en important ce fichier. Ce n’est pas de votre faute. Réessayez dans une minute. »
  • ❌ Invalid input → ✅ « Ce numéro de téléphone ne semble pas correct — il doit comporter 10 chiffres, comme 555-123-4567. »

Remarquez que le dernier exemple pointe vers le champ précis concerné et montre à quoi ressemble une réponse correcte. « Invalid input » oblige la personne à chercher ; « ce numéro doit comporter 10 chiffres » lui dit exactement quoi corriger.

Quelles erreurs de votre application devriez-vous corriger en premier ?

Vous n’avez pas besoin d’un message personnalisé pour chaque échec possible — trois cas couvrent presque tout ce qui peut mal tourner dans une application classique : l’enregistrement ou l’envoi qui échoue, la saisie que l’application ne peut pas utiliser, et le problème qui vient de votre côté.

L’enregistrement ou l’envoi qui échoue. C’est le plus destructeur pour la confiance, parce que l’utilisateur a tout fait correctement et n’est pas sûr que ça ait marché. Confirmez toujours la réussite et expliquez toujours l’échec. Ne le laissez jamais deviner, et ne jetez jamais ce qu’il a saisi.

Le « nous ne pouvons pas utiliser ce que vous avez saisi » (validation). Ce n’est pas vraiment une erreur — c’est un malentendu. Détectez-le dès que la personne quitte le champ, pointez précisément le champ concerné, et montrez un exemple du bon format. N’attendez pas qu’elle clique sur Envoyer pour lui révéler un mur de rouge.

Le « quelque chose a cassé de notre côté ». De vrais problèmes de serveur ou de réseau. Dites que ça vient de vous, restez calme dans le ton, et proposez de réessayer. L’utilisateur ne peut pas réparer votre serveur, alors ne lui donnez pas l’impression qu’il devrait le faire.

Trois habitudes qui font discrètement toute la différence

Quelques éléments distinguent les applications qui gèrent l’échec avec élégance de celles qui n’y arrivent pas :

  • N’affichez jamais un code d’erreur brut comme message principal. Un code peut figurer en petits caractères en dessous, pour le support, mais le titre qu’un humain lit doit être une phrase, pas ERR_CONN_RESET.
  • Ne blâmez jamais l’utilisateur. « Vous avez mal saisi quelque chose » blesse ; « cette date semble être dans le passé — vouliez-vous dire le mois prochain ? » aide. Même information, ressenti complètement différent.
  • Conservez toujours leur saisie. Si l’application recharge ou que l’enregistrement échoue et que le formulaire se vide, vous transformez un petit incident en dix minutes de ressaisie. Les gens pardonnent un enregistrement raté. Ils ne pardonnent pas de devoir refaire le travail deux fois.

Comment amener votre générateur d’application IA à écrire de meilleurs messages d’erreur ?

Vous pouvez obtenir l’essentiel de tout ça en une seule demande — collez quelque chose comme le prompt ci-dessous, et votre générateur d’application IA appliquera à toute votre application les règles de langage simple décrites plus haut.

« Quand un enregistrement ou un import échoue, n’échoue pas en silence et n’affiche pas de code d’erreur technique. Affiche un message court et bienveillant, en langage simple, qui dit ce qui s’est passé, qui rassure sur le fait qu’on peut réessayer, et qui conserve tout ce que l’utilisateur avait déjà saisi. Pour les champs de formulaire, valide la saisie dès que l’utilisateur quitte chaque champ et affiche un message précis avec un exemple du bon format. »

Demandez-lui ensuite de vous expliquer ce qui se passe dans trois cas : l’internet est coupé, un champ obligatoire est vide, et le serveur est lent. Si la réponse à l’un de ces cas est « ça n’affiche rien » ou « ça affiche l’erreur brute », voilà votre prochaine correction.

Comment tester les messages d’erreur de votre application ?

Coupez votre wifi, ouvrez votre application, et essayez de faire l’action principale — c’est tout le test, et ça prend deux minutes.

Réservez le créneau, enregistrez la note, importez le fichier. Regardez ce que ça affiche. Est-ce que ça vous a dit quelque chose qu’une personne normale comprendrait ? Est-ce que ça a perdu ce que vous aviez saisi ? Maintenant, rallumez le wifi et tapez volontairement n’importe quoi dans un champ. Mêmes questions.

La plupart des applications ratent ce test la première fois, et ce n’est pas grave — ça vous montre simplement exactement par où commencer. Vous n’avez pas besoin de rendre chaque message d’erreur parfait. Trouvez la chose qui plante le plus souvent dans votre application, et faites en sorte que ce message-là soit bienveillant, clair et honnête en premier. La prochaine fois qu’une vraie personne le rencontrera, elle réessaiera au lieu de partir — et réessayer, c’est tout le jeu.