Actif
crm
functional
Revu le 2026-07-27
crm/contact-email-generation.md
Génération automatique de l'e-mail contact
Backlog #1388 — fiche contact CRM (création et modification).
Quoi
Sur la fiche contact CRM (/mod/60100101/create et /update/{id}), un bouton « Générer »
à côté du champ E-mail déduit automatiquement l'adresse du contact :
- Format choisi sur la fiche client — si le champ « Format e-mail » est renseigné sur la
fiche du client (
P.NN, PP.NN, NN.P…), c'est lui qui est appliqué, en priorité sur tout le
reste. Ce choix vaut même si la fiche ne compte encore aucun contact, et même si les contacts
déjà saisis suivent un autre usage. Un toast rappelle le format utilisé.
- Pattern détecté — sans format choisi, si les contacts existants du même client permettent de
déduire le domaine de messagerie et le schéma d'adressage (
p.nom, prenom.nom, pnom…),
l'e-mail est généré et rempli directement dans le champ. Un toast indique le pattern utilisé.
- Suggestion IA — si aucun schéma n'est identifiable mais qu'un domaine est connu
(e-mails des contacts existants, ou à défaut le site web de la fiche client), une
suggestion générée par IA s'affiche sous le champ avec un badge « Suggestion IA ».
Elle n'est jamais appliquée automatiquement : boutons « Utiliser » / ignorer.
- Rien d'exploitable — un toast explique qu'il faut saisir l'e-mail manuellement.
Règles d'accès
- La fiche contact reste soumise aux droits du module CRM (601001) comme avant.
- La suggestion IA n'est proposée qu'aux comptes abonnés au module ia ; sans ce module,
seule la génération par pattern fonctionne.
- Le client du contact doit appartenir à la structure courante (garde multi-tenant).
Cas limites
- Le nom du contact doit être saisi avant de cliquer sur « Générer » (le prénom est optionnel :
certains schémas n'utilisent que le nom).
- Les adresses grand public (gmail, orange, free…) des contacts existants sont ignorées pour
déterminer le domaine de la société.
- Les contacts archivés ne sont pas pris en compte dans la déduction.
- La suggestion IA est contrainte au domaine déduit : toute proposition hors domaine est rejetée.
Au passage
La fiche contact (création/modification) est passée au rendu Livewire (formulaire dynamique
Onyx), iso-fonctionnelle par rapport à l'ancien rendu generic-form : mêmes champs, mêmes droits,
préremplissage du domaine conservé en création.