GDPR-compliant Cookie Consent Manager for Shopware 6.6 - 6.7 using the open-source Klaro library.
Important: This plugin is completely self-hosted. The Klaro JavaScript library is bundled with the plugin and served directly from your shop server. No data is sent to external services - neither to Klaro/KIProtect nor to any other third party.
This means:
| Feature | Description |
|---|---|
| Self-Hosted | Klaro library bundled locally - no external dependencies |
| Google Consent Mode v2 | Ready for Google's March 2024 requirements |
| Multi-Sales-Channel | Different configurations per Sales Channel |
| Admin UI | Manage cookie services directly in Shopware Admin |
| Customizable Styling | Colors, position, light/dark theme |
| Cookie Deletion | Automatic cleanup when consent is withdrawn |
| Contextual Consent | Per-embed consent for YouTube, Vimeo, etc. |
| Multi-Language | German and English out of the box |
Installation via the Shopware Store is recommended. After purchase, you can install the plugin directly from the backend.
Add the private Composer repository to your shop's composer.json:
{
"repositories": [
{
"type": "composer",
"url": "https://packeton.markus-michalski.net"
}
]
}
Note: Repository credentials will be provided upon license purchase. Private repositories are managed via Packeton.
composer require mmd/klaro-cookie-consent
When prompted for authentication, enter the credentials provided with your license.
bin/console plugin:refresh
bin/console plugin:install --activate MmdKlaroCookieConsent
bin/console cache:clear
Update to the latest version:
composer update mmd/klaro-cookie-consent
bin/console cache:clear
Navigate to Settings > Extensions > Klaro Cookie Consent to configure:
| Setting | Default | Description |
|---|---|---|
| Active | Off | Enable/disable per Sales Channel |
| Privacy Policy URL | /privacy | Link to your privacy policy page |
| Position | bottom | Banner position: bottom, top, bottom-left, bottom-right |
| Theme | light | Visual theme: light or dark |
| Must Consent | On | User must make a choice before closing |
| Accept All Button | On | Show "Accept All" button |
| Hide Decline All | Off | Hide the "Decline All" button |
| Google Consent Mode | Off | Enable Google Consent Mode v2 integration |
Customize the button colors to match your shop design:
| Setting | Default | Description |
|---|---|---|
| Primary Color | #1a73e8 | "Accept All" button |
| Secondary Color | #2581c4 | "Save Selection" button |
| Decline Color | #5c5c5c | "Decline All" button |
Navigate to Marketing > Klaro Cookie Services to manage your cookie services.
Each service represents a third-party script or cookie that requires user consent:
| Field | Required | Description |
|---|---|---|
| Technical Name | Yes | Unique identifier (lowercase, hyphens allowed, e.g., google-analytics) |
| Title | Yes | Display name shown to users |
| Description | Yes | Explain what this service does and why it's needed |
| Purpose | Yes | Category: functional, analytics, marketing, social |
| Required | No | Essential service that cannot be disabled |
| Default Enabled | No | Pre-selected (not recommended for GDPR) |
| Active | Yes | Enable/disable this service |
| Sales Channels | Yes | Which Sales Channels this service applies to |
When a user withdraws consent, Klaro can automatically delete the associated cookies. Configure cookies in JSON format:
[
{"pattern": "_ga", "path": "/", "domain": ".example.com"},
{"pattern": "_gid"},
{"pattern": "_gat"}
]
| Field | Required | Description |
|---|---|---|
| pattern | Yes | Cookie name or regex pattern |
| path | No | Cookie path (default: /) |
| domain | No | Cookie domain (default: current domain) |
Technical Name: google-analytics
Title (EN): Google Analytics
Title (DE): Google Analytics
Description (EN): Web analytics service that helps us understand how visitors use our website. Collects anonymous usage data.
Description (DE): Webanalyse-Dienst, der uns hilft zu verstehen, wie Besucher unsere Website nutzen. Sammelt anonyme Nutzungsdaten.
Purpose: analytics
Cookies:
[
{"pattern": "_ga", "path": "/", "domain": ".your-shop.com"},
{"pattern": "_ga_*"},
{"pattern": "_gid"},
{"pattern": "_gat"}
]
Technical Name: youtube
Title (EN): YouTube
Title (DE): YouTube
Description (EN): Embedded videos from YouTube. YouTube may set cookies and collect data when you watch videos.
Description (DE): Eingebettete Videos von YouTube. YouTube kann Cookies setzen und Daten erfassen, wenn Sie Videos ansehen.
Purpose: marketing
Contextual Consent Only: Yes (shows placeholder until user consents)
Cookies:
[
{"pattern": "VISITOR_INFO1_LIVE", "domain": ".youtube.com"},
{"pattern": "YSC", "domain": ".youtube.com"},
{"pattern": "GPS", "domain": ".youtube.com"}
]
Technical Name: facebook-pixel
Title (EN): Facebook Pixel
Title (DE): Facebook Pixel
Description (EN): Tracks conversions and enables targeted advertising on Facebook and Instagram.
Description (DE): Verfolgt Conversions und ermöglicht zielgerichtete Werbung auf Facebook und Instagram.
Purpose: marketing
Cookies:
[
{"pattern": "_fbp"},
{"pattern": "fr", "domain": ".facebook.com"}
]
Technical Name: shopware-session
Title (EN): Shop Functionality
Title (DE): Shop-Funktionalität
Description (EN): Essential cookies for shopping cart, user login, and basic shop functionality. Required for the shop to work properly.
Description (DE): Essentielle Cookies für Warenkorb, Benutzer-Login und grundlegende Shop-Funktionalität. Erforderlich für den ordnungsgemäßen Betrieb des Shops.
Purpose: functional
Required: Yes (user cannot disable)
Cookies:
[
{"pattern": "session-"},
{"pattern": "sw-"}
]
When enabled, the plugin automatically initializes Google Consent Mode v2 with denied defaults:
gtag('consent', 'default', {
'ad_storage': 'denied',
'analytics_storage': 'denied',
'ad_user_data': 'denied',
'ad_personalization': 'denied'
});
When users grant consent for analytics/marketing services, the consent state is updated accordingly.
Starting March 2024, Google requires Consent Mode v2 for:
Without proper consent signals, these features will not work in the EEA.
The plugin automatically adds a "Cookie Settings" link to your shop's footer. Users can click this to change their consent preferences at any time.
Commercial License - Single installation license including:
See LICENSE file for full terms.
For questions and support:
Markus Michalski
Email: support@markus-michalski.net