> For the complete documentation index, see [llms.txt](https://doc.commandersact.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.commandersact.com/fr/fonctionnalites/consent-management/setup-guides/fr-suppression-des-cookies-lors-du-retrait-du-consentement.md).

# Suppression des cookies lorsque le consentement est retiré

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

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

***

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

Tout d’abord, listez les cookies requis pour le bon fonctionnement de votre site web.\
Exemples de cookies techniques ou liés au consentement à conserver :

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

👉 **Comment identifier les cookies essentiels ?**\
Nous fournissons le [**Realtime Cookie Scanner**](https://doc.commandersact.com/features/realtime-cookie-scanner), qui répertorie tous les cookies 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 fournisseurs.

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

***

### **2. Supprimer automatiquement les cookies 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 tag gallery.

Ce tag :

* Écoute automatiquement les événements de retrait du consentement
* Supprime tous les first-party cookies non essentiels
* Gère les variations de domaine
* Permet la configuration de endpoints de suppression server-side si nécessaire

👉 C’est **l’approche la plus simple et recommandée**, sans nécessiter de 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 first-party cookies qui ne figurent pas dans votre allowlist
* Appelle éventuellement des endpoints server-side pour supprimer des cookies HTTP-only ou third-party

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

* Dans la section JavaScript personnalisée 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. Suppression des cookies server-side et third-party**

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

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

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

👉 **Que faire :**

* Implémentez une API sur votre serveur pour supprimer ces cookies
* Ajoutez l’endpoint API à votre configuration de nettoyage

***

#### **Cookies third-party**

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

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

👉 **Que faire :**

* Demandez aux fournisseurs s’ils proposent une API de suppression ou un endpoint
* Si c’est disponible, appelez ces endpoints lorsque le consentement est retiré
* Sinon, appuyez-vous sur les propres mécanismes de consentement du fournisseur

***

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

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


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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.
