DG and Privacy UX
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Consent Solutions Knowledge Base

Universal Consent Platform

User-added image
Universal Consent Platform 

 
Overview 
 
The Evidon Universal Consent Platform (UCP) provides our customers an easy mechanism to gather consent for all their web properties and provide transparency into the technologies being used on the properties.  The UCP is designed to be easy to configure and implement.  It is also fully customizable so it can match your site designs. 
 
Implementation 
 
Implementing the UCP is a straight-forward process.  Once you are set up for the UCP in the Evidon Privacy application you will need to do the following: 
 
1.  Add one or more domains you want the UCP to be active on. 
 
A. Click the New Notice button to open the configuration wizard.  In there, you add in the web domain you want the UCP to be active on.  
Also add in the different countries where you want to customize the experience.  For example, if you want a non-default experience in France you can add France as a country and configure that experience separately for anyone viewing your site from France. 
 
B. On the next step, select the Theme, which provides the look and feel for the UCP. 
 
C. Next, configure the experience for the countries you have selected.  Add in the different consent types based on the user location and set up any relevant consent settings. 
 
D.
Final step, select the consent tool you wish to display.  The Consent Tool is the dialog provided to the site visitor which allows them to view the technologies being used and exercise their opt-out choices if desired. 
 
E. Advance to the preview to see an example of what the UCP will look like when it is live on your web property.  If you are satisfied, click Finish to save the configuration for the given domain and you are good to go. 
  
2.  Click the "Get Tag" button to pull the UCP script tag. 
 
On the main list page, which shows all the domains you have set up for UCP, you have the ability to access your UCP script.  Click the Get Script button to open the dialog so you can copy your script code and use it for deployment.  
 
3.  Add the script tag to all your web properties. 
 
Take the script you pulled in from step 2 and drop that on your web properties.  If you are going to be consistently adding more properties over time we highly recommend you add the script to all your pages when applicable.  This allows you to set up that property domain in the future and have it be instantly available to that property, no additional deployment required.   Note: When our script runs on a domain that hasn't been configured, it will not execute. 
 
Prior Consent 
 
Prior Consent is the requirement from some regulatory bodies to obtain consent from the site visitor before any non-essential tracking/advertising technologies are used.  The UCP scripts have the ability to support Prior Consent and allow you to meet that regulatory requirement. 
 
We provide 2 ways to support Prior Consent: Tag manager integration and our custom callback function. 
 
Tag manager integration is the easiest way to support Prior Consent.  Unfortunately, we do not have native support for any tag managers except for Google Tag Manager.  If you are using GTM, ask your CSM for documentation on how to set up Prior Consent. 
 
For non-tag manager implementation, you need to refactor your tags a bit so they are dropped from our consent callback.  Here is the callback function (which is part of the UCP script): 
 
window.evidon.priorConsentCallback = function () {        
// add the tags which need to wait for prior consent        
// here.  This should be all your advertising tags and        
// probably most of your social and tracking tags.    
 
When consent is detected (which will be described in the next section), we execute this function from the powering script.  That is the indication it is safe to drop your non-essential technologies.  To drop the technologies, you need to add the scripts to the page manually.  For example, if you are using the following script: 
 
    <script src="https://www.myadvertiser.com" async /> 
 
Instead of dropping that script directly on the page, refactor the script so it is added
after consent, using something like the following block of code: 
 
function append(scriptid, url, async) {        
var d = document, sn = 'script', f = d.getElementsByTagName(sn)[0];        
if (!f) f = d.head;        
var s = d.createElement(sn);        
s.async = true;        
s.id = scriptid;        
s.src=url;        
f.parentNode.insertBefore(s, f);    
}          
append('myadvertiser', 'https://www.myadvertiser.com', true);      
 
That was for a simple advertiser script.  If you are using a tag manager, the script is probably more complex, and we recommend a different type of re-factoring to enable prior consent.  Every script is different, but here is an example of how we recommend the refactoring to happen: 
 
Here is a sample GTM script as supplied from Google (we support native GTM consent so you don't need to do this with GTM, this is just an example): 
 
<script>    
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':    
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],     j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=    'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);    
})(window,document,'script','dataLayer','GTM-XXXXX');
</script> 
 
The above script example is self-executing, so as soon as it is written to the page it will execute.  For prior consent that is undesirable since it will not wait for consent to execute.  Instead, we recommend you reformat the tag in the following manner: 
 
function gtm(w,d,s,l,i){    
w[l]=w[l]||[];w[l].push({'gtm.start':    
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],     j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=    'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
 
That turns the
gtm script into a function that is executed instead of a script block that immediately executes.   
 
In our callback script this would look like the following: 
 
window.evidon.priorConsentCallback = function () {    
function gtm(w,d,s,l,i){        
w[l]=w[l]||[];w[l].push({'gtm.start':        
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],   j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=        'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);    
}          
gtm(window,document,'script','dataLayer','GTM-XXXXX');
 
Prior Consent Marker 
 
Once a user gives consent we drop a cookie to indicate consent.  The name of the cookie is _evidon_consent_cookie.  This cookie is pretty simple, just a marker indicating the user has consented.  When our script executes, it looks for the presence of that cookie.  If found, we immediately trigger the consent callback to tell the hosting page it is ok to drop non-essential technologies.  If the cookie is not found, we will execute the desired consent mechanism (banner or barrier). 
Labels (1)
Version history
Revision #:
2 of 2
Last update:
‎05-15-2019 08:58 PM
Updated by:
 
Contributors
Looking for more?
Ask in Discussions
Developers

Peer-to-peer support  and answers on developing CMS templates, modifying privacy scripts or building integrations.

Digital Experience Management

Find answers and ask questions on content management, personalization and targeting.

Digital Quality Management

Find answers and ask questions on WCAG and SEO quality management.

Digital Governance

Find answers and ask questions on consent and monitoring solutions.