Consent levels
It's possible to set consent independently for three categories:
- essential cookie consent
- tracking cookie consent
- tracking consent
Essential cookie consent
cookies that are considered essential:
xcConsent
holds information about consent levels:essentialCookieConsent=true|false
saves essential cookie consent (will never be false, because in that case it wouldn't be allowed to be set)trackingConsent=true|false
saves tracking consenttrackingCookieConsent=true|false
saves tracking cookie consent
xcSessId=node...
holds the current session ID
Tracking cookie consent
Saves tracking cookies if enabled. Tracks without cookies when disabled and when selected tracking
implementation(s) support tracking without cookies.
xcVisitorId
for recognizing a user across sessions, advisors or pages (also used for commerce
tracking)
Matomo cookies
_xcpk_ses.[matomoSpaceId].xxx
, e.g._xcpk_ses.33.1fff
: matomo session data_xcpk_id.[matomoSpaceId].xxx
, e.g._xcpk_id.33.1fff
: matomo visitor data
Tracking consent
Tracks the user with the configured tracking implementation(s). If tracking cookie consent is
disabled and a tracking implementation doesn't support tracking without cookies, it does not track.
Setting consent
Integration URL
consent may be set initially via the following integration url parameters
xcEssentialCookieConsent=true|false
for setting essential cookie consentxcTrackingConsent=true|false
for setting tracking consentxcTrackingCookieConsent=true|false
for setting tracking cookie consent
everything defaults to `true` if not set or to the conf key values if they exist.
<!-- begin excentos integration code --> <script src="//stage.excentos.com/demo/DE/app_Bike-Advisor/de_DE/loadadvisor?theme=default&xcEssentialCookieConsent=false&xcTrackingConsent=false&xcTrackingCookieConsent=false"> </script> <!-- end excentos integration code // start content area where Product Guide is displayed --> <div id="xc_application"> <div id="xc_application_pane"></div> <div id="xc_loader"></div> </div> <!-- end excentos content area -->
Global function (advanced)
Once the advisor has been initialised, there is a global function available for changing consent. This may be used to pass consent changes to the advisor:window.xcSetConsent(consent)
with
consent={ trackingConsent: true|false, essentialCookieConsent: true|false, trackingCookieConsent: true|false, }
not all options have to be set. anything that's not passed will stay on the previous setting.
Example usage
enable essential cookies and tracking, disable tracking cookies
window.xcSetConsent({ trackingConsent: true, essentialCookieConsent: true, trackingCookieConsent: false, })
disable tracking, keep all other settings
window.xcSetConsent({ trackingConsent: false, })
Custom implementation
custom implementation by excentos to connect an existing tracking tool via available interfaces to our consent
management
Matomo notes
- matomo is able to run without cookies
- when opting out of matomo, the cookie
mtm_consent_removed
is set- however if tracking is disabled initially, matomo won't be initialized and thus the cookie won't be set - only if it's disabled lateron
- current implementation uses opt-out for matomo because when opt-in is required, cookie opt-in doesn' work anymore