GDPR
v1.1.9
GDPR
- Mises à jour et support inclus pendant 12 mois
- Clé de licence livrée immédiatement par email
- Garantie satisfait ou remboursé 30 jours
- Documentation complète incluse
- Compatible avec les thèmes Hyvä
- Installation prête pour Composer
GDPR / Cookie Consent
Restez conforme au RGPD européen et à l'exigence Google Consent Mode v2 de 2024 sans greffer une banderole SaaS tierce. Ce module dote votre boutique Magento ou Mage-OS d'une bannière de consentement entièrement configurable, d'un opt-in granulaire par catégorie, d'un journal des consentements pour audit, et d'une zone vie privée client native — le tout hébergé sur votre propre infrastructure.
La bannière est conçue pour convertir : layout bar ou modal, mode wall optionnel qui bloque le scroll tant que le consentement n'est pas donné, geo-targeting qui ne l'affiche qu'aux visiteurs concernés, et un bouton flottant persistant pour permettre au client de changer d'avis sans chercher.
À qui ça s'adresse
- Marchands B2B et B2C vendant dans l'EEE, au Royaume-Uni ou en Suisse, où l'application du RGPD et de l'ePrivacy est concrète
- Boutiques utilisant Google Ads remarketing ou GA4 — Consent Mode v2 obligatoire depuis mars 2024
- Marchands qui veulent une stack privacy qu'ils maîtrisent (pas d'abonnement SaaS mensuel, pas de données qui sortent de leurs serveurs)
Bénéfices clés
- Conforme par défaut — quatre catégories de cookies granulaires (necessary, analytics, marketing, functional) avec opt-in par catégorie, conformément aux lignes directrices CNIL, ICO et EDPB.
- Google Consent Mode v2 natif — signaux
analytics_storage,ad_storage,ad_user_dataetad_personalizationgérés automatiquement. Compatible GTM container ID ou GA4 measurement ID. - Bannière orientée conversion — layout bar (haut/bas) ou modal, mode wall optionnel, overlay configurable, couleur primaire personnalisée, textes entièrement éditables par store view.
- Geo-targeting — n'affichez la bannière qu'aux visiteurs EEE/UK/Suisse via CloudFlare
CF-IPCountry(gratuit, recommandé), une HTTP API en fallback, ou la GeoIP native de Magento. Modes whitelist ou blacklist. - Journal des consentements — chaque décision est stockée avec horodatage et source, consultable depuis une grille admin avec export. Widget dashboard avec stats d'acceptation.
- Zone vie privée client — les clients connectés disposent d'une page
/gdpr/account/privacypour consulter leurs données, demander un export ou la suppression de leur compte. - Hyvä, Breeze et Luma — composant Alpine.js pour Hyvä chargé en synchrone pour éviter les race conditions ; JS bundlé pour Breeze ; JS standard pour Luma. Détection automatique du thème.
Compatibilité
- Magento 2.4.x / équivalent Mage-OS
- PHP 8.1, 8.2, 8.3
- Nécessite
wimakeit/module-core3.0.9 ou supérieur - Fonctionne avec les frontends Hyvä, Breeze et Luma
- i18n bundlé : anglais, français, néerlandais
Installez ce module via Composer. Assurez-vous que votre auth.json est configuré avec vos identifiants Wimakeit.
$ composer require wimakeit/module-gdpr:^1.1.9
$ bin/magento setup:upgrade
$ bin/magento setup:di:compile
Installation notes
The standard composer require + setup:upgrade + setup:di:compile flow applies. The points below cover what's specific to this module.
Required dependency
This module requires wimakeit/module-core 3.0.9 or later. Composer will pull it automatically from the Wimakeit registry as long as the registry is declared in your project's composer.json.
ACL permissions
After installation, one ACL resource is registered under System → Permissions → User Roles:
| Resource | Default |
|---|---|
Wimakeit_Gdpr::config (edit module configuration) | granted to Administrator role only |
Configuration
The module ships with safe production defaults. Go to Stores → Configuration → Wimakeit → GDPR / Cookie Consent only if you want to change them.
General settings
| Setting | Default |
|---|---|
| Enable Cookie Consent | Yes |
| Banner Type | bar (alt: modal) |
| Banner Position | bottom (alt: top) |
| Show on First Visit | Yes |
| Consent Lifetime (days) | 365 |
| Show Floating Settings Button | Yes |
| Enable Debug Logging | No — leave off in production |
Cookie categories (default consent)
| Setting | Default |
|---|---|
| Necessary | On — always enabled, not toggleable |
| Analytics Cookies | Off (denied until consent) |
| Marketing Cookies | Off (denied until consent) |
| Functional Cookies | Off (denied until consent) |
Google Consent Mode v2
| Setting | Default |
|---|---|
| Enable Google Consent Mode v2 | Yes |
Default analytics_storage | denied |
Default ad_storage | denied |
Default ad_user_data | denied |
Default ad_personalization | denied |
| GTM Container ID | (empty) |
| GA4 Measurement ID | (empty) |
Banner texts
| Setting | Default |
|---|---|
| Banner Title | "Cookie settings" |
| Banner Description | "We use cookies to improve your experience…" |
| Accept All Button | "Accept all" |
| Reject All Button | "Reject all" |
| Save Preferences Button | "Save preferences" |
| Privacy Policy URL | privacy-policy |
Appearance
| Setting | Default |
|---|---|
| Primary Color | #ef6f14 |
| Show Background Overlay | Yes |
| Wall Mode (block scroll) | No |
Geo-Targeting
| Setting | Default |
|---|---|
| Enable Geo-Targeting | No |
| Mode | whitelist (alt: blacklist) |
| Countries | EEA + UK + NO + IS + LI + CH (pre-filled) |
| Detection Method | cloudflare (alt: HTTP API, Magento GeoIP) |
Cookie scanner
| Setting | Default |
|---|---|
| Known Cookies Definition | Pre-filled JSON for GA, GA4, Facebook Pixel, HubSpot, Hotjar, Tawk, Intercom, Crisp, Magento, PHP, WiMakeIT |
Cron jobs (registered automatically)
| Job | Schedule |
|---|---|
wimakeit_gdpr_purge_old_logs (purge consent logs past retention) | weekly, Sunday at 3 AM |
No setup needed — just make sure Magento cron is running.
Geo-targeting with CloudFlare
If you use CloudFlare in front of Magento, the recommended detection method is cloudflare. It reads the CF-IPCountry request header that CloudFlare injects on every request — free, accurate, no external call. Make sure IP Geolocation is enabled in your CloudFlare dashboard (Network → IP Geolocation).
- Version
- v1.1.9
- Licence
- Abonnement annuel
- Support
- 12 mois
- Dernière mise à jour
- 5 juin 2026
- Magento
- Magento 2.4.4 Magento 2.4.5 Magento 2.4.6 Magento 2.4.7 Mage-OS 2.0 Mage-OS 2.1
- PHP
- PHP 8.1 PHP 8.2 PHP 8.3
- Hyvä
- Compatible
- Package
-
wimakeit/module-gdpr
Vérifier la compatibilité
Indiquez votre stack pour vérifier la compatibilité du module.
Compatibilité 4
Tarification & licence 4
vendor/wimakeit/ après composer require, donc vous pouvez le lire, l'auditer, et le patcher localement pour votre propre installation Magento. Vous ne pouvez PAS le redistribuer, le sous-licencier, le publier sur un registre Composer public, ou le revendre. 1 licence = 1 domaine production + 1 domaine staging/dev (voir les Conditions Générales pour l'EULA complet). Les modules Wimakeit ne sont PAS sur le packagist.org public — ils sont distribués exclusivement via le registre Composer privé packages.wimakeit.be. Installation & mises à jour 6
composer require wimakeit/module-gdpr:^1.1.7, puis bin/magento setup:upgrade, bin/magento setup:di:compile, et enfin bin/magento cache:flush. L'onglet « Installation » de cette page liste chaque étape de configuration (ACLs, crons, valeurs par défaut) — un déploiement prend quelques minutes, pas des heures. Besoin d'aide ? Wimakeit propose des prestations d'installation Magento depuis notre bureau wallon (Presles, entre Charleroi et Namur). auth.json : {"http-basic": {"packages.wimakeit.be": {"username": "VOTRE-EMAIL", "password": "VOTRE-TOKEN"}}}. Étape 3 : enregistrez le repo : composer config repositories.wimakeit composer https://packages.wimakeit.be. Étape 4 : composer require wimakeit/module-gdpr:^1.1.7. Dans les pipelines CI/CD, injectez COMPOSER_AUTH en variable d'environnement JSON pour éviter de commiter auth.json. composer require, même code module, même schéma de base — pas de fork à maintenir, pas de changement de licence. composer update reste sûr à l'intérieur d'une version majeure. app/design/frontend/{VotreVendor}/{theme}/Wimakeit_{Module}/templates/ en respectant le même chemin relatif. Blocks, ViewModels et Helpers s'override via DI preference dans votre propre module custom — déclarez <preference for="Wimakeit\…\OriginalClass" type="VotreVendor\Override\Class" /> dans etc/di.xml. Le XML layout s'étend (préféré) ou s'override de manière standard Magento. Les modules Wimakeit n'utilisent jamais le keyword final sur les classes que vous pourriez raisonnablement vouloir override — surcharger est un scénario de premier ordre, pas un hack. Support & sécurité 3
contact@wimakeit.com avec le nom du module, sa version, votre version Magento/Mage-OS et les étapes pour reproduire. Les correctifs sont livrés dans le prochain patch. Le support Wimakeit répond en français, anglais et néerlandais en jours ouvrables (horaires CET). contact@wimakeit.com avec le préfixe [SECURITY] dans l'objet — précisez le module, la version et les étapes de reproduction. Accusé de réception en jours ouvrables, mention dans le Changelog sur souhait du déclarant. Wimakeit est une SRL belge (société à responsabilité limitée) soumise au droit belge et européen sur la vie privée et la divulgation responsable. À propos de Wimakeit 1
Quelque chose n'est pas couvert par la FAQ ?
Signalez un bug ou posez une question — le formulaire est pré-rempli avec ce module.
Changelog
Categories: Security, Feature, Fix, Perf, Admin, Deps.
[1.1.7] - 2026-05-12
Admin
- Admin dashboard widget code extracted to companion module
wimakeit/module-gdpr-admin-dashboard. The main module is now installable on stores that don't usewimakeit/module-admin-dashboard.
Deps
- To keep the GDPR compliance widget on the admin dashboard, install
wimakeit/module-gdpr-admin-dashboardalongside this module.
[1.1.6] - 2026-05-10
Feature
- New Enable Debug Logging toggle (Stores → Configuration → Wimakeit → GDPR → General), off by default. Delete-request controller and country resolver emit
info/debug/notice/warningonly when the toggle is on;error/criticalalways log.
Perf
- Production stores stop emitting trace lines from the consent/delete flows into
var/log/system.logonce the toggle is left off.
Deps
- Requires
wimakeit/module-core3.0.9+ for the shared debug logger virtual type.
[1.1.5] - 2026-05-08
Admin
- New Wimakeit → GDPR → Settings menu shortcut that opens directly on the
wimakeit_gdprconfiguration section. The rich GDPR menu under Marketing is preserved. - New
Wimakeit_Gdpr::configACL resource so the Settings entry can be granted independently of code edits.
[1.1.4] - 2026-04-29
Deps
- Certified PHP 8.1 → 8.3 support. Composer
phpconstraint tightened to>=8.1 <8.4.
[1.1.3] - 2026-04-21
Fix
- Banner no longer throws
Alpine Expression Error: wmGdprConsent is not definedon Luma whendeferand dynamic Alpine injection raced.cookie-consent.jsis now loaded synchronously so the global is defined before Alpine evaluatesx-data.
[1.1.2] - 2026-04-21
Feature
- Self-registering admin dashboard widget — when
wimakeit/module-admin-dashboardis installed, the GDPR module exposes a compliance-status widget without any glue code.
Admin
- Internal release pipeline standardized (validate, tag, deploy, release stages).
[1.1.1] - 2026-04-20
Fix
- Settings-button icon no longer rendered at 0×0 on Luma themes that leak global button padding — explicit inner SVG size and reset padding restore the icon.
- Banner action buttons (
Accept all/Reject all/Save preferences) now share a uniform height/border-radius andflex: 1 1 140px, so long French labels like "Enregistrer mes choix" no longer spill past the border. - Dark-mode settings-button stroke recoloured from
#888to#cccfor legible contrast on the dark banner background.
[1.1.0] - 2026-04-20
Feature
- Alpine.js is now bundled for Luma themes (Alpine v3.14.8 standalone). Hyvä and Breeze keep using their own Alpine since they already load it. The banner injects Alpine before
cookie-consent.jswhenwindow.Alpineis missing, sox-data/x-cloak/:classdirectives actually process. - Banner texts are now translated. Admin defaults (
Accept all,Reject all, banner title and description) are piped through__()so the FR/EN/NLi18n/*.csvtranslations apply. - Cookie list filters to actually-present cookies. The banner renders only cookies actually set in
document.cookie(wildcard match) instead of every cookie declared in the registry.
[1.0.1] - 2026-04-14
Admin
- Cron and config classes migrated to the shared
AbstractCron/AbstractConfigbases fromwimakeit/module-core— consistent logging and typed getters across all Wimakeit modules. - Composer/Satis distribution archives now exclude internal files (
.gitlab-ci.yml,.claude/,docs/,.gitattributes).
Deps
- Depends on
wimakeit/module-corefor shared cron and config abstractions.
[1.0.0] - 2026-04-13
Feature
- Initial release of Wimakeit GDPR — cookie consent and privacy module for Magento 2 / Mage-OS.
- Cookie consent banner powered by Alpine.js, compatible with Luma, Breeze and Hyvä.
- Admin consent log grid with CSV export — every accept/reject/save is recorded with timestamp, IP (hashed), user-agent and cookie choices.
- Customer privacy page — data export and account-deletion request flow, ready for the "right to be forgotten" and "right to data portability" obligations.
- GeoIP country detection drives consent rules (e.g. apply EU consent flow only to EU visitors).
- Cron purge of old consent log entries based on a configurable retention period.
- Built-in translations for French, English and Dutch (
fr_FR,en_US,nl_NL).
Vous avez trouvé un bug ? Faites-nous-en part.
Un court formulaire s'ouvre dans un nouvel onglet — le nom du module et votre langue sont déjà pré-remplis. Décrivez ce que vous avez tenté, ce qui n'a pas fonctionné, et nous vous répondrons sous un jour ouvré.
Signaler un bug pour GDPRBesoin d'aide ?
Notre équipe est disponible pour vous accompagner dans l'intégration.