La fiche contact portait déjà une case « Opposition prospection » : cochée, elle signifie que le contact refuse d'être démarché. Elle disait l'état, elle ne disait rien de son histoire — ni depuis quand, ni qui l'avait cochée, ni d'où venait la demande.
C'est insuffisant dès qu'un contact conteste avoir été démarché, ou exerce son droit d'accès. Le RGPD demande de pouvoir prouver un consentement, pas seulement de l'afficher.
Deux ajouts répondent à ce besoin :
Le bloc « Identité » affiche une ligne supplémentaire, dont le libellé suit l'état :
| État de la case | Ligne affichée |
|---|---|
| Opposition cochée | Opposition depuis le 03/09/2026 à 14:32 |
| Opposition décochée | Consentement confirmé le 03/09/2026 à 14:32 |
| Aucune décision enregistrée | (aucune ligne) |
L'heure est affichée volontairement : deux décisions peuvent se suivre le même jour, et c'est l'horodatage précis qui fait foi.
Le badge rouge « Opposition prospection », à côté du nom, est inchangé.
Le champ « Date de la dernière décision de consentement » apparaît juste sous la case « Opposition prospection », grisé et non modifiable.
Ce n'est pas un oubli : une date de preuve qui se saisit à la main ne prouve rien. Elle est posée automatiquement par l'application au moment exact où la case change d'état. Cocher ou décocher la case suffit — la date suit.
En bas de la fiche, un bloc retrace les décisions successives, la plus récente en premier :
| Ce qui est affiché | Exemple |
|---|---|
| Date et heure | 03/09/2026 à 14:32 |
| Sens de la décision | Opposition à la prospection · Consentement confirmé · Adresse devenue injoignable |
| Origine | Saisie sur la fiche contact · Désabonnement depuis un e-mail · Import de fichier · Synchronisation · Rebond |
| Auteur | son nom, ou sans intervention interne quand la décision vient du contact lui-même |
Le bloc est en lecture seule : aucune action, aucune modification, aucune suppression. C'est voulu — voir Pourquoi le registre est inaltérable.
Un contact sur lequel personne ne s'est jamais prononcé affiche un message le disant, plutôt qu'un bloc vide : c'est une situation normale, pas une anomalie.
Le bloc fait partie de l'export PDF de la fiche. C'est lui qu'on produit lorsqu'un contact exerce son droit d'accès et demande ce que l'on sait de ses choix.
La case « Opposition prospection » se modifie depuis la fiche contact, accessible aux utilisateurs
disposant du module CRM (b2b). Il n'y a pas de droit distinct pour le consentement : qui peut
modifier un contact peut modifier son opposition.
Quel que soit l'auteur, la décision est tracée. En mode assistance — quand un assistant ISI intervient sur l'espace d'un client — c'est l'identité de l'utilisateur pour le compte duquel il agit qui est enregistrée, et non celle de l'assistant.
Certaines décisions n'ont légitimement aucun auteur : une désinscription reçue depuis un e-mail est le fait du contact lui-même, pas d'un utilisateur de l'application. Le registre l'enregistre alors sans auteur, avec l'origine correspondante.
Chaque ligne du registre porte l'origine de la décision :
| Origine | Cas |
|---|---|
| Interface | un utilisateur coche ou décoche la case sur la fiche contact |
| Désabonnement | le contact s'est désinscrit depuis un e-mail de campagne |
| Import | la décision provient d'un fichier importé |
| API | la décision est reçue par l'API |
| Synchronisation | alignement avec un outil externe |
Quand un contact clique sur le lien de désinscription d'une campagne, l'outil d'e-mailing en informe l'application. Celle-ci coche l'opposition, pose la date, et inscrit la décision au registre avec l'origine « désabonnement » et aucun auteur.
Le contact n'a pas à être recontacté pour confirmer, et un utilisateur qui rouvrirait la fiche verra l'opposition déjà en place. Le paramétrage de la liaison avec l'outil d'e-mailing est décrit dans la documentation du connecteur Brevo.
Deux comportements méritent d'être connus :
Le registre ne peut être ni modifié ni supprimé, ni depuis l'interface ni par une action d'administration. Contrairement au reste de l'application, il ignore la corbeille : il n'existe aucun moyen d'en retirer une ligne.
C'est sa raison d'être. Un journal de consentement qu'on peut purger ne prouve plus rien le jour où il faut s'en servir — et ce jour-là, c'est précisément la ligne gênante qui aurait disparu. Les entrées s'accumulent donc indéfiniment ; leur volume reste négligeable, une décision de consentement étant un événement rare dans la vie d'un contact.