# Suppression des cookies lorsque le consentement est retiré

Lorsqu’un utilisateur retire son consentement, il peut être nécessaire de supprimer les cookie précédemment définis (notamment en France). Nous fournissons une **solution simple et personnalisable** pour supprimer automatiquement **first-party cookies** (défini par votre propre domaine) et, éventuellement, déclencher la suppression de cookie server-side ou third-party via des appels API.

Certains cookie spécifiques nécessitent une approche ciblée. Suivez les étapes ci-dessous :

***

### **1. Identifier les cookie à conserver**

Tout d’abord, listez les cookie nécessaires au bon fonctionnement de votre site web.\
Exemples de cookie techniques ou liés au consentement à conserver :

* **TCPID**
* **TC\_PRIVACY**
* **TC\_PRIVACY\_CENTER**

👉 **Comment identifier les cookie essentiels ?**\
Nous fournissons le [**Realtime cookie scanner**](https://doc.commandersact.com/features/realtime-cookie-scanner), qui répertorie tous les cookie présents sur votre site afin de vous aider à identifier ceux qui doivent être conservés.\
Il est recommandé de valider cette liste avec vos équipes techniques ou vos prestataires.

> 💡 **Action :** Utilisez **Cookie Scanner** pour obtenir un inventaire complet des cookie de votre site.

***

### **2. Supprimer automatiquement les cookie non essentiels**

Selon votre configuration, utilisez l’une des approches suivantes :

***

#### **2.1 Si vous utilisez Commanders Act TMS (recommandé)**

Utilisez le tag **"Commanders Act - Cookie Cleanup Tag"** disponible dans la galerie de tags.

Ce tag :

* Écoute automatiquement les événements de retrait du consentement
* Supprime tous les cookie first-party non essentiels
* Gère les variations de domaine
* Permet de configurer des points de terminaison de suppression server-side si nécessaire

👉 C’est la **approche la plus simple et recommandée**, ne nécessitant aucun code personnalisé.

***

#### **2.2 Si vous utilisez un autre TMS (GTM, etc.) ou une implémentation personnalisée**

Utilisez le script JavaScript ci-dessous. Il écoute le retrait du consentement et effectue les actions suivantes :

* Détecte le retrait du consentement
* Supprime les cookie first-party qui ne figurent pas dans votre allowlist
* Appelle éventuellement des points de terminaison server-side pour supprimer les cookie HTTP-only ou third-party

**Intégration :** Vous pouvez ajouter ce script :

* Dans la section JavaScript personnalisé de votre CMP
* Dans votre Tag Management System (GTM, etc.)

**Code JavaScript :**

```javascript
(function () {
  var allowedCookies = ["TCPID", "TC_PRIVACY", "TC_PRIVACY_CENTER"];
  var allowedCookiesPattern = /your_regex_[a-z0-9]*/;

  var serverDeletionUrls = [
    "https://server1.example.com/delete-cookies",
    "https://server2.example2.com/delete-cookies"
  ];

  window.addEventListener("consent.withdrawn", function () {
    var allCookies = document.cookie.split(";").map(function (item) {
      return item.split("=")[0].trim();
    });

    var cookiesForRemoval = allCookies.filter(function (cookieName) {
      return allowedCookies.indexOf(cookieName) === -1 && !allowedCookiesPattern.test(cookieName);
    });

    cookiesForRemoval.forEach(function (cookieName) {
      var hostParts = window.location.hostname.split(".");
      while (hostParts.length > 0) {
        var domainCandidate = "." + hostParts.join(".");
        document.cookie = cookieName + "=;expires=Thu, 01 Jan 1970 00:00:01 GMT;path=/;domain=" + domainCandidate;
        hostParts.shift();
      }
      document.cookie = cookieName + "=;expires=Thu, 01 Jan 1970 00:00:01 GMT;path=/";
    });

    serverDeletionUrls.forEach(function (url) {
      fetch(url, { mode: "no-cors" }).catch(function () {});
    });
  });
})();
```

***

### **3. Supprimer les cookie server-side et third-party**

#### **cookie HTTP-only (server-side)**

Certains cookie sont créés server-side et marqués comme **HTTP-only**, ce qui les rend inaccessibles à JavaScript.

* **Origine :** Vos serveurs ou une infrastructure déléguée (CNAME, proxy, WAF, etc.)

👉 **Que faire :**

* Implémentez une API sur votre serveur pour supprimer ces cookie
* Ajoutez le point de terminaison API à votre configuration de nettoyage

***

#### **cookie third-party**

Ces cookie sont définis par des services externes (publicités, analytics, widgets, etc.).

* **Limitation :** JavaScript ne peut pas les supprimer directement

👉 **Que faire :**

* Demandez aux prestataires s’ils proposent une API ou un point de terminaison de suppression
* Si c’est disponible, appelez ces points de terminaison lorsque le consentement est retiré
* Sinon, reposez-vous sur les propres mécanismes de consentement du prestataire

***

### **4. Ce que cette solution fait (et ne fait pas)**

✅ Supprime les cookie first-party sur votre domaine (sauf ceux de la allowlist)\
✅ Peut déclencher la suppression des cookie HTTP-only et third-party via des appels API\
❌ Ne peut pas supprimer directement les cookie third-party sans le support du prestataire\
❌ Ne peut pas supprimer directement les cookie HTTP-only sans implémentation server-side


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.commandersact.com/fr/fonctionnalites/consent-management/setup-guides/fr-suppression-des-cookies-lors-du-retrait-du-consentement.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
