# Un widget HubSpot transmettait l’IP des visiteurs sans base légale

> Pourquoi un simple widget de chat marketing peut transmettre une géolocalisation non anticipée, et comment un consentement mal configuré transforme un outil utile en non-conformité RGPD.

- Auteur : WordPress Développement
- Publié le : 2020-01-27
- Mis à jour le : 2020-01-27
- Catégorie : Sécurité
- URL : https://www.wpmoderne.fr/securite/widget-hubspot-ip-visiteurs-base-legale/

## L’essentiel

- L'adresse IP est une donnée personnelle géolocalisable
- Le widget peut charger avant tout recueil de consentement
- La configuration du blocage par catégorie corrige le problème

Pourquoi un simple widget de chat, installé pour répondre plus vite aux visiteurs, se retrouve-t-il listé dans un registre de traitement comme un flux de données à risque ? La réponse tient en un détail que la documentation marketing du produit mentionne rarement en premier : le script charge des sous-ressources qui transmettent l'adresse IP du visiteur avant même qu'il n'ait cliqué sur la bulle de chat.

Sur ce projet associatif, le délégué à la protection des données a soulevé le point vingt-sept jours après la mise en ligne du widget HubSpot, en préparant un registre de traitement pour une demande d'audit. Le script était présent sur toutes les pages du site, sans distinction, chargé directement depuis le thème.

## Ce que le widget collecte avant tout consentement

Le widget de conversation HubSpot embarque un tracker qui identifie le visiteur, associe sa session à un identifiant persistant stocké en cookie, et journalise sa localisation approximative déduite de l'adresse IP. Cette dernière opération se produit au chargement du script, indépendamment du fait que le visiteur engage ou non une conversation. Or l'adresse IP est considérée comme une donnée à caractère personnel par la CNIL comme par le RGPD, dès lors qu'elle peut, combinée à d'autres informations, permettre d'identifier une personne.

Le problème n'est donc pas l'usage du widget en tant que tel, mais le moment de son chargement : intégré tel quel dans le pied de page du thème, il s'exécute pour chaque visiteur, y compris ceux qui n'ont jamais interagi avec la fenêtre de discussion et qui n'ont pas donné leur consentement à ce traitement.

## Pourquoi la base légale posait problème ici

Le traitement de géolocalisation approximative via l'IP peut se justifier par l'intérêt légitime dans certains contextes commerciaux, mais l'association le proposait sur un site d'information à but non lucratif, sans finalité commerciale évidente justifiant ce suivi, et sans que la politique de confidentialité ne mentionne ce traitement spécifique. Le DPO a considéré qu'aucune des bases légales prévues à l'article 6 du RGPD ne couvrait correctement ce traitement dans ces conditions, ce qui imposait de recueillir un consentement explicite avant chargement.

> L'essentiel à retenir : L'adresse IP est une donnée personnelle géolocalisable ; Le widget peut charger avant tout recueil de consentement ; La configuration du blocage par catégorie corrige le problème

## La correction : charger le widget après consentement

La solution retenue a consisté à retirer le script HubSpot du thème et à le réinjecter conditionnellement, uniquement après acceptation de la catégorie « support et chat » dans la bannière de consentement. Concrètement, le script est désormais inséré dynamiquement via une fonction PHP accrochée à `wp_footer`, mais son exécution reste conditionnée côté JavaScript à un indicateur de consentement stocké après validation de la bannière :

```
document.addEventListener('consentUpdated', function (event) {
  if (event.detail.categories.includes('support_chat')) {
    var script = document.createElement('script');
    script.src = 'https://js.hs-scripts.com/XXXXXXX.js';
    script.async = true;
    document.body.appendChild(script);
  }
});
```

Cette approche évite tout chargement du tracker tant que le visiteur n'a pas fait de choix explicite, y compris pendant l'affichage de la bannière elle-même.

## Documenter le traitement plutôt que le cacher

Au-delà du blocage technique, le registre de traitement de l'association a été mis à jour pour mentionner explicitement HubSpot Chat comme sous-traitant, avec la nature des données transmises (adresse IP, pages consultées, contenu des messages échangés) et la durée de conservation appliquée par défaut par l'éditeur. La politique de confidentialité du site cite désormais ce sous-traitant nommément, ce qui n'était pas le cas auparavant alors que le widget était déjà en ligne.

## Prévention pour les futurs outils tiers

Depuis cet incident, aucun script d'un outil marketing ou support n'est plus intégré directement dans le thème : chaque ajout passe par une revue qui documente, avant la mise en ligne, ce que le script transmet, à quel moment, et sous quelle catégorie de consentement il doit être classé. Cette revue prend la forme d'une checklist courte, remplie avant chaque nouvelle intégration, plutôt que d'une analyse d'impact complète réservée aux traitements les plus sensibles.

## En résumé

Un widget marketing n'est jamais neutre du point de vue de la protection des données, même quand sa finalité affichée est purement fonctionnelle. La bonne pratique consiste à traiter tout script tiers comme un traitement de données à documenter et à conditionner, avant de l'installer, et non après qu'un DPO ou un visiteur attentif ne le signale.
