CINXE.COM

How to Configure Your Privacy Controls and Cookie Solution (Advanced Guide) - iubenda help

<!DOCTYPE html> <html lang="en" class="no-js"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <meta class="swiftype" name="tags" data-type="string" content="en"> <meta charset="utf-8"> <title>How to Configure Your Privacy Controls and Cookie Solution (Advanced Guide) - iubenda help</title> <meta name="title" content="How to Configure Your Privacy Controls and Cookie Solution (Advanced Guide) - iubenda help"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Language" content="en"> <meta name="locale" content="en"> <meta name="description" content="  ❗️ Update to the default value of the invalidateConsentWithoutLog parameter Please note that starting from 15-01-2023, the value of invalidateConsentWithoutLog has changed and is now set to true. This means that, if you have enabled the Cookie and Consent Preference Log, by default a new consent is requested each time a user’s consent is… Continue reading How to Configure Your Privacy Controls and Cookie Solution (Advanced Guide)"> <meta name="robots" content="index"> <meta name="image" content="https://www.iubenda.com/seo/assets/default.png"> <meta name="twitter:card" content="summary"> <meta name="twitter:title" content="How to Configure Your Privacy Controls and Cookie Solution (Advanced Guide)"> <meta name="twitter:description" content="  ❗️ Update to the default value of the invalidateConsentWithoutLog parameter Please note that starting from 15-01-2023, the value of invalidateConsentWithoutLog has changed and is now set to true. This means that, if you have enabled the Cookie and Consent Preference Log, by default a new consent is requested each time a user’s consent is… Continue reading How to Configure Your Privacy Controls and Cookie Solution (Advanced Guide)"> <meta name="twitter:site" content="@iubenda"> <meta name="twitter:image:src" content="https://www.iubenda.com/seo/assets/default.png"> <meta property="og:title" content="How to Configure Your Privacy Controls and Cookie Solution (Advanced Guide)"> <meta property="og:description" content="  ❗️ Update to the default value of the invalidateConsentWithoutLog parameter Please note that starting from 15-01-2023, the value of invalidateConsentWithoutLog has changed and is now set to true. This means that, if you have enabled the Cookie and Consent Preference Log, by default a new consent is requested each time a user’s consent is… Continue reading How to Configure Your Privacy Controls and Cookie Solution (Advanced Guide)"> <meta property="og:image" content="https://www.iubenda.com/seo/assets/default.png"> <meta property="og:url" content="https://www.iubenda.com/en/help/1205-how-to-configure-your-cookie-solution-advanced-guide"> <meta property="og:site_name" content="iubenda"> <meta property="og:locale" content="en"> <meta property="og:type" content="website"> <meta property="fb:app_id" content="190131204371223"> <script type="application/ld+json">{"@context":"http://schema.org","@type":"Organization","url":"https://www.iubenda.com","name":"iubenda","logo":"https://www.iubenda.com/seo/assets/logo.png","sameAs":["https://www.facebook.com/iubenda","https://www.twitter.com/iubenda"],"aggregateRating":{"@type":"AggregateRating","ratingValue":"4.8","reviewCount":"133"}}</script> <link rel="canonical" href="https://www.iubenda.com/en/help/1205-how-to-configure-your-cookie-solution-advanced-guide" /> <link rel="alternate" href="https://www.iubenda.com/it/help/623-come-configurare-la-cookie-solution-guida-avanzata" hreflang="it" /> <link rel="alternate" href="https://www.iubenda.com/en/help/1205-how-to-configure-your-cookie-solution-advanced-guide" hreflang="en" /> <link rel="alternate" href="https://www.iubenda.com/de/help/126446-so-konfigurieren-sie-ihre-cookie-solution-erweiterte-anleitung" hreflang="de" /> <link rel="alternate" href="https://www.iubenda.com/es/help/37536-como-configurar-tu-cookie-solution-guia-avanzada" hreflang="es" /> <link rel="alternate" href="https://www.iubenda.com/fr/help/55533-comment-configurer-votre-cookie-solution-guide-detaille" hreflang="fr" /> <link rel="alternate" href="https://www.iubenda.com/pt-br/help/37472-como-configurar-sua-cookie-solution-guia-avancado" hreflang="pt-BR" /> <link rel="alternate" href="https://www.iubenda.com/nl/help/106790-how-to-configure-your-cookie-solution-advanced-guide" hreflang="nl" /> <meta name="csrf-param" content="authenticity_token" /> <meta name="csrf-token" content="eh6GrI8hHkX_fHbWOPBf3QkZJuUUn04-rPwqv8_30yBmzJECfUHiJ16UCS6NJyiliayLE1ip5MFmf9L6S-r1qg" /> <meta name="csp-nonce" content="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" /> <link nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" rel="preload" href="/assets/site-314e4e6152ff2dd794db7bab6963ff3ce11faa99762b3abac29741922f96eccb.js" as="script"> <link nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" rel="preload" href="/assets/core-ffc7831de07148fc03f772a1ff267ebd35acf5a1f3edd2f1c45c40933bd946ed.css" as="style"> <link nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" rel="preload" as="script" href="/assets/builds/growthbook-5cfc0ab4c04b3cdc6f4e.js"> <link nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" rel="preload" href="/assets/app-41e048d0cbf6e83bc7cc82a1f62755c1cbba8aadf4f1fc5044e61468f2a0a5a0.js" as="script"> <link nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" rel="preload" href="/assets/help-3b6462ab1db354f81c56a65e4037e1bfe0110c57f541d4ecc1e0dbf3b282b70d.js" as="script"> <link nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" rel="preload" href="https://cdn.iubenda.com/cons/beta/iubenda_cons.js" as="script"> <link rel="preload" as="font" href="/assets/hk-grotesk/HKGrotesk-Medium-9c3fd6d5af782a4511dc56bc490a29d341f5f775a1473d9498abc91e0fe793db.woff2" type="font/woff2" crossorigin> <link rel="preload" as="font" href="/assets/icons/iubenda-519eefd5e2627f078cb37ad800d0876b5986439f792cc1ae8df4a4cbc4c5e660.woff" type="font/woff2" crossorigin> <link rel="preload" as="font" href="/assets/hk-grotesk/HKGrotesk-Regular-f089423b22171f8b5954000d1136ad533e7c6942974875d514b75477680b2ac9.woff2" type="font/woff2" crossorigin> <link rel="preload" as="font" href="/assets/hk-grotesk/HKGrotesk-Bold-c10fcca174a9767aab6fa40c8c39ce42a696a48fd3091732280196a1042e3abb.woff2" type="font/woff2" crossorigin> <link rel="preload" as="font" href="/assets/hk-grotesk/HKGrotesk-Light-abd02846fe10b12c6394b41fd7ac3914ca8cbf09234e0001d696c724ae44102b.woff2" type="font/woff2" crossorigin> <link rel="preload" as="font" href="/assets/hk-grotesk/HKGrotesk-Italic-4a89ad60aaf82464ae047d83a45fc663f62823f102bcc8e9c8429dbc36ccd6f4.woff2" type="font/woff2" crossorigin> <link rel="preload" as="font" href="/assets/tisa/light-italic-318917ed1d2496362d0f10cf4cbc0f042223eb68d6c355159f93a6c67aa59fef.woff2" type="font/woff2" crossorigin> <link rel="preload" as="font" href="/assets/tisa/light-2d8a5a0678adfb941a86c53ab436176bbeba11994c0da2be4ef1f6902079c121.woff2" type="font/woff2" crossorigin> <link rel="preload" as="font" href="/assets/tisa/regular-italic-0e9999012ee0ca260e0ab1aaeeb21d60b6853ebf38fb09bf228be80cb2ef69a9.woff2" type="font/woff2" crossorigin> <link rel="preload" as="font" href="/assets/tisa/regular-833a2fba288bd5d9fcbdc7a268303eeeb6fe71f902ba7422c04ab9dcb19a7311.woff2" type="font/woff2" crossorigin> <link rel="stylesheet" href="/assets/core-ffc7831de07148fc03f772a1ff267ebd35acf5a1f3edd2f1c45c40933bd946ed.css" /> <link rel="preload" href="/assets/help-de56e2adf05bb2e958739ac773721cad924ffdebe199943fb4988e6a150d56e1.css" as="style"> <link rel="stylesheet" href="/assets/help-de56e2adf05bb2e958739ac773721cad924ffdebe199943fb4988e6a150d56e1.css" /> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ window.phraseappEnabled = null if (window.phraseappEnabled) { document.addEventListener('DOMContentLoaded', function() { $('body').on('click', '.pi_bc', function () { $('#iubenda-modal').removeAttr('tabindex'); }); }); } //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ window.CSP_NONCE = "6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"; //]]> </script> <script src="/assets/site-314e4e6152ff2dd794db7bab6963ff3ce11faa99762b3abac29741922f96eccb.js" nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"></script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ I18n.defaultLocale = "en"; I18n.locale = "en"; //]]> </script> <script src="/assets/app-41e048d0cbf6e83bc7cc82a1f62755c1cbba8aadf4f1fc5044e61468f2a0a5a0.js" nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"></script> <script src="/assets/builds/runtime-fa8add5d500e2d02bc6b.js" async="async" nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"></script> <script src="/assets/help-3b6462ab1db354f81c56a65e4037e1bfe0110c57f541d4ecc1e0dbf3b282b70d.js" nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"></script> <link rel="P3Pv1" href="https://www.iubenda.com/w3c/p3p.xml"> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ var _iub = _iub || {}; _iub.cons = _iub.cons || {}; _iub.cons.api_base_url = 'https://consent.iubenda.com/beta/public/'; _iub.cons_instructions = _iub.cons_instructions || []; _iub.cons_instructions.push(['init', { api_key: 'TxVC3QW2DacksiUzfazNBocfStJA2s9O', log_level: 'error', sendFromLocalStorageAtLoad: true, }]); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" id="cons_script" src="https://cdn.iubenda.com/cons/beta/iubenda_cons.js" async="async"> //<![CDATA[ //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ document.getElementById('cons_script').onload = function() { _iub.cons.api_base_url = 'https://consent.iubenda.com/beta/public/' } //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ (function() { window._iub = window._iub || []; _iub.csConfiguration = { "cookiePolicyId": 252372, "siteId": 1, "lang": 'en', "logLevel": 'error', "enableRemoteConsent": false, "consentOnScroll": false, "enableUspr": true, "enableLgpd": true, "countryDetection": true, "perPurposeConsent": true, "whitelabel": false, "floatingPreferencesButtonDisplay": true, "consentOnContinuedBrowsing": false, "promptToAcceptOnBlockedElements": true, "banner": { "position": "float-top-center", "acceptButtonDisplay": true, "customizeButtonDisplay": true, "rejectButtonDisplay": true, "useCustomBrand": true, "brandTextColor": "#FFF", "brandBackgroundColor": "#1CC691", "acceptButtonColor": "#0073CE", "acceptButtonCaptionColor": "white", "customizeButtonColor": "#DADADA", "customizeButtonCaptionColor": "#4D4D4D", "rejectButtonColor": "#0073CE", "rejectButtonCaptionColor": "white", "textColor": "black", "backgroundColor": "white", "logo": "/assets/site/general/logo-whiteongreen-18a11ce988ecc91e9cd5433bcdc55e4023983ea75b8542ca108728f511881cf1.svg", "closeButtonRejects": true }, callback: { onActivationDone: function() { window.csActivationCompleted.resolve(); }, onPreferenceExpressedOrNotNeeded: function(prefs) { const preferences = _iub.cs.api.getPreferences(); if (typeof preferences.id === 'undefined') { return; } // Handle quiz buttons for pricing pages const quizBtns = document.querySelectorAll(".appcues-quiz-btn"); if (preferences.purposes && preferences.purposes['4'] === true && preferences.purposes['5'] === true) { if( quizBtns.length > 0 ) { quizBtns.forEach( btn => { btn.classList.remove("disabled"); const alerts = document.querySelectorAll(".appcues-quiz-alert") alerts.forEach( alert => { alert.classList.add("d-none"); }); }); } } else { if( quizBtns.length > 0 ) { quizBtns.forEach( btn => { btn.classList.add("disabled"); const alerts = document.querySelectorAll(".appcues-quiz-alert") alerts.forEach( alert => { alert.classList.remove("d-none"); }); }); } } // Handle login button for Google Ads Login page const loginBtn = document.querySelector(".google-login-page .btn-google-oauth"); if (preferences.purposes && preferences.purposes['2'] === true) { if( loginBtn ) { loginBtn.classList.remove("disabled"); loginBtn.disabled = false; document.querySelector(".google-login-alert").classList.add("d-none"); } } else { if( loginBtn ) { loginBtn.classList.add("disabled"); loginBtn.disabled = true; document.querySelector(".google-login-alert").classList.remove("d-none"); } } // Handle chat button on dashboard sidebar const supportChatBtn = document.querySelector("#chat_support_box_button"); if( supportChatBtn ) { if (preferences.purposes && preferences.purposes['2'] === true && preferences.purposes['3'] === true && preferences.purposes['4'] === true && preferences.purposes['5'] === true) { document.querySelector("#support_box_accordion").classList.add("d-none"); supportChatBtn.classList.remove("d-none"); } } } }, "floatingPreferencesButtonZIndex": 1000, }; if (I18n.locale === 'da') { _iub.csConfiguration.banner.showPurposesToggles = true; } window.csActivationCompleted = jQuery.Deferred(); })(); //]]> </script> <script src="https://cs.iubenda.com/sync/252372.js" nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"></script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ gtag('set', 'url_passthrough', true); //]]> </script> <!-- <script src="//cdn.iubenda.com/cs/debugger.js"></script> --> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" type="text/javascript" src="//cdn.iubenda.com/cs/gpp/beta/stub.js"></script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" type="text/javascript" src= "//cdn.iubenda.com/cs/beta/iubenda_cs.js" charset="UTF-8" async></script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" type="text/plain" class="_iub_cs_activate" data-iub-purposes="5"> //<![CDATA[ (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; var n = d.querySelector('[nonce]'); n && j.setAttribute('nonce', n.nonce || n.getAttribute('nonce')); f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-PJDQKV'); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" type="text/plain" class="_iub_cs_activate" data-iub-purposes="5"> //<![CDATA[ (function(l,e,a,d,i,n,f,o){if(!l[i]){l.GlobalLeadinfoNamespace=l.GlobalLeadinfoNamespace||[]; l.GlobalLeadinfoNamespace.push(i);l[i]=function(){(l[i].q=l[i].q||[]).push(arguments)};l[i].t=l[i].t||n; l[i].q=l[i].q||[];o=e.createElement(a);f=e.getElementsByTagName(a)[0];o.async=1;o.src=d;f.parentNode.insertBefore(o,f);} }(window,document,'script','https://cdn.leadinfo.eu/ping.js','leadinfo','LI-665876B09328F')); //]]> </script> <link rel="shortcut icon" href="/favicon.ico"> <link rel="icon" type="image/png" href="/favicon.png"> <link rel="apple-touch-icon" href="/touch-icon-iphone.png"> </head> <body> <div class="top_bar" id="alert_msg" style="display:none;"> <div class="alert-message warning top"> <button id="alert-msg-site-close-button" class="close">&times;</button> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ document.querySelector('#alert-msg-site-close-button').addEventListener("click", function() { hideAlertMsg(); return false; }); //]]> </script> </div> </div> <header class="iub-header"> <div class="bg-gray-4 text-sm text-light py-2"> <div id="headerContainer" class="container"> <div class="d-flex justify-content-between align-items-center"> <div class="d-flex align-items-center"> <div> <ul class="list-unstyled mb-0 d-flex align-items-center"> <li class="list-inline-item"> <div class="dropdown"> <button class="btn btn-sm btn-faded-05 text-light dropdown-toggle rounded" type="button" id="dropdown-language" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <i class="i-world mr-1 align-middle"></i><span>English</span> </button> <div class="lang_selector dropdown-menu" aria-labelledby="dropdown-language"> <a class="dropdown-item" data-locale="en" href="/en/help/1205-how-to-configure-your-cookie-solution-advanced-guide" title="iubenda - privacy policy generator - English version">English </a> <a class="dropdown-item" data-locale="it" href="/it/help/623-come-configurare-la-cookie-solution-guida-avanzata" title="iubenda - generatore di privacy policy - versione italiana">Italiano </a> <a class="dropdown-item" data-locale="de" href="/de/help/126446-so-konfigurieren-sie-ihre-cookie-solution-erweiterte-anleitung" title="iubenda - Datenschutzerklärung-Generator - Deutsche Version">Deutsch </a> <a class="dropdown-item" data-locale="es" href="/es/help/37536-como-configurar-tu-cookie-solution-guia-avanzada" title="iubenda - generador de políticas de privacidad - versión en español">Español </a> <a class="dropdown-item" data-locale="fr" href="/fr/help/55533-comment-configurer-votre-cookie-solution-guide-detaille" title="iubenda - générateur de politique de confidentialité - version française">Français </a> <a class="dropdown-item" data-locale="pt-BR" href="/pt-br/help/37472-como-configurar-sua-cookie-solution-guia-avancado" title="iubenda - gerador de política de privacidade - versão em português">Português (BR) </a> <a class="dropdown-item" data-locale="nl" href="/nl/help/106790-how-to-configure-your-cookie-solution-advanced-guide" title="iubenda - privacybeleid-generator - Nederlandstalige versie">Nederlands </a> <a class="dropdown-item" data-locale="da" href="/da/help" title="iubenda – generator af privatlivspolitik – Dansk version">Dansk </a> <a class="dropdown-item" data-locale="pt" href="/pt/help" title="iubenda - gerador de política de privacidade - versão em português">Português </a> </div> </div> </li> <li class="list-inline-item d-none d-lg-flex"> <span class="unread-wrap flex-shrink"></span> </li> </ul> </div> <div id="appcues-launchpad"></div> </div> <div class="text-right"> <ul class="list-unstyled mb-0 d-flex align-items-center"> <li class="list-inline-item mr-2"><a data-lightbox=true href="/en/login?ref=header">Login</a></li> <li class="list-inline-item"><a data-lightbox=true href="/en/signup" class="btn btn-sm btn-dark text-white js-header-signup-button">Sign up</a></li> </ul> </div> </div> </div> </div> <div class="bg-white"> <div class="container"> <div class="row justify-content-between pt-3 pb-3"> <div class="col-8 d-block d-lg-flex"> <a href="/en/" class="d-inline-block mr-5"> <img width="92" height="33" alt="Iubenda logo" data-lazy-src="/assets/site/general/logo-bfafd02b1fe7dcf519f04f8f0a03c74573d4e051c3a18ae9aa39bdf0cb2b9ec6.svg" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img width="92" height="33" alt="Iubenda logo" src="/assets/site/general/logo-bfafd02b1fe7dcf519f04f8f0a03c74573d4e051c3a18ae9aa39bdf0cb2b9ec6.svg" /> </noscript> </a> <ul class="d-block d-lg-flex list-unstyled mb-0 d-inline-block mainmenu" id="mainMenu" itemscope itemtype="http://schema.org/SiteNavigationElement"> <li class="align-self-center has-nav"> <span class="lh-2 p-3">Products and services</span> <nav class="text-sm"> <div class="p-4"> <div class="mb-4"> <p class="serif text-light">A complete set of solutions to make your website or app compliant with the law, on multiple languages and legislations</p> <ul class="list-unstyled mb-0"> <li class="list-inline-item d-block d-md-inline-block mr-md-0 mb-md-2"> <a href="/en/overview" class="btn btn-sm btn-outline-primary d-block">Overview</a> </li> <li class="list-inline-item d-block d-md-inline-block mr-md-0 mb-md-2"> <a href="/en/pricing" class="btn btn-sm btn-outline-primary d-block">Pricing</a> </li> </ul> </div> <div class="row line-between-columns"> <div class="col-lg"> <div class="d-flex"> <div class="mr-3"> <img width="72" height="72" alt="Privacy Policy icon" data-lazy-src="/assets/site/products/privacy_policy-6641fa252acadc2d7bbbb2ba7a127e9765cacbbb50f11264df6bcb68e657e81c.svg" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img width="72" height="72" alt="Privacy Policy icon" src="/assets/site/products/privacy_policy-6641fa252acadc2d7bbbb2ba7a127e9765cacbbb50f11264df6bcb68e657e81c.svg" /> </noscript> </div> <div> <div class="products_tags mb-3"> <div><i class="i-check mr-1 text-md"></i>For websites/apps</div> </div> <h4 class="text-sm mb-1"><a href="/en/privacy-and-cookie-policy-generator">Privacy and Cookie Policy Generator</a></h4> <div class="d-block d-lg-none"> <button role="link" class="btn btn-primary btn-sm text-white rarr js-redirect-button" data-url="/en/privacy-and-cookie-policy-generator">Explore</button> </div> <div class="d-none d-lg-block"> <p class="text-muted serif text-sm">Create your privacy and cookie policy in minutes.<br /><br /> Customizable from 2000+ clauses, available in 14 languages and automatically updated if the law changes, our generator allows you to create a legal document in minutes and seamlessly integrate it with your website or app.</p> <button role="link" class="btn btn-primary btn-sm text-white rarr js-redirect-button" data-url="/en/privacy-and-cookie-policy-generator">Explore</button> <ul class="list-unstyled mb-3 mt-3"> <li class="list-inline-item mr-2"><a href="/en/features#privacy-and-cookie-policy" class="link-underline line-highlight">Features</a></li> <li class="list-inline-item"><a href="/en/help/463-generate-privacy-policy" class="link-underline line-highlight">Documentation and guides</a></li> </ul> </div> </div> </div> </div> <div class="col-lg"> <div class="d-flex"> <div class="mr-3"> <img width="72" height="72" alt="Cookie Solution icon" data-lazy-src="/assets/site/products/cookie_solution-7c6de9a79e77ad5d6e4cc5bae39b4fc1ed83d7425fa260cb612ef4e86eec1493.svg" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img width="72" height="72" alt="Cookie Solution icon" src="/assets/site/products/cookie_solution-7c6de9a79e77ad5d6e4cc5bae39b4fc1ed83d7425fa260cb612ef4e86eec1493.svg" /> </noscript> </div> <div > <div class="products_tags mb-3"> <div><i class="i-check mr-1 text-md"></i>For websites/apps</div> </div> <h4 class="text-sm mb-1"><a href="/en/cookie-solution">Privacy Controls and Cookie Solution</a></h4> <div class="d-block d-lg-none"> <button class="btn btn-primary btn-sm text-white rarr js-redirect-button" role="link" data-url="/en/cookie-solution">Explore</button> </div> <div class="d-none d-lg-block"> <p class="text-muted serif text-sm">Manage consent preferences for the ePrivacy, GDPR, CPRA (CCPA amendment) and LGPD. Integrated with the IAB TCF and CCPA Compliance Framework.<br /><br /> Our solution allows you to display a fully customizable cookie banner/consent banner, collect cookie consent, implement prior blocking (including auto-blocking), set advertising preferences, and more.</p> <button class="btn btn-primary btn-sm text-white rarr js-redirect-button" role="link" data-url="/en/cookie-solution">Explore</button> <ul class="list-unstyled mb-3 mt-3"> <li class="list-inline-item mr-2"><a href="/en/features#cookie-solution" class="link-underline line-highlight">Features</a></li> <li class="list-inline-item mr-2"><a href="/en/help/1177-cookie-solution-getting-started" class="link-underline line-highlight">Documentation and guides</a></li> </ul> </div> </div> </div> </div> <div class="col-lg"> <div class="d-flex"> <div class="mr-3"> <img width="72" height="72" alt="Terms and Conditions icon" data-lazy-src="/assets/site/products/terms_and_conditions-b2ecac04071503f53269125183052405bee78d8199cd799047bf382eaf79e6c3.svg" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img width="72" height="72" alt="Terms and Conditions icon" src="/assets/site/products/terms_and_conditions-b2ecac04071503f53269125183052405bee78d8199cd799047bf382eaf79e6c3.svg" /> </noscript> </div> <div > <div class="products_tags mb-3"> <div><i class="i-check mr-1 text-md"></i>For websites/apps</div> </div> <h4 class="text-sm mb-1"><a href="/en/terms-and-conditions-generator">Terms and Conditions Generator</a></h4> <div class="d-block d-lg-none"> <button class="btn btn-primary btn-sm text-white rarr js-redirect-button" role="link" data-url="/en/terms-and-conditions-generator">Explore</button> </div> <div class="d-none d-lg-block"> <p class="text-muted serif text-sm">Create your terms and conditions in minutes.<br /><br />Customizable from hundreds of combinations, available in 14 languages, powerful and precise — our solution is capable of handling even the most complex, individual scenarios. Optimized for e-commerce, marketplace, SaaS, apps and more.</p> <button class="btn btn-primary btn-sm text-white rarr js-redirect-button" role="link" data-url="/en/terms-and-conditions-generator">Explore</button> <ul class="list-unstyled mb-3 mt-3"> <li class="list-inline-item mr-2"><a href="/en/features#terms-and-conditions" class="link-underline line-highlight">Features</a></li> <li class="list-inline-item mr-2"><a href="/en/help/19461-how-to-generate-terms-and-conditions" class="link-underline line-highlight">Documentation and guides</a></li> </ul> </div> </div> </div> </div> </div> </div> <hr class="m-0"> <div class="p-4"> <div class="row line-between-columns"> <div class="col-lg"> <div class="d-flex"> <div class="mr-3"> <img width="72" height="72" alt="Whistleblowing Management Tool icon" data-lazy-src="/assets/site/products/whistleblowing_management_tool-ac418c64cbbf6682be183ece94551a4d57d581829315827ab215e2b4e3bd1ed6.svg" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img width="72" height="72" alt="Whistleblowing Management Tool icon" src="/assets/site/products/whistleblowing_management_tool-ac418c64cbbf6682be183ece94551a4d57d581829315827ab215e2b4e3bd1ed6.svg" /> </noscript> </div> <div> <div class="products_tags mb-3"> <div><i class="i-check mr-1 text-md"></i>For organizations</div> </div> <h4 class="text-sm mb-1"><a href="/en/whistleblowing-management-tool">Whistleblowing Management Tool</a></h4> <div class="d-block d-lg-none"> <button class="btn btn-primary btn-sm text-white rarr js-redirect-button" role="link" data-url="/en/whistleblowing-management-tool">Explore</button> </div> <div class="d-none d-lg-block"> <p class="text-muted serif text-sm">Provide an easy-to-use internal reporting channel as required by the EU Whistleblower Directive for organizations with 50+ employees. Instantly generate your forms to embed or print. <br><br> Collect and manage whistleblower reports from employees and other individuals connected to your organization while safeguarding their identities and ensuring confidentiality. Tailored for EU businesses and global organizations dedicated to ethical transparency.</p> <button class="btn btn-primary btn-sm text-white rarr js-redirect-button" role="link" data-url="/en/whistleblowing-management-tool">Explore</button> <ul class="list-unstyled mb-3 mt-3"> <li class="list-inline-item mr-2"><a href="/en/features#whistleblower" class="link-underline line-highlight">Features</a></li> <li class="list-inline-item"><a href="https://www.iubenda.com/en/help/141269-eu-whistleblower-directive-guide-iubenda-tool" class="link-underline line-highlight">Documentation and guides</a></li> </ul> </div> </div> </div> </div> <div class="col-lg"> <div class="d-flex"> <div class="mr-3"> <img width="72" height="72" alt="Consent Solution icon" data-lazy-src="/assets/site/products/consent_solution-aa3b8ec9c422f9c7b1c30bf3ec445232ea3c36df666784b2add0329bf1dcc1bf.svg" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img width="72" height="72" alt="Consent Solution icon" src="/assets/site/products/consent_solution-aa3b8ec9c422f9c7b1c30bf3ec445232ea3c36df666784b2add0329bf1dcc1bf.svg" /> </noscript> </div> <div> <div class="products_tags mb-3"> <div class="mb-1"><i class="i-check mr-1 text-md"></i>For websites/apps</div> <div><i class="i-check mr-1 text-md"></i>For organizations</div> </div> <h4 class="text-sm mb-1"><a href="/en/consent-solution">Consent Database</a></h4> <div class="d-block d-lg-none"> <button class="btn btn-primary btn-sm text-white rarr js-redirect-button" role="link" data-url="/en/consent-solution">Explore</button> </div> <div class="d-none d-lg-block"> <p class="text-muted serif text-sm">Collect GDPR & LGPD consent, document opt-ins and <a href="/en/help/19133#right-to-opt-out" class="link-underline text-dark">CPRA (CCPA amendment) opt-outs</a> via your web forms.<br /><br /> Our solution smoothly integrates with your consent collection forms, syncs with your legal documents and includes a user-friendly dashboard for reviewing consent records of your activities.</p> <button class="btn btn-primary btn-sm text-white rarr js-redirect-button" role="link" data-url="/en/consent-solution">Explore</button> <ul class="list-unstyled mb-3 mt-3"> <li class="list-inline-item mr-2"><a href="/en/features#consent-solution" class="link-underline line-highlight">Features</a></li> <li class="list-inline-item"><a href="/en/help/6469-consent-solution-getting-started" class="link-underline line-highlight">Documentation and guides</a></li> </ul> </div> </div> </div> </div> <div class="col-lg"> <div class="d-flex"> <div class="mr-3"> <img width="72" height="72" alt="IPM icon" data-lazy-src="/images/site/products/ipm.svg" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img width="72" height="72" alt="IPM icon" src="/images/site/products/ipm.svg" /> </noscript> </div> <div > <div class="products_tags mb-3"> <div class="mb-1"><i class="i-check mr-1 text-md"></i>For websites/apps</div> <div><i class="i-check mr-1 text-md"></i>For organizations</div> </div> <h4 class="text-sm mb-1"><a href="/en/internal-privacy-management">Register of Data Processing Activities</a></h4> <div class="d-block d-lg-none"> <button class="btn btn-primary btn-sm text-white rarr js-redirect-button" role="link" data-url="/en/internal-privacy-management">Explore</button> </div> <div class="d-none d-lg-block"> <p class="text-muted serif text-sm">Document all the data processing activity within your organization.<br /><br /> To comply with privacy laws, and particularly the GDPR, companies need to record how they store and use the data they collect from their users. Our solution allows you to easily document all the data processing activities within your organization.</p> <button class="btn btn-primary btn-sm text-white rarr js-redirect-button" role="link" data-url="/en/internal-privacy-management">Explore</button> <ul class="list-unstyled mb-3 mt-3"> <li class="list-inline-item mr-2"><a href="/en/features#internal-privacy-management" class="link-underline line-highlight">Features</a></li> <li class="list-inline-item"><a href="/en/help/6311-internal-privacy-management-getting-started" class="link-underline line-highlight">Documentation and guides</a></li> </ul> </div> </div> </div> </div> </div> </div> <div class="p-2 bg-faded-5-gray text-dark" style="border-top: 1px solid rgba(0,0,0,0.1)"> <div class="d-block d-lg-flex align-items-center justify-content-between text-md"> <div class="col-lg"> Not sure what you need? <a href="/en/help/5463" class="rarr link-underline line-highlight line-light-blue text-secondary"> Getting started guide </a> </div> <div class="col-lg text-right"> <a href="https://www.iubenda.com/blog/" class="btn btn-dark-gray text-dark d-block d-md-inline-block mb-2 mb-lg-0">Blog</a> <a href="mailto:info@iubenda.com" data-elevio-module="2" data-elevio-style="nothing" class="btn btn-dark-gray text-dark d-block d-md-inline-block">Contact us</a> </div> </div> </div> </nav> </li> <li class="align-self-center has-nav"> <a class="pricing-link" href="/en/pricing"><span class="lh-2 p-3">Pricing</span></a> </li> <li class="align-self-center has-nav"> <span class="lh-2 p-3">iubenda for...</span> <nav class="text-sm sm"> <div class="p-4 overflow-auto"> <div class="mb-4"> <h3 class="text-lg">Use cases</h3> <p class="serif text-light">Some of the ways you can use iubenda</p> <ul class="list-unstyled mb-3 mt-3 text-nowrap"> <li> <a href="/en/us-privacy-law-compliance" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for the US </a> </li> <li> <a href="/en/gdpr" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for GDPR </a> </li> <li> <a href="/en/fadp" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for FADP </a> </li> <li> <a href="/en/lgpd" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for LGPD </a> </li> <li> <a href="/en/mobile" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for mobile apps </a> </li> <li> <a href="/en/facebook" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for Facebook apps </a> </li> <li> <a href="/en/partner-program" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for Agencies </a> </li> <li> <a href="/en/enterprise" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for Enterprise companies </a> </li> <li> <a href="https://www.iubenda.com/en/help/149409-join-the-iubenda-affiliate-program" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for Affiliates </a> </li> <li> <a href="https://www.iubenda.com/en/help/132915-iubenda-for-publishers" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for Publishers </a> </li> <li> <a href="/en/google-consent-mode-v2-certified-cmp" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for Google Consent Mode </a> </li> <li> <a href="https://www.iubenda.com/en/help/139694-rejection-recovery-boost-consent-rates" class="link-underline line-highlight line-green text-green-dark rarr"> iubenda for Consent optimization </a> </li> </ul> </div> </div> </nav> </li> </ul> </div> <div class="col text-right"> <a href="/en/start-generating?wizard=true" data-has-close-button="true" data-close-on-click="false" class="btn btn-primary text-white d-none d-lg-inline-block lightbox"> Start generating </a> <div id="hamburgerButton" class="hamburger d-inline-block d-lg-none"> <span></span> <span></span> <span></span> </div> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ $('#hamburgerButton').on('click', function () { $(this).toggleClass('active'); $('#mainMenu').toggleClass('show'); }); //]]> </script> </div> </div> </div> </div> </header> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ $(document).ready(function() { $('#headerContainer').find('[data-toggle="tooltip"]').tooltip() $('#team-select-mobile, #team-select-desktop').on('change', function() { var switchPath = $(this).val(); $.post(switchPath, {}, function(response) { window.location = response.redirect_url; }); }); $('.select-team').on('click', function(e) { // avoid triggering the toggle of the parent dropdown e.stopPropagation(); }); document.querySelectorAll('.js-redirect-button').forEach(function(button) { button.addEventListener('click', function() { window.location.href = button.getAttribute('data-url'); }); }); }); //]]> </script><script src="/assets/site/dropdown_component-4701934910eeccad9109.js" nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"></script> <style type="text/css"> /* Prettify */ .com { color: #93a1a1; } .lit { color: #195f91; } .pun, .opn, .clo { color: #93a1a1; } .fun { color: #dc322f; } .str, .atv { color: #268bd2; } .kwd, .tag { color: #195f91; } .typ, .atn, .dec, .var { color: #CB4B16; } .pln { color: #93a1a1; } pre.prettyprint { background: #fefbf3; /* padding: 9px; border: 1px solid rgba(0,0,0,.2); -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.1); -moz-box-shadow: 0 1px 2px rgba(0,0,0,.1); box-shadow: 0 1px 2px rgba(0,0,0,.1); max-width: 630px; font-size: 12px; */ border:0; margin: 2rem auto; width: 90%; box-shadow: 0 16px 32px rgba(0,0,0,0.1); border-radius: 6px; padding: 1rem; background-color: rgba(255, 222, 171, 0.16); } .help_page .post_body pre.prettyprint ol li { font-size: 12px; } /* Specify class=linenums on a pre to get line numbering */ ol.linenums { margin: 0 0 0 0; } /* IE indents via margin-left */ ol.linenums li { color: rgba(0,0,0,.15)} /* Alternate shading for lines */ .prettyprint li, .help_page .post_body .prettyprint li { padding-bottom: 0 } li.L1, li.L3, li.L5, li.L7, li.L9 { background: rgba(238, 238, 238, 0.26); } li.L0, li.L1, li.L2, li.L3, li.L5, li.L6, li.L7, li.L8 { list-style-type: decimal !important } .gist { max-width: 650px; } </style> <section class="mt-5 mb-5 help-tpl__header"> <div class="container"> <section class="mb-5"> <h2 class="text-xl mb-3">Documentation</h2> <nav class="breadcrumb d-none d-lg-block"> <a class="breadcrumb-item" href="/">Home</a> <span class="breadcrumb-item active">Documentation</span> </nav> </section> <div class="mb-5"> <form class="clearfix"> <div class="float-right ml-3"> <button type="submit" class="btn btn-dark-gray px-3 ">Search</button> </div> <div class="oh"> <input type="text" class="w-100 st-default-search-input" placeholder="Search the documentation..."> </div> </form> </div> </div> </section> <section class="mt-5 mb-5 help-tpl__body"> <div class="container"> <div class="row gutter-lg"> <div class="col-lg-3 text-sm doc_aside help-tpl__side-menu" data-swiftype-index="false"> <div class="help_main_menu mb-4"> <div class="mb-3 d-block d-lg-none"> <button class="btn btn-sm btn-outline-light px-4 btn-aside">Hide index</button> </div> <nav> <ul> <li class="has_child category-title 5220"> Getting Started <ul> <li class="5463"> <a href="/en/help/5463-how-to-comply-with-the-gdpr-cookie-law-caloppa-and-ccpa-cpra">Getting Started Guide</a> </li> <li class="5428"> <a href="/en/help/5428-gdpr-guide">Complete guide to the GDPR</a> </li> <li class="separator 17976"> </li> <li class="category-title 17975"> <strong>Compliance for:</strong> </li> <li class="17366"> <a href="/en/help/17366-laws-regulations-every-blogger-should-know">Simple Websites / Blogs</a> </li> <li class="17754"> <a href="/en/help/17754-laws-regulations-every-ecommerce-owner-should-know">E-commerce Websites</a> </li> <li class="14787"> <a href="/en/help/14787-laws-regulations-every-app-developer-should-know">App Developers</a> </li> <li class="20713"> <a href="/en/help/20713-individual-services">Individual Services</a> </li> </ul> </li> <li class="has_child category-title 5135"> Legal Requirements <ul> <li class="5720"> <a href="/en/help/5720-legal-requirements-overview">Legal Requirements Overview</a> </li> <li class="524"> <a href="/en/help/524-how-to-determine-your-law-of-reference">How to Determine Your Law of Reference</a> </li> <li class="6187"> <a href="/en/help/6187-what-should-be-in-a-privacy-policy">What is a Privacy Policy and Do You Need One?</a> </li> <li class="7816"> <a href="/en/help/7816-impressum-what-is-it-and-when-is-it-needed">Impressum: What Is It and When Is It Needed</a> </li> <li class="has_child category-title 6835"> Main Legislations <ul> <li class="category-title 5234"> <strong>GDPR</strong> </li> <li class="5428"> <a href="/en/help/5428-gdpr-guide">Complete guide to the GDPR</a> </li> <li class="6738"> <a href="/en/help/6738-gdpr-offline-compliance-duties">GDPR Offline Compliance Duties</a> </li> <li class="66232"> <a href="/en/help/66232-third-party-vs-data-processor">Third party vs Data Processor</a> </li> <li class="26171"> <a href="/en/help/26171-web-agency-responsibilities-gdpr">Web agency’s responsibilities according to the GDPR</a> </li> <li class="5858"> <a href="/en/help/5858-switch-privacy-policy-options">Picking the Right Privacy Policy Options</a> </li> <li class="25229"> <a href="/en/help/25229-gdpr-treatment-of-services-that-do-not-collect-personal-data">GDPR treatment of services that do not collect personal data</a> </li> <li class="7399"> <a href="/en/help/7399-right-to-be-forgotten">How to Prove You Honored the Right to Be Forgotten</a> </li> <li class="3272"> <a href="/en/help/3272-eu-us-data-privacy-framework-certification-integration">EU-US Data Privacy Framework: How Can iubenda Help</a> </li> <li class="65844"> <a href="/en/help/65844-eu-us-trans-atlantic-data-privacy-framework">Green Light for the Data Privacy Framework: EU to US Personal Data Transfers Now Approved </a> </li> <li class="145851"> <a href="/en/help/145851-a-detailed-look-at-the-eu-ai-act">A Detailed Look at the EU AI Act</a> </li> <li class="71983"> <a href="/en/help/71983-uk-gdpr-post-brexit-updates">UK GDPR Post Brexit Updates</a> </li> <li class="73808"> <a href="/en/help/73808-uk-data-reform-bill-and-ai-regulation">UK Data Reform Bill and AI Regulation</a> </li> <li class="74228"> <a href="/en/help/74228-right-to-be-forgotten-and-iubendas-consent-solution">The Right to be Forgotten and iubenda’s Consent Database</a> </li> <li class="78656"> <a href="/en/help/78656-consent-vs-legitimate-interest">Consent vs. Legitimate interest: what’s the difference?</a> </li> <li class="separator 17455"> </li> <li class="category-title 6838"> <strong>Cookie Law / ePrivacy</strong> </li> <li class="5525"> <a href="/en/help/5525-cookies-gdpr-requirements">Cookies and the GDPR: What’s Really Required?</a> </li> <li class="64227"> <a href="/en/help/64227-what-are-trackers">What are trackers?</a> </li> <li class="6293"> <a href="/en/help/6293-cookie-consent-management-faq">Manage Cookie Consent Easily</a> </li> <li class="124203"> <a href="/en/help/124203-cookie-policy-do-you-need-one-heres-everything-you-need-to-know">Cookie Policy – Everything you need to know</a> </li> <li class="7515"> <a href="/en/help/7515-which-data-can-be-safely-stored-in-cookies-without-having-to-request-consent">Which Data Can Be Safely Stored in Cookies Without Having to Request Consent?</a> </li> <li class="24487"> <a href="/en/help/24487-cookie-walls-gdpr">Is the use of a cookie wall allowed in European Countries?</a> </li> <li class="6282"> <a href="/en/help/6282-legal-sources-third-party-cookie-names-opt-out-requirements">Legal Sources on Third-Party Cookie Names and Opt-Out Mechanisms</a> </li> <li class="31246"> <a href="/en/help/31246-italy-new-cookie-rules">Italy’s new cookie guidelines (and how to comply)</a> </li> <li class="separator 19148"> </li> <li class="category-title 19149"> <strong>US State Laws</strong> </li> <li class="111288"> <a href="/en/help/111288-us-state-privacy-laws-overview">US State Privacy Laws Overview</a> </li> <li class="19133"> <a href="/en/help/19133-ccpa-compliance-guide">Complete guide to the CCPA</a> </li> <li class="22574"> <a href="/en/help/22574-guide-to-the-ccpa-concept-of-sale">An In-depth Look at the CCPA Concept of Sale</a> </li> <li class="109571"> <a href="/en/help/109571-ccpa-toll-free-number-requirement">CCPA toll-free number requirement</a> </li> <li class="73819"> <a href="/en/help/73819-cpra-intro-to-the-ccpa-2-0-and-how-it-affects-you">CPRA: Intro to the CCPA 2.0 and how it affects you</a> </li> <li class="106345"> <a href="/en/help/106345-virginia-consumer-data-protection-act-vcdpa">Virginia Consumer Data Protection Act (VCDPA)</a> </li> <li class="107739"> <a href="/en/help/107739-colorado-privacy-act-cpa">Colorado Privacy Act (CPA)</a> </li> <li class="107774"> <a href="/en/help/107774-utah-consumer-privacy-act-the-ucpa">Utah Consumer Privacy Act (the UCPA)</a> </li> <li class="107759"> <a href="/en/help/107759-connecticut-data-privacy-act-ctdpa">Connecticut Data Privacy Act (CTDPA)</a> </li> <li class="separator 17456"> </li> <li class="category-title 17437"> <strong>CalOPPA and COPPA</strong> </li> <li class="6841"> <a href="https://www.iubenda.com/blog/guide-coppa-mobile-apps/">COPPA and Mobile Apps</a> </li> <li class="separator 17457"> </li> <li class="category-title 26861"> <strong>LGPD</strong> </li> <li class="26706"> <a href="/en/help/26706-lgpd-guide">Complete guide to the LGPD</a> </li> <li class="104366"> <a href="/en/help/104366-brazil-new-cookie-requirements">Brazil: New Cookie Requirements</a> </li> <li class="110776"> <a href="/en/help/110776-brazil-cookie-requirement-cheatsheet">Brazil Cookie Requirement Cheatsheet</a> </li> <li class="27616"> <a href="/en/help/27616-lgpd-privacy-policy-example">LGPD Privacy Policy Example</a> </li> <li class="separator 26860"> </li> <li class="category-title 146111"> <strong>Whistleblowing</strong> </li> <li class="142962"> <a href="/en/help/142962-understanding-the-basics-of-whistleblowing">Understanding the Basics of Whistleblowing</a> </li> <li class="143589"> <a href="/en/help/143589-navigating-whistleblowing-laws-an-international-overview">Navigating Whistleblowing Laws: An International Overview</a> </li> <li class="144294"> <a href="/en/help/144294-how-to-implement-whistleblower-protections-in-your-organization">How to Implement Whistleblower Protections in Your Organization</a> </li> <li class="separator 146112"> </li> <li class="category-title 17438"> <strong>Other Legislations</strong> </li> <li class="13856"> <a href="/en/help/13856-privacy-policies-and-australian-law">Privacy Policies and Australian Law</a> </li> <li class="75419"> <a href="/en/help/75419-fadp-updates-what-you-need-to-know">FADP Updates – What You Need to Know</a> </li> </ul> </li> <li class="has_child category-title 5237"> Common Scenarios <ul> <li class="category-title 17443"> <strong>Blogs and Websites</strong> </li> <li class="8385"> <a href="/en/help/8385-gdpr-for-bloggers">How to Make Your Site Compliant (for Bloggers and Web Publishers)</a> </li> <li class="11028"> <a href="/en/help/11028-wordpress-gdpr-compliance">How to Comply with the GDPR on a WordPress Site</a> </li> <li class="78016"> <a href="/en/help/78016-how-to-handle-data-privacy-complaints-your-5-step-guide">How to Handle Data Privacy Complaints | Your 5-Step guide</a> </li> <li class="separator 17458"> </li> <li class="category-title 25888"> <strong>E-commerce</strong> </li> <li class="25877"> <a href="/en/help/25877-terms-conditions-ecommerce-stores">Terms and Conditions for eCommerce (and how they protect your online store)</a> </li> <li class="separator 25886"> </li> <li class="category-title 6842"> <strong>Emails and Newsletters</strong> </li> <li class="5640"> <a href="/en/help/5640-email-newsletter-compliance-guide">How to Make your Emails and Newsletter Compliant (with Form Examples)</a> </li> <li class="4315"> <a href="/en/help/4315-eprivacy-direct-email-marketing">ePrivacy and Direct Email Marketing (DEM)</a> </li> <li class="6192"> <a href="/en/help/6192-opt-in-opt-out">Opt-In vs Opt-Out: What’s the Difference?</a> </li> <li class="13638"> <a href="/en/help/13638-privacy-policy-gdpr-forms-and-consent-collection-for-mailchimp">Privacy policy, GDPR forms and consent collection for Mailchimp</a> </li> <li class="39705"> <a href="/en/help/39705-global-email-marketing-cheatsheet">Global Email Marketing Cheatsheet</a> </li> <li class="separator 17459"> </li> <li class="category-title 6840"> <strong>Apps</strong> </li> <li class="147125"> <a href="/en/help/147125-app-privacy-policy-what-you-need-to-know-examples">App Privacy Policy: What you Need to Know + Examples</a> </li> <li class="401"> <a href="/en/help/401-privacy-policy-for-ios-and-macos-apps">Privacy Policy for iOS and macOS Apps</a> </li> <li class="11552"> <a href="/en/help/11552-privacy-policy-for-android-apps">Privacy Policy for Your Android App</a> </li> <li class="38933"> <a href="/en/help/38933-google-play-new-safety-section">Google Play adds new “safety section” to make data collection more transparent</a> </li> <li class="39254"> <a href="/en/help/39254-privacy-policy-for-windows-apps">Privacy Policy for Windows Apps</a> </li> <li class="1353"> <a href="/en/help/1353-cookies-mobile-apps">Cookies and Mobile Apps</a> </li> <li class="separator 24789"> </li> <li class="category-title 24788"> <strong>Facebook Pages and Apps</strong> </li> <li class="22930"> <a href="/en/help/22930-privacy-policy-facebook-page">Privacy Policy for Facebook Pages</a> </li> <li class="13561"> <a href="/en/help/13561-privacy-policy-for-facebook-apps">Privacy Policy for Facebook Apps</a> </li> <li class="separator 17460"> </li> <li class="category-title 17442"> <strong>Children</strong> </li> <li class="5717"> <a href="/en/help/5717-legal-requirements-websites-apps-children">Legal Requirements for Websites and Apps Used by Children</a> </li> <li class="11429"> <a href="/en/help/11429-minors-and-the-gdpr">Minors and the GDPR</a> </li> <li class="separator 17461"> </li> <li class="category-title 17444"> <strong>Multi-lingual Websites and Apps</strong> </li> <li class="539"> <a href="/en/help/539-privacy-policy-different-languages">When Do You Need a Privacy Policy in Different Languages</a> </li> <li class="separator 17462"> </li> <li class="category-title 14005"> <strong>Ads and Affiliate Programs</strong> </li> <li class="12047"> <a href="/en/help/12047-privacy-policy-for-google-adsense">Privacy Policy for Google AdSense</a> </li> <li class="12079"> <a href="/en/help/12079-privacy-policy-for-google-ads-remarketing">Privacy Policy for Google Ads Remarketing</a> </li> <li class="17620"> <a href="/en/help/16041">How to Collect Consent for Google Ad Personalization</a> </li> <li class="12158"> <a href="/en/help/12158-privacy-policy-facebook-lead-ads">Privacy Policy for Facebook Lead Ads</a> </li> <li class="13990"> <a href="/en/help/13990-amazon-affiliate-program-required-privacy-policy-additions">Amazon Affiliate Program</a> </li> <li class="separator 17463"> </li> <li class="category-title 6844"> <strong>Analytics and Other Google Services</strong> </li> <li class="72017"> <a href="/en/help/72017-is-google-analytics-illegal-in-the-eu-and-uk">Is Google Analytics illegal in the EU and UK?</a> </li> <li class="72356"> <a href="/en/help/72356-google-analytics-4-all-you-need-to-know">Google Analytics 4 – all you need to know</a> </li> <li class="11994"> <a href="/en/help/11994-privacy-policy-for-google-analytics">Privacy Policy for Google Analytics</a> </li> <li class="1184"> <a href="/en/help/1184-how-to-anonymize-ip-addresses-and-avoid-the-cross-referencing-of-data-in-google-analytics">How to Anonymize IP Addresses and Avoid the Cross-Referencing of Data in Google Analytics</a> </li> <li class="7227"> <a href="/en/help/7227-google-analytics-gdpr-monitoring-behavior">Google Analytics and the GDPR: Is It Considered Monitoring Behavior?</a> </li> <li class="12379"> <a href="/en/help/12379-privacy-policy-google-analytics-advertising-remarketing">Privacy Policy for Google Analytics Advertising and Remarketing Features</a> </li> <li class="18852"> <a href="/en/help/18852-privacy-policy-google-oauth">Privacy Policy for Google OAuth</a> </li> <li class="14936"> <a href="/en/help/14936-place-of-processing-customisation-for-google-services">Place of Processing Customisation for Google Services</a> </li> <li class="142541"> <a href="/en/help/142541-google-ads-consent-mode">Google Ads Consent Mode – Everything You Need To Know</a> </li> <li class="separator 146117"> </li> <li class="category-title 146116"> <strong>Workplace</strong> </li> <li class="144878"> <a href="/en/help/144878-how-technology-helps-businesses-build-effective-whistleblowing-systems">How Technology Helps Businesses Build Effective Whistleblowing Systems</a> </li> <li class="143344"> <a href="/en/help/143344-whistleblowing-reporting-process-in-the-workplace">The A-Z of Whistleblowing Reporting Process in the Workplace</a> </li> <li class="143363"> <a href="/en/help/143363-how-organizations-should-handle-whistleblowing-reports">Managing Whistleblowing: How Organizations Should Handle Reports</a> </li> <li class="142946"> <a href="/en/help/142946-whistleblowing-education-in-the-workplace">Whistleblowing 101: A Guide to Whistleblowing Education in the Workplace</a> </li> <li class="142908"> <a href="/en/help/142908-ethics-at-work-crafting-a-supportive-whistleblowing-culture">Ethics at Work: Crafting a Supportive Whistleblowing Culture</a> </li> </ul> </li> </ul> </li> <li class="has_child category-title 5222"> Privacy and Cookie Policy Generator <ul> <li class="has_child category-title 5223"> Creating Your Policy <ul> <li class="category-title 17502"> <strong>Generating</strong> </li> <li class="463"> <a href="/en/help/463-generate-privacy-policy">How to Create a Privacy Policy</a> </li> <li class="1175"> <a href="/en/help/1175-generate-cookie-policy">How to Generate a Cookie Policy</a> </li> <li class="25434"> <a href="/en/help/25434-cookie-lifetime">How to Display the Cookie Lifetime in Your Cookie Policy</a> </li> <li class="5853"> <a href="/en/help/5853-gdpr-protections-users">How to Apply GDPR Protections Only to EU Users or to All Users</a> </li> <li class="21474"> <a href="/en/help/21474-how-to-apply-state-specific-us-standards-within-the-generator">How to Apply State-Specific US Standards within the Generator</a> </li> <li class="separator 17511"> </li> <li class="category-title 17503"> <strong>Adding Services</strong> </li> <li class="20"> <a href="/en/help/20-services-privacy-policy">How to Add Services to Your Privacy Policy</a> </li> <li class="19004"> <a href="/en/help/19004-how-to-use-the-site-scanner-from-within-the-generator">Using the Site Scanner to Identify Missing Services</a> </li> <li class="386"> <a href="/en/help/386-how-to-add-a-custom-service-and-customize-to-your-needs">How to Add a Custom Service and Customize to Your Needs</a> </li> <li class="separator 17510"> </li> <li class="category-title 17504"> <strong>Adding Owner Details</strong> </li> <li class="7850"> <a href="/en/help/7850-what-is-meant-by-the-identifiying-details-of-the-data-controller">What is meant by the identifying details of the Data Controller</a> </li> <li class="3486"> <a href="/en/help/3486-the-owner-field-within-the-generator">The Owner Field Within the Generator</a> </li> <li class="separator 17509"> </li> <li class="category-title 17505"> <strong>Languages</strong> </li> <li class="137"> <a href="/en/help/137-add-language">How to Add Another Language to Your Documents</a> </li> </ul> </li> <li class="has_child category-title 17500"> Editing/Updating Your Policy <ul> <li class="2739"> <a href="/en/help/2739-edit-privacy-policy">How to Edit a Privacy Policy</a> </li> <li class="3810"> <a href="/en/help/3810-how-to-delete-a-privacy-policy">How to Delete a Privacy Policy</a> </li> <li class="68865"> <a href="/en/help/68865-how-to-duplicate-an-existing-site">How to duplicate an existing site</a> </li> <li class="separator 17508"> </li> <li class="category-title 17506"> <strong>iubenda Branding</strong> </li> <li class="166"> <a href="/en/help/166-remove-iubenda-branding">How to Remove iubenda Branding</a> </li> <li class="2848"> <a href="/en/help/2848-remove-iubenda-disclaimer">Can I Remove the &quot;iubenda hosts this page&quot; Disclaimer</a> </li> <li class="separator 5235"> </li> <li class="category-title 17507"> <strong>Advanced Settings</strong> </li> <li class="4158"> <a href="/en/help/4158-force-update">How to Force Update &amp; Change the “Last updated” Date Information</a> </li> <li class="4825"> <a href="/en/help/4825-customize-this-application">Customize the Way Your Website or App Is Referred To in Your Privacy Policy</a> </li> <li class="11072"> <a href="/en/help/11072-customize-privacy-and-cookie-policy-internal-links">Customize Privacy and Cookie Policy Internal Links</a> </li> </ul> </li> <li class="has_child category-title 5224"> Embedding Your Policy <ul> <li class="category-title 17512"> <strong>General</strong> </li> <li class="231"> <a href="/en/help/231-ways-to-use-iubenda-privacy-policy-on-your-site-and-app">Ways to Use iubenda’s Privacy Policy on Your Site and App</a> </li> <li class="216"> <a href="/en/help/216-privacy-policy-standard-embedding">Standard Embedding</a> </li> <li class="228"> <a href="/en/help/228-privacy-policy-direct-link">Direct Link</a> </li> <li class="78"> <a href="/en/help/78-privacy-policy-direct-text-embedding-api">Direct Text Embedding via JS or API</a> </li> <li class="5339"> <a href="/en/help/5339-behavior-of-iubenda-embedding-options-when-javascript-is-disabled">Behavior of iubenda Embedding Options When JavaScript Is Disabled</a> </li> <li class="separator 17517"> </li> <li class="category-title 17513"> <strong>Apps</strong> </li> <li class="17838"> <a href="/en/help/401">iOS and macOS</a> </li> <li class="1528"> <a href="/en/help/1528-privacy-policy-for-tvos-apps-apple-tv">tvOS (Apple TV)</a> </li> <li class="17837"> <a href="/en/help/11552">Android</a> </li> <li class="3744"> <a href="/en/help/3744-how-to-add-android-and-ios-mobile-permissions-for-device-data">How to Add Android and iOS Mobile Permissions for Device Data</a> </li> <li class="337"> <a href="/en/help/337-legal-documents-offline-viewing">Make Your Legal Documents Available for Offline Viewing</a> </li> <li class="separator 5253"> </li> <li class="category-title 17514"> <strong>Popular Platforms</strong> </li> <li class="100"> <a href="/en/help/100-how-to-add-your-privacy-policy-to-the-amazon-store">Amazon Store</a> </li> <li class="53052"> <a href="/en/help/53052-how-to-add-a-privacy-and-cookie-policy-on-bigcommerce">Bigcommerce</a> </li> <li class="1419"> <a href="/en/help/1419-how-to-use-iubenda-privacy-and-cookie-policy-on-a-epages-website">ePages</a> </li> <li class="53619"> <a href="/en/help/53619-how-to-add-a-privacy-policy-on-ghost">Ghost</a> </li> <li class="53326"> <a href="/en/help/53326-how-to-add-a-privacy-policy-on-hubspot">HubSpot</a> </li> <li class="3798"> <a href="/en/help/3798-how-to-use-iubenda-privacy-and-cookie-policy-on-a-jimdo-website">Jimdo</a> </li> <li class="546"> <a href="/en/help/546-how-to-use-iubenda-privacy-and-cookie-policy-on-a-joomla-website">Joomla!</a> </li> <li class="567"> <a href="/en/help/567-how-to-use-iubenda-privacy-and-cookie-policy-on-a-magento-website">Magento</a> </li> <li class="3592"> <a href="/en/help/3592-how-to-add-matomo-clauses-to-iubendas-privacy-and-cookie-policy">Matomo (Formerly Piwik)</a> </li> <li class="1502"> <a href="/en/help/1502-how-to-use-iubenda-privacy-and-cookie-policy-on-a-prestashop-website">PrestaShop</a> </li> <li class="3796"> <a href="/en/help/3796-shopify-privacy-policy">Shopify</a> </li> <li class="12794"> <a href="/en/help/12794-squarespace-privacy-policy">Squarespace</a> </li> <li class="26324"> <a href="/en/help/26324-privacy-policy-ucraft">Ucraft</a> </li> <li class="18524"> <a href="/en/help/18524-privacy-policy-webflow">Webflow</a> </li> <li class="53504"> <a href="/en/help/53504-how-to-add-a-privacy-policy-on-weebly">Weebly</a> </li> <li class="23080"> <a href="/en/help/23080-privacy-policy-wix">Wix</a> </li> <li class="370"> <a href="/en/help/370-how-to-use-iubenda-privacy-and-cookie-policy-on-a-wordpress-website">WordPress</a> </li> <li class="3905"> <a href="/en/help/3905-how-to-use-iubenda-privacy-and-cookie-policy-on-wordpress-com">WordPress.com</a> </li> <li class="separator 19583"> </li> <li class="category-title 19584"> <strong>Advanced</strong> </li> <li class="12260"> <a href="/en/help/12260-how-to-configure-content-security-policy-to-allow-iubenda-scripts-to-execute">How to Configure your Content Security Policy for iubenda</a> </li> </ul> </li> <li class="has_child category-title 5832"> Troubleshooting and FAQs <ul> <li class="304"> <a href="/en/help/304-how-to-use-the-iubenda-dashboard">How to Access the iubenda Dashboard</a> </li> <li class="3803"> <a href="/en/help/3803-must-i-repeat-the-process-of-adding-services-for-every-language-in-which-i-generate-the-policy">Must I Repeat the Process of Adding Services for Every Language in Which I Generate the Policy?</a> </li> <li class="3953"> <a href="/en/help/3953-how-to-honor-and-include-a-do-not-track-clause-in-the-privacy-policy">How to Honor and Include a “Do Not Track” Clause in the Privacy Policy</a> </li> <li class="3025"> <a href="/en/help/3025-what-is-the-difference-between-the-privacy-and-cookies-policy-generator-and-the-cookie-solution">What Is the Difference Between the Privacy and Cookie Policy Generator and the Privacy Controls and Cookie Solution?</a> </li> <li class="2824"> <a href="/en/help/2824-what-is-the-difference-between-the-integration-of-the-privacy-policy-and-the-one-of-the-cookie-solution">What’s the Difference Between the Integration of the Privacy Policy and Cookie Solution?</a> </li> <li class="438"> <a href="/en/help/438-which-countries-is-your-privacy-policy-good-for">Which Countries Is Your Privacy Policy Good For?</a> </li> <li class="407"> <a href="/en/help/407-copy-and-paste">Can I Copy and Paste the Privacy Policy&#39;s Text into My Website?</a> </li> <li class="450"> <a href="/en/help/450-is-it-ok-to-include-the-same-privacy-policy-in-other-sites-and-apps">Is it ok to include the same privacy policy in other sites and apps?</a> </li> <li class="15546"> <a href="/en/help/15546-how-to-start-the-iubenda-initializer-asynchronously">How to start the iubenda initializer asynchronously</a> </li> <li class="separator 30085"> </li> <li class="category-title 30086"> <strong>Changelog</strong> </li> <li class="30061"> <a href="/en/help/30061-pcp-legal-changelog">Legal Changelog</a> </li> </ul> </li> </ul> </li> <li class="active has_child category-title 5225"> Privacy Controls and Cookie Solution <ul> <li class="has_child category-title 17486"> Introduction <ul> <li class="1177"> <a href="/en/help/1177-cookie-solution-getting-started">Introduction and Getting Started</a> </li> <li class="262"> <a href="/en/help/262-how-to-identify-the-cookies-your-site-installs-in-browsers">How to Identify the Cookies Your Site Installs in Browsers</a> </li> </ul> </li> <li class="active has_child category-title 17482"> Cookie Banner Setup and Customization <ul> <li class="3831"> <a href="/en/help/3831-customize-cookie-banner">How to Customize the Look and Behavior of the Cookie Banner (Beginner’s Guide)</a> </li> <li class="1175"> <a href="/en/help/1175-generate-cookie-policy">How to Generate a Cookie Policy for the Cookie Banner</a> </li> <li class="active 1205"> <a href="/en/help/1205-how-to-configure-your-cookie-solution-advanced-guide">How to Configure Your Privacy Controls and Cookie Solution (Advanced Guide)</a> </li> <li class="separator 17615"> </li> <li class="category-title 17614"> <strong>Advertising Tracking Preferences</strong> </li> <li class="7440"> <a href="/en/help/7440-the-complete-guide-to-iubenda-cmp-and-iab-tcf-2-2">The complete guide to IAB GDPR Framework and iubenda’s Consent Management Platform</a> </li> <li class="16041"> <a href="/en/help/16041-google-tcf-consent-personalized-ads">Google and TCF 2.0: how to collect consent for personalized ads</a> </li> <li class="23271"> <a href="/en/help/23271-tcf-2-0-transition-guide">TCF 2.0 Transition Guide</a> </li> <li class="separator 17494"> </li> <li class="category-title 17488"> <strong>Languages</strong> </li> <li class="1180"> <a href="/en/help/1180-cookie-policy-and-cookie-solution-for-multilingual-websites">Cookie Policy and Privacy Controls and Cookie Solution for Multilingual Websites</a> </li> <li class="1209"> <a href="/en/help/1209-how-to-use-the-cookie-solution-in-a-multilingual-wordpress-site">How to Use the Privacy Controls and Cookie Solution in a Multilingual WordPress Site</a> </li> </ul> </li> <li class="has_child category-title 21259"> For US <ul> <li class="21165"> <a href="/en/help/21165-how-to-comply-with-us-state-privacy-laws-using-iubenda">How to comply with US state privacy laws using iubenda</a> </li> </ul> </li> <li class="has_child category-title 5226"> Installation and Prior Blocking Implementation <ul> <li class="36226"> <a href="/en/help/36226-cookie-solution-custom-website-installation-guide">Custom Website</a> </li> <li class="separator 36291"> </li> <li class="category-title 36292"> <strong>Plugins and integrations</strong> </li> <li class="56404"> <a href="/en/help/56404-how-to-add-a-cookie-solution-to-bigcommerce">BigCommerce</a> </li> <li class="56370"> <a href="/en/help/56370-how-to-add-a-cookie-solution-to-ghost">Ghost</a> </li> <li class="148057"> <a href="/en/help/148057-hubspot-cookie-banner-how-to-add-a-cookie-banner-on-hubspot-with-iubenda">HubSpot</a> </li> <li class="10777"> <a href="/en/help/10777-cookie-solution-jimdo-integration-guide">Jimdo</a> </li> <li class="1323"> <a href="/en/help/1323-cookie-solution-joomla-plugin-installation-guide">Joomla! Extension</a> </li> <li class="9591"> <a href="/en/help/9591-cookie-solution-magento-extension-installation-guide">Magento Extension</a> </li> <li class="4338"> <a href="/en/help/4338-cookie-solution-prestashop-plugin-installation-guide">PrestaShop Plugin</a> </li> <li class="10811"> <a href="/en/help/10811-cookie-solution-shopify">Shopify</a> </li> <li class="12848"> <a href="/en/help/12848-cookie-solution-squarespace-integration-guide">Squarespace</a> </li> <li class="26363"> <a href="/en/help/26363-cookie-solution-ucraft">Ucraft</a> </li> <li class="18531"> <a href="/en/help/18531-cookie-solution-webflow">Webflow</a> </li> <li class="56488"> <a href="/en/help/56488-how-to-add-a-cookie-solution-to-weebly">Weebly</a> </li> <li class="24221"> <a href="/en/help/24221-cookie-banner-wix">Wix</a> </li> <li class="1215"> <a href="/en/help/1215-cookie-solution-wordpress-plugin-installation-guide">WordPress Plugin</a> </li> <li class="separator 5374"> </li> <li class="category-title 5358"> <strong>Prior Blocking Implementation</strong> </li> <li class="3081"> <a href="/en/help/3081-prior-blocking-of-cookie-scripts">Introduction to the Prior Blocking of Cookie Scripts</a> </li> <li class="1229"> <a href="/en/help/1229-manual-tagging-blocking-cookies">Manual Tagging (with Practical Examples)</a> </li> <li class="133036"> <a href="/en/help/133036-prior-blocking-of-cookies-automatic-blocking-auto-blocking">Automatic Blocking (auto-blocking)</a> </li> <li class="1235"> <a href="/en/help/1235-google-tag-manager-blocking-cookies">Google Tag Manager</a> </li> <li class="74198"> <a href="/en/help/74198-google-consent-mode-set-up-google-tag-manager-with-iubenda">Google Consent Mode: Set up Google Tag Manager with iubenda</a> </li> <li class="27137"> <a href="/en/help/27137-google-consent-mode">Google Consent Mode</a> </li> <li class="1182"> <a href="/en/help/1182-google-adsense-ad-manager-blocking-cookies">Google AdSense and Ad Manager</a> </li> <li class="1976"> <a href="/en/help/1976-php-class-blocking-cookies">PHP Class</a> </li> <li class="22135"> <a href="/en/help/22135-cookie-solution-amp-wordpress">How to integrate iubenda Privacy Controls and Cookie Solution with Google AMP (WordPress method included)</a> </li> <li class="separator 19644"> </li> <li class="category-title 17483"> <strong>Advanced</strong> </li> <li class="18678"> <a href="/en/help/18678-cookie-solution-consents-migration">How to migrate consents from a previous provider to the Privacy Controls and Cookie Solution</a> </li> <li class="46731"> <a href="/en/help/46731-how-to-retrieve-proof-of-a-cookie-preferences-for-specific-users">How to retrieve proof of cookie preferences</a> </li> <li class="3834"> <a href="/en/help/3834-cache-and-optimisation-of-the-iubenda-cookie-solution">Cache, Speed and Other Optimization of the iubenda Privacy Controls and Cookie Solution</a> </li> <li class="23633"> <a href="/en/help/23633-how-to-invoke-cookie-solution-api-methods-from-an-iframe">How to invoke Privacy Controls and Cookie Solution API methods from an iframe</a> </li> <li class="12503"> <a href="https://www.iubenda.com/en/help/12260">How to Configure your Content Security Policy for iubenda</a> </li> <li class="separator 17492"> </li> <li class="category-title 17490"> <strong>Stats</strong> </li> <li class="2426"> <a href="/en/help/2426-cookie-solution-analytics-and-stats">Analytics and Stats</a> </li> </ul> </li> <li class="has_child category-title 146392"> <strong>For Mobile</strong> <ul> <li class="19678"> <a href="/en/help/19678-cs-for-mobile-developers-guide">Privacy Controls and Cookie Solution for mobile | Developer’s Guide</a> </li> <li class="145991"> <a href="/en/help/145991-iubenda-sdk-integration-with-google-consent-mode-v2-for-firebase-analytics">iubenda mobile SDK – Integration with Google Consent Mode V2 for Firebase Analytics</a> </li> </ul> </li> <li class="has_child category-title 5357"> Troubleshooting and FAQs <ul> <li class="3062"> <a href="/en/help/3062-how-are-calculated-the-pageviews-of-the-cookie-solution">How Are the Privacy Controls and Cookie Solution Pageviews Calculated?</a> </li> <li class="3812"> <a href="/en/help/3812-where-can-i-find-my-cookie-policy-and-site-ids">Where Can I Find My Cookie Policy and Site Ids?</a> </li> <li class="2690"> <a href="/en/help/2690-can-i-integrate-the-cookie-policy-within-my-website-using-the-direct-text-embedding-and-api">Can I Integrate the Cookie Policy Within My Website Using the Direct Text Embedding and API?</a> </li> <li class="3182"> <a href="/en/help/3182-cookie-consent-amp-pages">How do I collect cookie consent on AMP pages?</a> </li> <li class="105616"> <a href="/en/help/105616-how-to-solve-common-cookie-solution-issues-with-cache-plugins-and-optimization-features">How to solve common Privacy Controls and Cookie Solution issues with cache plugins and optimization features</a> </li> <li class="151085"> <a href="/en/help/151085-why-is-data-decreasing-after-installing-google-consent-mode-v2">Why Is Data Decreasing After Installing Google Consent Mode v2?</a> </li> <li class="166100"> <a href="/en/help/166100-how-to-hide-the-iubenda-banner-on-specific-pages">How to Hide the iubenda Banner on Specific Pages</a> </li> <li class="separator 17493"> </li> <li class="category-title 17491"> <strong>Channels and Changelog</strong> </li> <li class="2158"> <a href="/en/help/2158-cookie-solution-release-channels">Delivery Channels</a> </li> <li class="1970"> <a href="/en/help/1970-cookie-solution-changelog">Changelog</a> </li> </ul> </li> </ul> </li> <li class="has_child category-title 17474"> Terms and Conditions Generator <ul> <li class="2859"> <a href="/en/help/2859-terms-and-conditions-when-are-they-needed">What Are the Terms and Conditions and When Are They Needed?</a> </li> <li class="19482"> <a href="/en/help/19482-what-should-basic-terms-and-conditions-include">What Should Basic Terms and Conditions Include?</a> </li> <li class="20504"> <a href="/en/help/20504-can-i-use-a-terms-and-conditions-template">Can I use a Terms and Conditions template?</a> </li> <li class="has_child category-title 19560"> Creating Your Document <ul> <li class="19461"> <a href="/en/help/19461-how-to-generate-terms-and-conditions">How to Generate Terms and Conditions</a> </li> <li class="19668"> <a href="/en/help/3486">The Owner Field Within the Generator</a> </li> <li class="19667"> <a href="/en/help/137">How to Add Another Language to Your Documents</a> </li> </ul> </li> <li class="has_child category-title 19561"> Editing/Updating Your Document <ul> <li class="19356"> <a href="/en/help/19356-edit-terms-and-conditions">How to Edit your Terms and Conditions</a> </li> <li class="19340"> <a href="/en/help/19340-delete-terms-and-conditions">How to Delete your Terms and Conditions</a> </li> <li class="separator 19570"> </li> <li class="category-title 19571"> <strong>Advanced options</strong> </li> <li class="19673"> <a href="/en/help/4158">How to Force Update &amp; Change the &quot;Last updated&quot; Date Information</a> </li> <li class="19674"> <a href="/en/help/4825">Customize the way your website or app is referred to in your documents</a> </li> </ul> </li> <li class="has_child category-title 19562"> Embedding Your Document <ul> <li class="category-title 47874"> <strong>General</strong> </li> <li class="19253"> <a href="/en/help/19253-integrate-terms-and-conditions-on-your-site-and-app">How to Integrate iubenda’s Terms and Conditions on your Site and App</a> </li> <li class="19675"> <a href="/en/help/337">Make Your Legal Documents Available for Offline Viewing</a> </li> <li class="separator 47876"> </li> <li class="category-title 47875"> <strong>Popular Platforms</strong> </li> <li class="52091"> <a href="/en/help/52091-how-to-add-terms-and-condition-on-amazon">Amazon</a> </li> <li class="49324"> <a href="/en/help/49324-how-to-add-terms-and-conditions-on-bigcommerce">Bigcommerce</a> </li> <li class="51396"> <a href="/en/help/51396-how-to-add-terms-and-conditions-on-ghost">Ghost</a> </li> <li class="50402"> <a href="/en/help/50402-how-to-add-terms-and-conditions-on-hubspot">HubSpot</a> </li> <li class="51558"> <a href="/en/help/51558-how-to-add-terms-and-conditions-on-jimdo">Jimdo</a> </li> <li class="49571"> <a href="/en/help/49571-how-to-add-terms-and-conditions-on-joomla">Joomla!</a> </li> <li class="51470"> <a href="/en/help/51470-how-to-add-terms-and-conditions-on-magento">Magento</a> </li> <li class="49740"> <a href="/en/help/49740-how-to-add-terms-and-conditions-to-prestashop">PrestaShop</a> </li> <li class="49143"> <a href="/en/help/49143-how-to-add-terms-and-conditions-on-squarespace">Squarespace</a> </li> <li class="52812"> <a href="/en/help/52812-how-to-add-terms-and-conditions-on-shopify">Shopify</a> </li> <li class="50101"> <a href="/en/help/50101-how-to-add-terms-and-conditions-on-ucraft">Ucraft</a> </li> <li class="48828"> <a href="/en/help/48828-how-to-add-terms-and-conditions-on-webflow">Webflow</a> </li> <li class="50267"> <a href="/en/help/50267-how-to-add-terms-and-conditions-on-weebly">Weebly</a> </li> <li class="47938"> <a href="/en/help/47938-how-to-add-terms-and-conditions-to-wix">Wix</a> </li> <li class="45671"> <a href="/en/help/45671-how-to-add-terms-and-conditions-on-woocommerce-stores">WooCommerce</a> </li> <li class="47465"> <a href="/en/help/47465-how-to-add-terms-and-conditions-on-wordpress">WordPress</a> </li> <li class="46214"> <a href="/en/help/46214-how-to-add-terms-and-conditions-on-wordpress-com">WordPress.com</a> </li> <li class="separator 19581"> </li> <li class="category-title 19580"> <strong>Advanced</strong> </li> <li class="19579"> <a href="/en/help/12260">How to Configure your Content Security Policy for iubenda</a> </li> </ul> </li> <li class="has_child category-title 19563"> Troubleshooting and FAQs <ul> <li class="19676"> <a href="/en/help/407">Can I Copy and Paste the Text of the Legal Documents into My Website?</a> </li> <li class="separator 68080"> </li> <li class="category-title 68081"> <strong>Changelog</strong> </li> <li class="64425"> <a href="/en/help/64425-terms-and-conditions-generator-legal-changelog">Legal Changelog</a> </li> </ul> </li> </ul> </li> <li class="has_child category-title 6557"> Consent Database <ul> <li class="has_child category-title 17471"> Getting Started <ul> <li class="6469"> <a href="/en/help/6469-consent-solution-getting-started">Introduction and Methods</a> </li> <li class="7379"> <a href="/en/help/7379-how-to-sync-your-iubenda-legal-documents-with-the-consent-solution">How to Sync Your Legal Documents</a> </li> </ul> </li> <li class="has_child category-title 17472"> Implementation <ul> <li class="6473"> <a href="/en/help/6473-consent-solution-js-documentation">JavaScript</a> </li> <li class="6484"> <a href="/en/help/6484-consent-solution-http-api-documentation">HTTP API</a> </li> <li class="129285"> <a href="/en/help/129285-consent-database-integration-guide-all-major-platforms">Simple integration guide</a> </li> <li class="separator 18931"> </li> <li class="category-title 18930"> <strong>Popular Platforms</strong> </li> <li class="56957"> <a href="/en/help/56957-consent-solution-for-hubspot">HubSpot</a> </li> <li class="18710"> <a href="/en/help/18710-consent-solution-joomla-chronoforms">Joomla!</a> </li> <li class="67783"> <a href="/en/help/67783-make-integromat-consent-solution-integration">Make (Integromat)</a> </li> <li class="74560"> <a href="/en/help/74560-consent-solution-for-prestashop">Prestashop</a> </li> <li class="57099"> <a href="/en/help/57099-how-to-add-consent-solution-on-shopify">Shopify</a> </li> <li class="66387"> <a href="/en/help/66387-consent-solution-for-squarespace">Squarespace</a> </li> <li class="59704"> <a href="/en/help/59704-consent-solution-for-webflow">Webflow</a> </li> <li class="56770"> <a href="/en/help/56770-consent-solution-for-wix">Wix</a> </li> <li class="66023"> <a href="/en/help/66023-zapier-consent-solution-integration">Zapier</a> </li> <li class="separator 66377"> </li> <li class="category-title 66378"> <strong>WordPress</strong> </li> <li class="21330"> <a href="/en/help/21330-consent-solution-wordpress-plugin-installation-guide">WordPress (plugin)</a> </li> <li class="13083"> <a href="/en/help/13083-consent-solution-wordpress-contact-form-7">WordPress (JavaScript method)</a> </li> <li class="62292"> <a href="/en/help/62292-consent-solution-for-elementor">Elementor (WordPress website builder)</a> </li> <li class="61862"> <a href="/en/help/61862-consent-solution-for-gravity-forms">Gravity Forms (WordPress form plugin)</a> </li> <li class="separator 19582"> </li> <li class="category-title 17473"> <strong>Advanced</strong> </li> <li class="12502"> <a href="https://www.iubenda.com/en/help/12260">How to Configure your Content Security Policy for iubenda</a> </li> </ul> </li> <li class="has_child category-title 18268"> Troubleshooting and FAQs <ul> <li class="18199"> <a href="/en/help/18199-consent-solution-delivery-channels">Delivery Channels</a> </li> <li class="18024"> <a href="/en/help/18024-consent-solution-changelog">Changelog</a> </li> </ul> </li> </ul> </li> <li class="has_child category-title 141348"> Whistleblowing Management Tool <ul> <li class="141269"> <a href="/en/help/141269-eu-whistleblower-directive-guide-iubenda-tool">iubenda’s Guide to the EU Whistleblower Directive and Our Dedicated Tool</a> </li> </ul> </li> <li class="has_child category-title 6558"> Register of Data Processing Activities <ul> <li class="6311"> <a href="/en/help/6311-internal-privacy-management-getting-started">Guide to the Register of Data Processing Activities</a> </li> </ul> </li> <li class="has_child category-title 5238"> Resources <ul> <li class="13053"> <a href="/en/help/13053-iubenda-webinars">Webinars</a> </li> <li class="has_child category-title 25910"> Videos <ul> <li class="336"> <a href="/en/help/336-videos">All Video Guides</a> </li> <li class="separator 18397"> </li> <li class="category-title 18393"> <strong>Privacy and Cookie Policy Generator</strong> </li> <li class="34840"> <a href="/en/help/34840-privacy-and-cookie-policy-generator-overview-video">Overview</a> </li> <li class="327"> <a href="/en/help/327-intro-privacy-cookie-policy-generator-video">Introduction to the Generator</a> </li> <li class="310"> <a href="/en/help/310-add-services-privacy-policy-video">Adding services/clauses to your policy</a> </li> <li class="35004"> <a href="/en/help/35004-owner-info-privacy-policy-video">Filling in the owner info</a> </li> <li class="312"> <a href="/en/help/312-manage-languages-privacy-policy-video">Managing languages</a> </li> <li class="319"> <a href="/en/help/319-edit-privacy-policy-video">Editing your policy</a> </li> <li class="31830"> <a href="/en/help/31830-remove-iubenda-branding-video">Removing iubenda branding</a> </li> <li class="317"> <a href="/en/help/317-add-privacy-policy-to-your-site-video">Embedding your policy</a> </li> <li class="31834"> <a href="/en/help/31834-integrate-iubenda-wordpress-video">Integrating iubenda with WordPress</a> </li> <li class="separator 18398"> </li> <li class="category-title 18394"> <strong>Privacy Controls and Cookie Solution</strong> </li> <li class="31759"> <a href="/en/help/31759-cookie-solution-intro-video">Introduction to the Privacy Controls and Cookie Solution</a> </li> <li class="18387"> <a href="/en/help/18387-customize-cookie-banner-basic-video">How to customize the cookie banner (basic options)</a> </li> <li class="31752"> <a href="/en/help/31752-customize-cookie-banner-advanced-video">How to customize the cookie banner (advanced options)</a> </li> <li class="39065"> <a href="/en/help/39065-tcf-video">Transparency and Consent Framework (TCF)</a> </li> <li class="separator 33820"> </li> <li class="category-title 33821"> <strong>Terms and Conditions Generator</strong> </li> <li class="33817"> <a href="/en/help/33817-terms-and-conditions-generator-overview-video">Overview</a> </li> <li class="separator 18399"> </li> <li class="category-title 18395"> <strong>Consent Database</strong> </li> <li class="6827"> <a href="/en/help/6827-consent-solution-intro-video">Introduction to the Consent Database</a> </li> <li class="34721"> <a href="/en/help/34721-consent-solution-manual-implementation-javascript-video">Consent Database manual implementation (JavaScript)</a> </li> <li class="18353"> <a href="/en/help/18353-consent-solution-dashboard-video">Consent dashboard in action</a> </li> <li class="separator 18400"> </li> <li class="category-title 18396"> <strong>Register of Data Processing Activities</strong> </li> <li class="6667"> <a href="/en/help/6667-internal-privacy-management-video">How to use the IPM tool</a> </li> </ul> </li> <li class="has_child category-title 7679"> Templates <ul> <li class="category-title 25913"> <strong>GDPR</strong> </li> <li class="7687"> <a href="/en/help/7687-eu-representative-appointment-template">EU Representative Appointment</a> </li> <li class="7680"> <a href="/en/help/7680-data-processing-agreement-template-gdpr">Data Processing Agreement</a> </li> <li class="7689"> <a href="/en/help/7689-non-disclosure-and-confidentiality-obligation-for-employees">Non-Disclosure and Confidentiality Obligation for Employees</a> </li> <li class="7910"> <a href="/en/help/7910-data-protection-impact-assessment-dpia-template">Data Protection Impact Assessment (DPIA)</a> </li> <li class="separator 25914"> </li> <li class="category-title 22097"> <strong>CPRA & CCPA</strong> </li> <li class="22090"> <a href="/en/help/22090-us-data-processing-addendum-template">Service Provider Addendum</a> </li> </ul> </li> <li class="has_child category-title 25916"> Cheat Sheets, Checklists and Tests <ul> <li class="22835"> <a href="/en/help/22835-gdpr-compliance-checklist">GDPR cheat sheet</a> </li> <li class="23672"> <a href="/en/help/23672-gdpr-cookie-consent-cheatsheet">GDPR Cookie Consent Cheatsheet</a> </li> <li class="65132"> <a href="/en/help/65132-us-privacy-legislations-overview">US privacy legislations Cheatsheet</a> </li> <li class="39705"> <a href="/en/help/39705-global-email-marketing-cheatsheet">Global Email Marketing Cheatsheet</a> </li> <li class="22226"> <a href="/en/help/22226-ccpa-compliance-checklist">CCPA compliance checklist</a> </li> <li class="25920"> <a href="https://iubenda.typeform.com/to/cDGLymwf">CPRA quiz</a> </li> <li class="64214"> <a href="https://www.iubenda.com/en/help/5463-how-to-comply-with-the-gdpr-cookie-law-caloppa-and-ccpa#quiz">Compliance self-assessment test</a> </li> </ul> </li> </ul> </li> <li class="has_child category-title 5228"> Account and Billing <ul> <li class="6633"> <a href="/en/help/6633-pricing-faqs">Pricing FAQs</a> </li> <li class="4014"> <a href="/en/help/4014-delete-account">How to Delete Your Account</a> </li> <li class="167417"> <a href="/en/help/167417-iubenda-multi-user-accounts-feature-overview">iubenda Multi-User Accounts Feature Overview</a> </li> <li class="has_child category-title 5353"> Plans and Licenses <ul> <li class="379"> <a href="/en/help/379-basic-license-limits">Limits of the Free Plan</a> </li> <li class="163856"> <a href="/en/help/163856-how-to-renew-or-upgrade-your-iubenda-plan">How to Renew or Upgrade Your iubenda Plan</a> </li> <li class="162983"> <a href="/en/help/162983-how-to-manage-your-licenses-all-legacy-guides">How to Manage Your Licenses [All Legacy Guides]</a> </li> <li class="155774"> <a href="/en/help/155774-how-to-delete-a-site">How to Delete a Site</a> </li> </ul> </li> <li class="has_child category-title 5354"> Payment <ul> <li class="543"> <a href="/en/help/543-why-is-my-paypal-payment-failing">Why Is My Payment Failing?</a> </li> <li class="440"> <a href="/en/help/440-how-to-disable-auto-renewal">How to Disable Auto-Renewal</a> </li> <li class="62707"> <a href="/en/help/62707-can-i-pay-by-bank-transfer">Can I Pay by Bank Transfer?</a> </li> <li class="62688"> <a href="/en/help/62688-how-to-add-change-your-current-payment-method">How to Update your Payment Method</a> </li> <li class="3848"> <a href="/en/help/3848-recurring-basis">Why the iubenda Service Is On a Recurring Basis</a> </li> </ul> </li> <li class="has_child category-title 5355"> Invoices <ul> <li class="2800"> <a href="/en/help/2800-invoices">Where Can I Find My Invoices?</a> </li> <li class="517"> <a href="/en/help/517-update-invoicing-information">How to Update Your Invoicing Information</a> </li> <li class="11223"> <a href="/en/help/11223-invoices-different-email">How to Receive Invoices on a Different Email Address</a> </li> </ul> </li> </ul> </li> <li class="has_child category-title 17381"> Partners and Affiliates <ul> <li class="128"> <a href="/en/help/128-affiliate-referral">How to Set up a Basic Affiliate/Referral Program Partnership with iubenda</a> </li> <li class="30386"> <a href="/en/help/30386-how-to-resell-iubenda-to-your-clients">How to resell iubenda’s solutions to your clients</a> </li> <li class="22206"> <a href="https://www.iubenda.com/en/help/15138-partner-directory">Need help getting set up? View our directory of certified partners</a> </li> </ul> </li> <li class="has_child category-title 17445"> About iubenda <ul> <li class="6758"> <a href="/en/help/6758-data-processing-agreement-between-iubenda-and-its-users">Data Processing Agreement iubenda &lt;&gt; users</a> </li> <li class="1931"> <a href="/en/help/1931-what-iubenda-tracks-and-what-it-doesnt-track">What iubenda Does and Does Not Track</a> </li> <li class="5699"> <a href="/en/help/5699-5-reasons-why-we-host-your-documents">5 Reasons Why We Host Your Documents</a> </li> </ul> </li> </ul> </nav> </div> <div class="toc-wrap sticky-top"> <nav id="toc" data-toggle="toc"></nav> <div class="mb-4 text-sm text-uppercase font-weight-bold text-muted toc-label">Table of Contents</div> </div> </div> <!-- /.doc_aside --> <div class="col-lg-9 help-tpl__main"> <div class="mb-4 d-block d-lg-none"> <button class="btn btn-sm btn-outline-light px-4 btn-aside help-tpl__show-index-btn">Show index</button> </div> <h1 class="help-tpl__main-title mb-5 display-4 font-weight-semibold"data-swiftype-name="title" data-swiftype-type="string">How to Configure Your Privacy Controls and Cookie Solution (Advanced Guide)</h1> <div class="entry_content entry_body_content doc_body" data-swiftype-name="body" data-swiftype-type="text" data-toc-scope > <div data-toc-activator=""> </div> <div id="invalidateconsent-update" class="my-4 rounded px-3 pt-3 pb-1 bg-important"> <h5 class="my-2">❗️ Update to the default value of the <code>invalidateConsentWithoutLog</code> parameter</h5> <p>Please note that starting from <strong>15-01-2023</strong>, the value of <code>invalidateConsentWithoutLog</code> has changed and is now set to <em>true</em>. This means that, if you have enabled the <a href="https://www.iubenda.com/en/help/45718-cookie-preference-logs">Cookie and Consent Preference Log</a>, by default a new consent is requested each time a user&#8217;s consent is not found recorded in the logs.</p> </div> <p>Here you&#8217;ll find an in-depth look at:</p> <ul class="wp-block-list"> <li><a href="#required-parameters">Required parameters</a></li> <li><a href="#compliance-settings">Compliance settings</a></li> <li><a href="#style-and-text">Style and text</a></li> <li><a href="#privacy-and-cookie-policy">Privacy and cookie policy</a></li> <li><a href="#advanced-settings">Advanced settings</a></li> </ul> <div class="rounded my-4 p-3 bg-fade"> <p class="mb-0">💡 Need an <strong>introduction</strong>? Learn configurator options, how to change banner style, position and more in our <a href="https://www.iubenda.com/en/help/3831">Privacy Controls and Cookie Solution introduction guide</a>.</p> </div> <p>Quick recap:</p> <div id="features-installation" class="accordion"> <div class="card"> <div id="headingOne" class="card-header"> <h5 class="mb-0"><button class="btn btn-link pl-0 collapsed" type="button" data-toggle="collapse" data-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne"> Cookie banner/consent banner features </button></h5> </div> <div id="collapseOne" class="collapse" aria-labelledby="headingOne" data-parent="#features-installation"> <div class="card-body"> <ul> <li>It&#8217;s implemented by inserting a simple code / script in all pages of the site;</li> <li>It shows a notice containing a standard text, it is fully customizable and contains a link to the cookie policy;</li> <li>It has a completely responsive design &#8211; optimized for various resolutions and device sizes;</li> <li>We ensure that the cookie policy can be viewed even before the user consent is provided;</li> <li>We ensure a proper functioning of the blocking of scripts &#8211; see the <a href="https://www.iubenda.com/en/help/1229">introductory guide for the blocking of cookies</a> for more information regarding this topic;</li> <li>Registers preferences via the continued browsing of the user, for instance, through the scroll action;</li> <li>After the consent has been collected, it asynchronously activates (namely without reloading the page) all the scripts that were previously blocked;</li> <li>If the consent has previously been provided by the user, the cookie banner/consent banner does not appear and the scripts are automatically executed;</li> <li><a href="https://www.iubenda.com/en/help/3831">Easily customize</a> with our configurator. Edit the look, details, features of the solution, all within a few clicks.</li> <li>The remote configuration feature allows most changes made in the configurator to apply directly to your website without needing to re-embed the code.</li> </ul> </div> </div> </div> <div class="card"> <div id="headingTwo" class="card-header"> <h5 class="mb-0"><button class="btn btn-link pl-0 collapsed" type="button" data-toggle="collapse" data-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo"> Installation </button></h5> </div> <div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#features-installation"> <div class="card-body"> <p>Once you&#8217;ve generated your cookie banner/consent banner (Privacy Controls and Cookie Solution &gt; Activate/Edit), you&#8217;ll get a <strong>similar</strong> code snippet:</p> <ul class="nav nav-tabs" id="myTab" role="tablist"> <li class="nav-item"> <a class="nav-link active" id="home-tab" data-toggle="tab" href="#home" role="tab" aria-controls="home" aria-selected="true">(New) Remote Configuration Snippet:</a> </li> <li class="nav-item"> <a class="nav-link" id="profile-tab" data-toggle="tab" href="#profile" role="tab" aria-controls="profile" aria-selected="false">(Old) Extended Snippet:</a> </li> </ul> <div class="tab-content py-4 mb-4" id="myTabContent"> <div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab"> <pre class="wp-block-code prettyprint linenums js-code"><code>&lt;script type=&quot;text/javascript&quot;&gt; var _iub = _iub || []; _iub.csConfiguration = { &quot;siteId&quot;: XXXXXX, // your siteId, &quot;cookiePolicyId&quot;: YYYYYY, // your cookiePolicyId, &quot;lang&quot;: &quot;en&quot; }; &lt;/script&gt; &lt;script type=&quot;text/javascript&quot; src=&quot;https://cs.iubenda.com/autoblocking/3095420.js&quot;&gt;&lt;/script&gt; &lt;script type=&quot;text/javascript&quot; src=&quot;///cdn.iubenda.com/cs/iubenda_cs.js&quot; charset=&quot;UTF-8&quot; async&gt;&lt;/script&gt; </code></pre> </div> <div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab"> <pre class="wp-block-code prettyprint linenums js-code"><code>&lt;script type=&quot;text/javascript&quot;&gt; var _iub = _iub || []; _iub.csConfiguration = { &quot;lang&quot;: &quot;en&quot;, &quot;siteId&quot;: XXXXXX, //use your siteId &quot;cookiePolicyId&quot;: YYYYYY, //use your cookiePolicyId &quot;banner&quot;: { &quot;position&quot;: &quot;float-top-center&quot;, &quot;acceptButtonDisplay&quot;: true, &quot;customizeButtonDisplay&quot;: true } }; &lt;/script&gt; &lt;script type=&quot;text/javascript&quot; src=&quot;//cdn.iubenda.com/cs/iubenda_cs.js&quot; charset=&quot;UTF-8&quot; async&gt;&lt;/script&gt;</code></pre> </div> </div> <p>Please note that the <strong>remote configuration feature</strong> simplifies the implementation process. Most changes made in the Privacy Controls and Cookie Solution configurator will apply directly to your website without needing to re-embed the code. This makes it easier to keep your site up-to-date.</p> <p>However, certain changes, such as using a custom CSS, the TCF tile, and US laws support, will still require you to re-embed the code. In any case, when you save your configuration, you will be notified whether the changes will apply directly or if re-embedding the code is necessary. </p> <p>To display the cookie banner/consent banner on your site, copy and paste the snippet above (remember to generate <strong>your own code</strong> on Privacy Controls and Cookie Solution &gt; Activate/Edit) at the end of the <code>HEAD</code> tag of your pages, <strong>or</strong> use one of our plugins for:</p> <ul> <li><a href="https://www.iubenda.com/en/help/1215">WordPress</a></li> <li><a href="https://www.iubenda.com/en/help/1323">Joomla!</a></li> <li><a href="https://www.iubenda.com/en/help/4338">PrestaShop</a></li> <li><a href="https://www.iubenda.com/en/help/9591">Magento</a></li> </ul> <p>We also have step-by-step integration guides for <a href="https://www.iubenda.com/en/help/36226">custom websites</a>, <a href="https://www.iubenda.com/en/help/10811">Shopify</a>, <a href="https://www.iubenda.com/en/help/18531">Webflow</a>, <a href="https://www.iubenda.com/en/help/24221">Wix</a> and <a href="https://www.iubenda.com/en/help/12848">Squarespace</a>.</p> <p>Drupal users, you can access the class via <a href="https://iubenda.link/php-class">direct download</a> or <a href="https://packagist.org/packages/iubenda/iubenda-cookie-class">Packagist</a>, and find full instructions in the <a href="https://www.iubenda.com/en/help/1976">PHP class guide</a>.</p> </div> </div> </div> <div class="card"> <div id="headingThree" class="card-header"> <h5 class="mb-0"><button class="btn btn-link pl-0 collapsed" type="button" data-toggle="collapse" data-target="#collapseThree" aria-expanded="false" aria-controls="collapseThree"> Prior Blocking </button></h5> </div> <div id="collapseThree" class="collapse" aria-labelledby="headingThree" data-parent="#features-installation"> <div class="card-body"> <p>In addition to displaying a cookie banner/consent banner, you must also block cookies <strong>prior</strong> to consent:</p> <ul> <li>Our plugins for <a href="https://www.iubenda.com/en/help/1215">WordPress</a>, <a href="https://www.iubenda.com/en/help/1323">Joomla!</a>, <a href="https://www.iubenda.com/en/help/4338">PrestaShop</a> and <a href="https://www.iubenda.com/en/help/9591">Magento</a> automatically block the most common scripts. More info on the related guides.</li> <li>If you don&#8217;t use one of these platforms, you can block cookies by using any of the blocking methods described in <a href="https://www.iubenda.com/en/help/3081">this guide</a> (most popular are: <a href="https://www.iubenda.com/en/help/1235">Google Tag Manager</a>, <a href="https://www.iubenda.com/en/help/1229">manual tagging</a> and <a href="https://www.iubenda.com/en/help/27137">Google Consent Mode</a>).</li> </ul> </div> </div> </div> <div class="card"> <div id="headingFour" class="card-header"> <h5 class="mb-0"><button class="btn btn-link pl-0 collapsed" type="button" data-toggle="collapse" data-target="#collapseFour" aria-expanded="false" aria-controls="collapseFour"> Proofs of users&#8217; preferences </button></h5> </div> <div id="collapseFour" class="collapse" aria-labelledby="headingFour" data-parent="#features-installation"> <div class="card-body"> <p>Many Data Protection Authorities across the EU have strengthened their requirements and aligned their rules on cookies and trackers with the requirements of the GDPR, in particular it&#8217;s required that you record and store proofs of your users’ preferences.</p> <p><a href="https://www.iubenda.com/en/help/1177#cpl">Click here</a> for more info on how to activate <strong>Cookie and Consent Preference Log</strong> within your Privacy Controls and Cookie Solution.</p> </div> </div> </div> </div> <div class="pt-0 pb-5 mb-5"><script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" src="https://fast.wistia.com/embed/medias/3h6spkickf.jsonp" async=""></script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" src="https://fast.wistia.com/assets/external/E-v1.js" async=""></script> <div class="wistia_responsive_padding" style="padding: 56.25% 0 0 0; position: relative;"> <div class="wistia_responsive_wrapper" style="height: 100%; left: 0; position: absolute; top: 0; width: 100%;"><span class="wistia_embed wistia_async_3h6spkickf popover=true popoverAnimateThumbnail=true videoFoam=true" style="display: inline-block; height: 100%; position: relative; width: 100%;"> </span></div> </div> </div> <p>Note: <strong>all</strong> of the following parameters need to be included within <code>_iub.csConfiguration {}</code>.</p> <h2 class="wp-block-heading" id="required-parameters">1. Required parameters</h2> <p><code>siteId</code> – Your site&#8217;s ID code (notice: This ID is used to share the preference among multiple cookies policies in different languages that are attributable to the same website/app)</p> <p><code>cookiePolicyId</code> – Your cookie policy&#8217;s ID code</p> <p><code>lang</code> – This parameter defines the language in which to display the content of the cookie banner/consent banner (for example, &#8220;it&#8221; for the Italian, &#8220;en&#8221; for English, &#8220;es&#8221; for Spanish, etc..). All the language localizations available within the generator are also available for the content of the banner.</p> <h2 class="wp-block-heading" id="compliance-settings">2. Compliance settings</h2> <p><code>countryDetection</code> <em>(boolean, default false)</em> -Allows you to automatically detect the user country.</p> <p><strong>For the GDPR</strong></p> <p>To limit prior-blocking and cookie consent requests only to users from the EU (where this is a legal requirement) while running cookies scripts normally in regions where you are still legally allowed to do so, set this parameter to <em>true</em> if <code>gdprAppliesGlobally</code> is set to <em>false</em>.</p> <p>If you disable this option, remember to set <code>gdprApplies:false</code> on all page views where the consent is not being requested.</p> <p><strong>For the US State Laws</strong></p> <p>To satisfy the US requirements only to users from the US while running cookies scripts normally in regions where you are still legally allowed to do so, set this parameter to <em>true</em> if usprApplies is set to <em>false</em>.</p> <p>If you disable this option, you can set <code>usprApplies:false</code> on all page views where the US requirements are not relevant.</p> <p><strong>For the CCPA</strong></p> <p>To activate CCPA protections only for users to whom the CCPA applies, set this parameter to <em>true</em> if <code>ccpaApplies</code> is set to <em>false</em>.</p> <p><strong>For the LGPD</strong></p> <p>To satisfy the LGPD requirements only to users from Brazil while running cookies scripts normally in regions where you are still legally allowed to do so set this parameter to <em>true</em> if <code>lgpdAppliesGlobally</code> is set to <em>false</em>.</p> <p>If you disable this option, you can set <code>lgpdApplies:false</code> on all page views where the LGPD requirements are not relevant.</p> <h3 class="wp-block-heading" id="gdpr">2.1 GDPR</h3> <p><code>enableGdpr</code> <em>(boolean, default true)</em> – If <em>true</em>, you&#8217;ll enable/make available the GDPR functionality in the Privacy Controls and Cookie Solution (without actually applying it).</p> <p><code>gdprAppliesGlobally</code> <em>(boolean, default true)</em> – If <em>true</em>, you’ll apply GDPR protections to all users. Set this parameter to <em>false</em> and <code>countryDetection:true</code> to request consent to EU users only. Remember that if you&#8217;re based in the EU you must apply the GDPR also to users based outside of the EU.</p> <p><code>gdprApplies</code> <em>(boolean, default true)</em> – If <em>false</em>, you won’t apply GDPR protections to the current user and he will not be shown the cookie banner/consent banner. If you&#8217;ve set <code>countryDetection:false</code>, you should set <code>gdprApplies:false</code> on all page views where the consent is not being requested.</p> <h4 class="wp-block-heading" id="buttons">Buttons (accept, customize, reject, close) and specific copy</h4> <p>The options listed below must be contained within the <code>banner {}</code> object:</p> <p><code>acceptButtonDisplay</code> <em>(boolean, default false)</em> &#8211; Determines whether or not the &#8220;Accept&#8221; button is displayed.</p> <p><code>customizeButtonDisplay</code> <em>(boolean, default false)</em> &#8211; Determines whether or not the &#8220;Learn more and customize&#8221; button is displayed.</p> <p><code>rejectButtonDisplay</code> <em>(boolean, default false)</em> &#8211; Determines whether or not the &#8220;Reject&#8221; button is displayed. When <em>true</em> <code>banner.closeButtonDisplay</code> is forced to <em>false</em>. View the <a href="https://codepen.io/iubenda/pen/QWWEdQj?editors=1000" target="_blank" rel="noopener">demo on CodePen</a>.</p> <p><code>closeButtonDisplay</code> <em>(boolean, default true)</em> &#8211; If set to <em>false</em>, the banner&#8217;s close button won&#8217;t be displayed.</p> <p><code>closeButtonRejects</code> (<em>boolean, default false</em>) &#8211; If set to <em>true</em>, when the banner&#8217;s close button is clicked, user&#8217;s consent is considered as denied.</p> <p><code>explicitWithdrawal</code> <em>(boolean, default false)</em> &#8211; If set to <em>true</em>, the sentence: <em>&#8220;You can freely give, deny, or withdraw your consent at any time&#8221;</em> will be added to the banner copy.</p> <h4 class="wp-block-heading" id="per-category-consent">Per-category consent</h4> <p><code>perPurposeConsent</code> <em>(boolean, default false)</em> – Setting this parameter to <em>true</em> gives users granular control over which categories of cookies they consent to (see below). The categories are displayed along with a short description and toggle so that users can either grant or reject consent for the particular processing purpose.</p> <p>The categories displayed in the modal are automatically detected and passed from your iubenda cookie policy to the Privacy Controls and Cookie Solution. However, the categories displayed can also be customized by using the <code>purposes</code> parameter below.</p> <p>Examples:</p> <ul class="wp-block-list"> <li><a href="https://codepen.io/iubenda/pen/KKKxmVO?editors=1000" target="_blank" rel="noopener">Per-category consent</a></li> <li><a href="https://codepen.io/iubenda/pen/zYYJwYr?editors=1000" target="_blank" rel="noopener">Per-category consent with custom categories</a> (see below)</li> <li><a href="https://codepen.io/iubenda/pen/mddKRzW?editors=1000" target="_blank" rel="noopener">Per-category consent with IAB TCF enabled</a></li> </ul> <div class="my-4 rounded px-3 pt-3 pb-1 bg-caution"> <h5>Manual tagging and per-category consent</h5> <p>If you&#8217;ve enabled the per-category consent feature you&#8217;ll need to specify the categories of scripts that install cookies prior to consent with a special comma-separated <code>data-iub-purposes</code> attribute. <a href="https://www.iubenda.com/en/help/1229#per-category-consent">Read this guide for further instructions and examples</a> on using manual tagging and per-category consent.</p> </div> <p><code>purposes</code> <em>(string, default null)</em> – Purposes are grouped into 5 categories (Necessary, Functionality, Experience, Measurement, Marketing), each having an id (1, 2, 3, 4, 5). By default, we use the purposes from the iubenda cookie policy connected to your configuration, but you can customize which categories to display with <code>purposes</code> (for example, if you use your own cookie policy).</p> <p>Here are the purposes included in each category:</p> <ol class="wp-block-list"> <li><strong>Necessary</strong> (id <code>1</code>). Purposes included:<ul><li>Backup saving and management</li></ul> <ul class="wp-block-list"> <li>Hosting and backend infrastructure</li> <li>Managing landing and invitation pages</li> <li>Platform services and hosting</li> <li>SPAM protection</li> <li>Traffic optimization and distribution</li> <li>Infrastructure monitoring</li> <li>Handling payments</li> <li>Registration and authentication provided directly by @{this_application}</li> <li>Collection of privacy-related preferences</li> <li>Building and running @{this_application}</li> </ul> </li> <li><strong>Functionality</strong> (id <code>2</code>). Purposes included: <ul class="wp-block-list"> <li>Contacting the User</li> <li>Interaction with live chat platforms</li> <li>Managing web conferencing and online telephony</li> <li>Managing support and contact requests</li> <li>Interaction with support and feedback platforms</li> <li>Tag Management</li> <li>Registration and authentication</li> <li>User database management</li> <li>Connecting data</li> <li>Handling activities related to productivity</li> <li>Selling goods and services online</li> </ul> </li> <li><strong>Experience</strong> (id <code>3</code>). Purposes included: <ul class="wp-block-list"> <li>Content commenting</li> <li>Interaction with data collection platforms and other third-parties</li> <li>Displaying content from external platforms</li> <li>Interaction with external social networks and platforms</li> <li>Interaction with online survey platforms</li> <li>RSS feed management</li> <li>Social features</li> <li>Access to third-party accounts</li> <li>Tools for social media</li> </ul> </li> <li><strong>Measurement</strong> (id <code>4</code>). Purposes included: <ul class="wp-block-list"> <li>Analytics</li> <li>Beta testing</li> <li>Content performance and feature testing (A/B testing)</li> <li>Heat mapping and session recording</li> <li>Managing data collection and online surveys</li> </ul> </li> <li><strong>Marketing</strong> (id <code>5</code>). Purposes included: <ul class="wp-block-list"> <li>Advertising</li> <li>Advertising service infrastructure</li> <li>Commercial affiliation</li> <li>Managing contacts and sending messages</li> <li>Remarketing and behavioral targeting</li> </ul> </li> </ol> <p>So, for example, if you&#8217;re using all 5 categories, and you&#8217;re not using an iubenda cookie policy, you&#8217;ll need to specify <code>"purposes": "1, 2, 3, 4, 5"</code>, if you don&#8217;t use Measurement (id 4) you can simply specify <code>"purposes": "1, 2, 3, 5"</code> and so on.</p> <p>Note: to be effective, this parameter requires the parameter <code>perPurposeConsent</code> to be set to <em>true</em> (see above for further details).</p> <p><code>listPurposes</code> <em>(boolean, default false)</em> &#8211; If <em>true</em>, it displays purposes in the first layer of the cookie banner/consent banner (to be effective, <code>perPurposeConsent</code> must be set to <em>true</em>). This option must be contained within the <code>banner {}</code> object.</p> <p><code>banner.showPurposesToggles</code> <em>(true/false, default false)</em> &#8211; Setting this parameter to <em>true</em>, gives users granular control in the first layer of the cookie banner over which categories of cookies they consent to. The categories <em>(Necessary, Functionality, Experience, Measurement, Marketing)</em> are displayed along with a toggle so that users can quickly either grant or reject consent for the particular processing purpose.</p> <p>Consider that the categories displayed in the toggles are automatically detected and passed from your iubenda Cookie Policy to the Privacy Controls and Cookie Solution or, if you&#8217;ve customized them, from the categories listed in the <code>purposes</code> parameter.</p> <h3 class="wp-block-heading" id="us-state-laws">2.2 US State laws</h3> <div class="my-4 rounded px-3 pt-3 pb-1 bg-important"> <h5 class="my-2">❗️ Important</h5> <p>We’ve added a new compliance setting: <strong>US State Laws</strong>, to help you meet the requirements of the following US state privacy laws: <a href="https://www.iubenda.com/en/help/73819">CCPA/CPRA</a> and <a href="https://www.iubenda.com/en/help/106345">VCDPA</a>. It offers broader support to the new US legislation and replaces the CCPA option.</p> </div> <p><code>enableUspr</code> <em>(boolean, default false)</em> – If <em>true</em>, you&#8217;ll enable/make available the US functionality in the Privacy Controls and Cookie Solution (without actually applying it).</p> <p><code>usprApplies</code> <em>(undefined/boolean, default undefined)</em> – If <code>enableUspr</code> is <em>true</em>, <code>countrydetection</code> is <em>true</em>, <code>upsrApplies</code> is <em>undefined</em>, the US regulations are applied to US users only. If set to <em>true</em> US legislation is always applied.</p> <p><code>usprPurposes</code> (<code>string, default undefined)</code> comma separated Ids: e.g. <code>usprPurposes:s,sh,sd5</code><br>this is the list of purposes handled by the CS:</p> <ul class="wp-block-list"> <li><code>s</code> → selling of personal info (same as CCPA <code>s</code>)</li> <li><code>sh</code> → sharing of personal info</li> <li><code>adv</code> → targeted advertising</li> </ul> <p>Sensitive data:</p> <ul class="wp-block-list"> <li><code>sd5</code> → Sensitive Data, Citizenship or Immigration Status</li> <li><code>sd8</code> → Sensitive Data, Precise Geolocation Data</li> <li><code>sd9</code> → Sensitive Data, Consumer’s Social Security, Driver’s License, State Identification Card, or Passport Number</li> </ul> <p><code>showBannerForUS (true/false, default false)</code> if set to <em>true</em> a banner will be served to the users. If there’s a sensitive data in usprPurposes, <code>showBannerForUS</code>is forced to <em>true</em>.</p> <p><code>privacyPolicyNoticeAtCollectionUrl</code> (<code>string, default undefined</code>) the URL to the notice at collection, section of the privacy policy.</p> <h4 class="wp-block-heading" id="us-classes">Classes</h4> <p><code>iubenda-cs-uspr-link</code> – Add this class to any element of the page to allow users to open the notice at collection.</p> <p><code>iubenda-cs-preferences-link</code> – Add this class to any element of the page to allow users to update their preferences and open the 2nd layer.</p> <h4 class="wp-block-heading" id="ccpa">CCPA</h4> <div class="my-4 rounded p-3 bg-fade"> <p id="banner" class="mb-0">Please note that to handle new US legislations, you should rely on the new <a href="#us-state-laws">US State laws</a> parameters.</p> </div> <p><code>enableCcpa</code> <em>(boolean, default false)</em> – If <em>true</em>, you&#8217;ll enable/make available the CCPA functionality in the Privacy Controls and Cookie Solution (without actually applying it).</p> <p><code>ccpaApplies</code> <em>(boolean, default undefined)</em> – If <em>true</em>, you&#8217;ll apply CCPA protections to the current user.</p> <p><code>ccpaNoticeDisplay</code> <em>(boolean, default true)</em> – If <em>false</em>, you won&#8217;t display an actual banner to notify users about CCPA (effective only if GDPR doesn&#8217;t apply).</p> <p><code>ccpaAcknowledgeOnDisplay</code> <em>(boolean, default false)</em> – If <code>ccpaNoticeDisplay: true</code>, allows you to specify what constitutes acknowledgment of the notice: the simple loading of the notice (<em>true</em>) or the explicit interaction after the notice has loaded (<em>false</em>).</p> <p><code>ccpaAcknowledgeOnLoad </code><em>(boolean, default false)</em> &#8211; If set to <em>true</em> and <code>ccpaAcknowledgeOnDisplay: false</code>, the notice is intended acknowledged at the page loading.</p> <p><code>ccpaLspa</code> <em>(boolean, default undefined)</em> – Allows you to specify whether the transaction should be performed under the Limited Service Provider Agreement (LSPA) by IAB.</p> <h4 class="wp-block-heading" id="ccpa-classes">Classes</h4> <p><code>iubenda-ccpa-opt-out</code> – By adding this class to any element of the page, the click on the item triggers the opening of a dialog where the user can confirm their intention to opt-out from the sale of their personal information (&#8220;Do Not Sell My Personal Information&#8221; link).</p> <h3 class="wp-block-heading">2.3 LGPD</h3> <p><code>enableLgpd</code> <em>(boolean, default false)</em> – If <em>true</em>, you&#8217;ll enable/make available the LGPD functionality in the Privacy Controls and Cookie Solution (without actually applying it).</p> <p><code>lgpdAppliesGlobally</code> <em>(boolean, default true)</em> – If <em>true</em>, you’ll apply LGPD protections to all users. Set this parameter to <em>false</em> and <code>countryDetection:true</code> to request LGPD consent to Brazilian users only.</p> <p><code>lgpdApplies</code> <em>(boolean, <em>default undefined</em>)</em> – If <em>false</em>, you won’t apply LGPD protections to the current user and he will not be shown the cookie banner/consent banner. This behavior applies regardless of the value of <code>lgpdAppliesGlobally</code> (whether it is <em>true</em> or <code>lgpdAppliesGlobally</code> is <em>false</em> with <code>countryDetection</code> : <em>true</em> )</p> <p>Please note that all the <a href="#buttons">parameters available</a> for the GDPR can also be used for LGPD configuration.</p> <h3 class="wp-block-heading" id="iab-transparency-and-consent-framework">2.4 IAB Transparency and Consent Framework</h3> <p>Major advertising networks now require publishers to gain consent before showing personalized ads. In <a href="https://www.iubenda.com/en/help/7440">this guide</a> you&#8217;ll find out how you can meet this requirement with the IAB Transparency and Consent Framework and our Privacy Controls and Cookie Solution.</p> <p><code>enableTcf</code> <em>(boolean, default false)</em> – If <em>true</em>, users will be able to manage their advertising tracking preferences according to the <a href="https://www.iubenda.com/en/help/7440">IAB Transparency and Consent Framework</a>.</p> <p><code>googleAdditionalConsentMode</code> <em>(boolean, default false)</em> &#8211; If set to <em>true</em>, you&#8217;ll be able to gather consent for Google ad partners that are not yet part of the Transparency and Consent Framework, but are on <a href="https://support.google.com/admanager/answer/9012903?hl=en">Google&#8217;s Ad Tech Providers (ATP) list</a>.</p> <p id="tcfpurposes"><code>tcfPurposes</code> <em>(object)</em> – TCF v2.0 has 10 purposes, each having an id:</p> <ol class="wp-block-list"> <li>Store and/or access information on a device</li> <li>Select basic ads</li> <li>Create a personalised ads profile</li> <li>Select personalised ads</li> <li>Create a personalised content profile</li> <li>Select personalised content</li> <li>Measure ad performance</li> <li>Measure content performance</li> <li>Apply market research to generate audience insights</li> <li>Develop and improve products</li> </ol> <p>With TCF v2.0 you can:</p> <ul class="wp-block-list"> <li>limit the legal basis to consent only or to legitimate interest only, as well as both; and</li> <li>choose which TCF purposes to prompt</li> </ul> <p>Here’s how to do it. Thanks to <code>tcfPurposes</code>, in the following example we&#8217;ll:</p> <ul class="wp-block-list"> <li>disable the purpose number 1 (&#8220;Store and/or access information on a device&#8221;, set to <code>consent_not_needed</code>, possible only if <a href="#purposeonetreatment">our legislation does not require consent for this purpose</a>) *,</li> <li>disable the purpose number 2 (&#8220;Select basic ads&#8221;, set to <code>false</code>),</li> <li>limit the legal basis to legitimate interest only (<code>li_only</code>) for purpose number 4 (&#8220;Select personalised ads&#8221;), and</li> <li>limit the legal basis to consent only (<code>consent_only</code>) for purpose number 7 (&#8220;Measure ad performance&#8221;)</li> </ul> <pre class="wp-block-code prettyprint linenums js-code"><code>_iub.csConfiguration = { "lang": "en", "siteId": xxxxxx, //use your siteId "cookiePolicyId": yyyyyy, //use your cookiePolicyId "enableTcf": true, ... "tcfPurposes": { "1": "consent_not_needed", "2": false, "4": "li_only", "7": "consent_only" }, "tcfPublisherCC": "DE", "banner": { ... } }</code></pre> <p>* Note about <code>PurposeOneTreatment</code>: previously, in some countries it was not required get user consent for purpose number 1 (&#8220;Store and/or access information on a device&#8221;). In those cases, asking for consent for purpose one could be disabled by using <code>"1": "consent_not_needed"</code>. However since <strong>this option should only be enabled if legally supported by the legislation that applies to you</strong>, and, at the time of writing, <strong>no EU country currently supports this legislatively</strong> – we strong advise against using it.</p> <p><code>askConsentIfCMPNotFound</code> <em>(boolean, default true)</em> – If set to <em>true</em>, and the IAB Framework preference is not found, the Privacy Controls and Cookie Solution will, by default, request a new consent from users that had provided consent prior to the activation of the Framework. Set this option to <em>false</em> to disable this default behavior.</p> <p><code>newConsentAtVendorListUpdate</code> <em>(number, default undefined)</em> – Number of days to wait to trigger a new consent request after the vendorlist.json is updated. If set to <em>undefined</em>, users who have already given consent will not be shown the cookie banner/consent banner again, and consent for new vendors will be set to off. If set to <em>0</em> users will get prompted with a new consent request whenever the vendor list is updated.</p> <p><code>tcfPublisherCC</code> (<em>string, default null</em>) &#8211; Two-letter country code expressed in <a href="https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2">ISO 3166-1 standard</a> that determines the country legislation of reference . Normally corresponds to the country code of the country in which the publisher&#8217;s business entity is established. You can use this parameter to set the publisher&#8217;s country code in the TCF preference string when the TCF purpose &#8220;1&#8221; is set to &#8220;<em>consent_not_needed</em>&#8220;</p> <p><code>acceptTcfSpecialFeaturesWithAcceptBtn</code> (<em>string, default true</em>) &#8211; If <code>false</code> and the user clicks the Accept button, the TCF Special Features are not enabled and saved in the TCF consent string.</p> <h4 class="wp-block-heading" id="tcf-classes">Classes</h4> <p><code>iubenda-advertising-preferences-link</code> &#8211; By adding this class to any element of the page, the click on the item triggers the opening of the advertising tracking settings modal (allowing users to update their TCF preferences even after closing the cookie banner/consent banner).</p> <p>Please note that as an alternative to this specific TCF class, you can also use the &#8220;generic&#8221; <code>iubenda-cs-preferences-link</code>, the result will be the same.</p> <p><code>iubenda-vendor-list-link</code> &#8211; Add this class to any element of the page to allow users to reopen the TCF vendor list.</p> <h2 class="wp-block-heading" id="style-and-text">3. Style and text</h2> <div class="my-4 rounded p-3 bg-fade"> <p id="banner" class="mb-0"><code>banner {}</code> <em>(object)</em> – Use this object to customize the look of the banner. The options listed below must be contained within the <code>banner {}</code> object.</p> </div> <h3 class="wp-block-heading" id="format-and-position">3.1 Format and Position</h3> <p><code>position</code> <em>(string, default “float-top-center”)</em> &#8211; It defines the position of the cookie banner/consent banner. Available values: <em>top</em>, <em>bottom</em>, <em>float-top-left</em>, <em>float-top-right</em>, <em>float-bottom-left</em>, <em>float-bottom-right</em>, <em>float-top-center</em>, <em>float-bottom-center</em> and <em>float-center</em>.</p> <p><code>backgroundOverlay</code> <em>(boolean, default false)</em> &#8211; Set this parameter to <em>true</em> in order to add an opaque background overlay effect to the rest of the page when the cookie banner/consent banner is shown.</p> <h3 class="wp-block-heading" id="theme">3.2 Theme</h3> <h4 class="wp-block-heading" id="theme-logo">Logo</h4> <p><code>logo</code> <em>(string)</em> &#8211; URL (https recommended) or base64 equivalent of an image to be used as a logo for the header of the cookie banner/consent banner. Use a white SVG on transparent background for best result.</p> <p><code>brandTextColor</code> <em>(string, default &#8220;#000&#8221;)</em> &#8211; Text color of the header of the modal/cookie banner/consent banner.</p> <p><code>brandBackgroundColor</code> <em>(string, default &#8220;#fff&#8221;)</em> &#8211; Background color of the header of the cookie banner/consent banner.</p> <h4 class="wp-block-heading" id="theme-banner-colors">Banner colors</h4> <p><code>backgroundColor</code> <em>(string, default &#8220;#000&#8221;)</em> – The background color of the banner.</p> <p><code>textColor</code> <em>(string, default &#8220;#fff&#8221;)</em> – The color of the banner&#8217;s text.</p> <h4 class="wp-block-heading" id="theme-buttons">Buttons</h4> <p><code>acceptButtonColor</code> <em>(string, default &#8220;#0073ce&#8221;)</em> &#8211; Background color of the &#8220;Accept&#8221; button.</p> <p><code>acceptButtonCaptionColor</code> <em>(string, default &#8220;#fff&#8221;)</em> &#8211; Text color of the &#8220;Accept&#8221; button.</p> <p><code>customizeButtonColor</code> <em>(string, dark theme default &#8220;#212121&#8221;, light theme default &#8220;#dadada&#8221;)</em> &#8211; Background color of the &#8220;Learn more and customize&#8221; button.</p> <p><code>customizeButtonCaptionColor</code> <em>(string, dark theme default &#8220;#fff&#8221;, light theme default &#8220;#4d4d4d&#8221;)</em> &#8211; Text color of the &#8220;Learn more and customize&#8221; button.</p> <p><code>rejectButtonColor</code> <em>(string, default &#8220;#0073ce&#8221;)</em> &#8211; Background color of the &#8220;Reject&#8221; button.</p> <p><code>rejectButtonCaptionColor</code> <em>(string, default &#8220;#fff&#8221;)</em> &#8211; Text color of the &#8220;Reject&#8221; button.</p> <p><code>continueWithoutAcceptingButtonColor</code> <em>(string, default &#8220;#fff&#8221;)</em> – Background color of the <em>“Continue without accepting” button</em>.</p> <p><code>continueWithoutAcceptingButtonCaptionColor</code> <em>(string, default &#8220;#000&#8221;)</em> – Text color of the <em>“Continue without accepting” button</em>.</p> <h4 class="wp-block-heading" id="theme-advanced-settings">Advanced settings</h4> <p><code>applyStyles</code> <em>(boolean, default true)</em> &#8211; By setting this parameter to <em>false</em> , the default style / CSS is not applied to the banner; this parameter can be useful, for example when you want to give the banner a different style than the standard one.</p> <h5 class="wp-block-heading">Custom CSS Endpoints</h5> <p>The recommended starting point for custom styling is to use our CSS as a base. This allows for the reapplication of styles excluded by the <code>applyStyles</code> option, with the benefit of being modifiable when implemented on your pages. For an illustration of a banner with custom CSS, refer to our example: &#8220;<a href="https://codepen.io/iubenda/pen/LaPojg" target="_blank" rel="noreferrer noopener">Banner with Custom CSS</a>&#8220;.</p> <p>Our system now automatically updates and serves custom styles via a CDN, optimizing the distribution and loading times of your custom styles.</p> <p>Here are the endpoints for the custom CSS:</p> <ul class="wp-block-list"> <li>Current Version:<br><code><a href="https://cdn.iubenda.com/cs/custom_banner_style.css" target="_blank" rel="noreferrer noopener">https://cdn.iubenda.com/cs/custom_banner_style.css</a></code></li> <li>Beta Version:<br><code><a href="https://cdn.iubenda.com/cs/beta/custom_banner_style.css" target="_blank" rel="noreferrer noopener">https://cdn.iubenda.com/cs/beta/custom_banner_style.css</a></code></li> <li>Stable Version:<br><code><a href="https://cdn.iubenda.com/cs/stable/custom_banner_style.css" target="_blank" rel="noreferrer noopener">https://cdn.iubenda.com/cs/stable/custom_banner_style.css</a></code></li> <li>Specific Version (illustrating the first automated version):<br><code><a href="https://cdn.iubenda.com/cookie_solution/iubenda_cs/1.50.0/custom_banner_style.css" target="_blank" rel="noreferrer noopener">https://cdn.iubenda.com/cookie_solution/iubenda_cs/1.50.0/custom_banner_style.css</a></code></li> </ul> <p><code>zIndex</code> <em>(number)</em> – This is the zIndex of the banner&#8217;s div. The default value is 99999998.</p> <h3 class="wp-block-heading" id="text">3.3 Text</h3> <h4 class="wp-block-heading" id="text-font-size">Font size</h4> <p><code>fontSize</code> <em>(string, default null)</em> – The dimension of the banner&#8217;s text (including the closing button). If this option is active the possible values in the options <code>banner.fontSizeCloseButton</code> and <code>banner.fontSizeBody</code> will not be taken into account.</p> <p><code>fontSizeCloseButton</code> <em>(string, default &#8220;20px&#8221;)</em> – The dimension of the banner&#8217;s closing button.</p> <p><code>fontSizeBody</code> <em>(string, default &#8220;14px&#8221;)</em> – The dimension of the banner&#8217;s text content.</p> <h4 class="wp-block-heading" id="text-banner-copy">Banner copy</h4> <p><code>content</code> <em>(string)</em> – This is the textual content inside the cookie banner/consent banner. For example, for the English version the default value is:</p> <p><em>Notice<br>We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the</em> <em>%{cookie_policy_link}.</em></p> <p>Please note that <code>banner.content</code> can be used only to customize the text of the notice, and it allows you to specify special formatting to the text with HTML tags, but if you want to modify the structure of the notice (e.g., adding buttons or special layouts), then you should use <a href="#text-advanced-settings"><code>banner.html</code></a>.</p> <div class="my-4 rounded p-4 bg-fade"> <h5>Shortcodes</h5> <p>Shortcodes are special words that can be used inside <code>banner.content</code> and <a href="#text-advanced-settings"><code>banner.html</code></a> as a placeholder for something else. You can use them when you want to customize the banner but still keep the UI elements that allow to have the standard Privacy Controls and Cookie Solution behaviour.</p> <p>Shortcodes available for <code>banner.content</code>:</p> <ul> <li><code>%{cookie_policy_link}</code> is replaced with a link to <code>cookiePolicyUrl</code> and with the caption specified in <code>banner.cookiePolicyLinkCaption</code></li> <li><code>%{advertising_preferences_link}</code> is replaced with a link to the Transparency and Consent Framework widget</li> <li><code>%{vendor_list_link}</code> is replaced with a link to the list of Transparency and Consent Framework vendors</li> <li><code>%{privacy_policy}</code> is replaced with a link to the privacy policy (needed for CCPA)</li> <li><code>%{do_not_sell}</code> is replaced with a link to opt out of CCPA selling</li> </ul> <p>Here&#8217;s an <a href="https://codepen.io/iubenda/pen/wvGNrJz" target="_blank" rel="noopener noreferrer">example of a cookie banner/consent banner with custom HTML and content</a>.</p> <p>Notes</p> <ul> <li><code>%{cookie_policy_link}</code> is the shortcode where the link of the cookie policy is placed. Remember that by default, the cookie policy linked in the banner is the one hosted on our servers. In order to change the default behavior, you need to modify the <code>cookiePolicyUrl</code> parameter (please refer to the <a>related section of this guide</a> for more information on <code>cookiePolicyUrl</code>).</li> <li>The content of the cookie banner/consent banner will be localized in all languages available in the generator (the language in which to display the banner content is defined through the parameter <code>lang</code>).</li> <li>If you&#8217;ve enabled the <a href="https://www.iubenda.com/en/help/7440">Transparency and Consent Framework</a>, you may notice that the banner text is quite long – this is necessary to meet IAB&#8217;s minimum requirements. Therefore, please read <a href="https://www.iubenda.com/en/help/7440#minimum-configuration-requirements">IAB&#8217;s requirements</a> carefully before editing the content of the banner.</li> <li>In order to make sure that the cookie policy is correctly displayed, it&#8217;s necessary that the <code>iubenda-cs-cookie-policy-lnk</code> class is not used elsewhere on the same page.</li> </ul> </div> <p><code>acceptButtonCaption</code> <em>(string, default &#8220;Accept&#8221;)</em> – The text of the banner&#8217;s &#8220;Accept&#8221; button.</p> <p><code>customizeButtonCaption</code> <em>(string, default &#8220;Learn more and customize&#8221;)</em> – The text of the banner&#8217;s &#8220;Learn more and customize&#8221; button.</p> <p><code>rejectButtonCaption</code> <em>(string, default “Reject”)</em> – The text of the banner&#8217;s &#8220;Reject&#8221; button.</p> <p><code>closeButtonCaption</code> <em>(string, default &#8220;x&#8221;)</em> – The text of the banner&#8217;s close button (formerly <code>innerHtmlCloseBtn</code>).</p> <p><code>continueWithoutAcceptingButtonCaption</code> <em>(string, default &#8220;false&#8221;)</em> – The text of the <em>Continue without accepting</em> button.</p> <p><code>useThirdParties</code> <em>(boolean, default true)</em> &#8211; If set to <em>false</em>, any mention of third parties and the use of related third-party cookies and trackers is excluded from the banner text.</p> <p><code>showTotalNumberOfProviders</code> <em>(boolean, default false)</em> – If set to <em>true</em>, the total number of providers specified in <code>totalNumberOfProviders</code> will be displayed,</p> <p><code>totalNumberOfProviders</code> <em>(number, default undefined)</em> when undefined and <code>showTotalNumberOfProviders</code> is true, it will show in the banner text the number of third parties involved in data processing added in the Privacy and Cookie Policy Generator. If set manually, it will show in the banner text the value specified.</p> <h4 class="wp-block-heading" id="text-advanced-settings">Advanced settings</h4> <p><code>html</code> <em>(string, default null)</em> – It is the default HTML of the banner, through this parameter it can be replaced with a customized one.</p> <p>Notes: some elements are in any case necessary for the proper functioning of the banner, in particular:</p> <ul class="wp-block-list"> <li><code>div.iubenda-cs-content</code> (the main container)</li> <li><code>a.iubenda-cs-cookie-policy-lnk</code> (the href link set to link to the cookie policy, ie https://www.iubenda.com/privacy-policy/123456/cookie-policy?an=no&amp;s_ck=false)</li> </ul> <div class="my-4 rounded p-4 bg-fade"> <h5>Shortcodes</h5> <p>Shortcodes are special words that can be used inside <a href="#text-banner-copy"><code>banner.content</code></a> and <code>banner.html</code> as a placeholder for something else. You can use them when you want to customize the banner but still keep the UI elements that allow to have the standard Privacy Controls and Cookie Solution behavior.</p> <p>Shortcodes available for <code>banner.html</code>:</p> <p><code>%{banner_content}</code> is replaced with the value specified in <code>banner.content</code> (or the default banner content). Please note that <code>%{banner_content}</code> is <a href="https://www.iubenda.com/en/help/7440#minimum-configuration-requirements">mandatory in case of TCF v2</a> (unless we&#8217;ve approved your custom text).</p> <p>Here&#8217;s an <a href="https://codepen.io/iubenda/pen/wvGNrJz">example of a cookie banner/consent banner with custom HTML and content</a>.</p> </div> <p>&nbsp;</p> <h4 class="wp-block-heading" id="footer">Footer</h4> <div class="my-4 rounded p-3 bg-fade"> <p class="mb-0"><code>footer {}</code> <em>(object)</em> – The options listed below must be contained within the <code>footer {}</code> object.</p> </div> <p><code>btnCaption</code> <em>(string)</em> – Text of the button (located at the bottom of the &#8220;Tracking preferences&#8221; window, see <a href="#per-category-consent">per-category consent</a>) used to save the consent preferences. The default value is &#8220;Save and continue&#8221;.</p> <h4 class="wp-block-heading" id="i18next">i18next</h4> <div class="my-4 rounded p-3 bg-fade"> <p id="i18n"><code>i18n {}</code> <em>(object)</em> – You can translate/edit the texts of any Privacy Controls and Cookie Solution component via the i18n JavaScript library. To handle this, we have created a list of all components/strings that you can edit and/or localize, please see the following JSON files to find them:</p> <ul> <li><a href="https://cdn.iubenda.com/cs/i18n.json">https://cdn.iubenda.com/cs/i18n.json</a> (Current channel)</li> <li><a href="https://cdn.iubenda.com/cs/beta/i18n.json">https://cdn.iubenda.com/cs/beta/i18n.json</a> (Beta channel)</li> <li><a href="https://cdn.iubenda.com/cs/stable/i18n.json">https://cdn.iubenda.com/cs/stable/i18n.json</a> (Stable channel)</li> </ul> <p class="mb-0">Important: if you&#8217;ve enabled the <a href="#iab-transparency-and-consent-framework">Transparency and Consent Framework</a>, in order to meet <a href="https://www.iubenda.com/en/help/7440#minimum-configuration-requirements">IAB&#8217;s minimum configuration requirements</a>, you must necessarily use the <a href="https://register.consensu.org/Translation">official translations</a> (see &#8220;List of translations for purpose descriptions v2.0&#8221;).</p> </div> <h3 class="wp-block-heading" id="consent-widget">3.4 Consent widget</h3> <p><code>floatingPreferencesButtonDisplay</code> <em>(string, default false)</em> &#8211; It defines the position of the <a href="https://www.iubenda.com/en/help/3831#widget">privacy widget</a> (a feature that allows your users to access and edit tracking preferences at any time after setting their initial preferences). Available values: <em>false</em>, <em>true</em>, <em>top-left</em>, <em>top-right</em>, <em>bottom-left</em>, <em>bottom-right</em> (default if set to <em>true</em>), <em>anchored-center-left</em>, <em>anchored-center-right</em>, <em>anchored-top-left</em>, <em>anchored-top-right</em>, <em>anchored-bottom-left</em>, <em>anchored-bottom-right</em>.</p> <h4 class="wp-block-heading" id="consent-widget-format">Format and position</h4> <p><code>floatingPreferencesButtonCaption</code> <em>(string, default false)</em> &#8211; Text of the privacy widget button.</p> <p><code>floatingPreferencesButtonIcon</code> <em>(boolean, default true)</em> &#8211; Icon of the privacy widget button.</p> <p><code>floatingPreferencesButtonHover</code> <em>(boolean, default false)</em> &#8211; Shows the privacy widget text on hover.</p> <p><code>floatingPreferencesButtonRound</code> <em>(boolean, default false)</em> &#8211; Adds the <code>iubenda-tp-circle</code> attribute to the privacy widget button.</p> <p><code>floatingPreferencesButtonZIndex</code> <em>(default 2147483647)</em> &#8211; Add this option to apply a custom zIndex to the floating preference button. This could be useful if some overlapping issues occur.</p> <h4 class="wp-block-heading" id="consent-widget-colors">Colors</h4> <p><code>floatingPreferencesButtonColor</code> <em>(string, default &#8220;#fff&#8221;)</em> &#8211; Background color of the privacy widget button.</p> <p><code>floatingPreferencesButtonCaptionColor</code>&nbsp;<em>(string, default “#000”)</em>&nbsp;– Text color of the privacy widget button.</p> <h2 class="wp-block-heading" id="privacy-and-cookie-policy">4. Privacy and cookie policy</h2> <p><code>privacyPolicyUrl</code> <em>(string)</em> – Allows you to customize the privacy policy link.</p> <p><code>cookiePolicyUrl</code> <em>(string)</em> – This is the cookie policy&#8217;s URL linked within the banner. It is available in your privacy policy&#8217;s edit page in the &#8220;integration&#8221; tab. If you don&#8217;t define this parameter it will refer to the cookie policy generated by iubenda and hosted on our servers.</p> <p>You can alternatively choose to host the cookie policy on a page of your website and thus fill this field with the related URL. Remember that if you decide to <a href="https://www.iubenda.com/en/help/2690">host the cookie policy on your own page</a>, this page should not use cookies, beyond the technical ones. Note: this parameter will be ineffective if you are using a custom HTML for the banner (see the configuration banner.html below).</p> <p><code>cookiePolicyInOtherWindow</code> <em>(boolean, default false)</em> – If you set this parameter to <em>true</em> the privacy policy and the cookie policy will open in another window instead of the iubenda modal window.</p> <p><code>cookiePolicyLinkCaption</code> <em>(string)</em> – Anchor text of the link to the cookie policy (the default value is &#8220;cookie policy&#8221;). This option must be contained within the <code>banner {}</code> object.</p> <h2 class="wp-block-heading" id="advanced-settings">5. Advanced settings</h2> <h3 class="wp-block-heading" id="banner-settings">5.1 Banner settings</h3> <p>The options listed below must be contained within the <code>banner {}</code> object:</p> <p><code>slideDown</code>&nbsp;<em>(boolean, default true)</em>&nbsp;– You can set this parameter to&nbsp;<em>false</em>&nbsp;in order to disable the animation of the banner.</p> <p><code>prependOnBody</code> <em>(boolean, default false)</em> &#8211; If this parameter is set on <em>true</em>, the <code>HTML</code> code of the banner is injected into the site as the first element of the <code>BODY</code>. By default <code>prependOnBody</code> is set to <em>false</em> and the banner is placed as the last element of the <code>BODY</code>.</p> <p>You must set <code>prependOnBody</code> on <em>true</em> when you want, for example, to place the <strong>banner above the header</strong>. In this way, the banner will be the first element on the page, and in order to display it on top of the header, simply apply a &#8220;padding-top&#8221; to the next item: <code>#iubenda-cs-banner + * { padding-top: 180px; }</code></p> <p><a href="https://codepen.io/iubenda/pen/6843590a12425eeb6cd171e0c8359adf" target="_blank" rel="noopener">Example with the banner placed over the header</a>.</p> <h3 class="wp-block-heading" id="consent-collection-settings">5.2 Consent collection settings</h3> <p><code>reloadOnConsent</code> <em>(boolean, default false)</em> &#8211; You can set this parameter to <em>true</em> if you want the page to be reloaded after the collection of the consent.</p> <p><code>askConsentAtCookiePolicyUpdate</code> <em>(boolean, default false)</em> &#8211;&nbsp;You can set this parameter to <em>true</em> if you want to request new consent when the Cookie Policy is updated.</p> <p><code>enableRemoteConsent</code> <em>(boolean, default false)</em> – You can set this parameter to <em>true</em> to enable a cross-site registration of the consent (it can be useful when the script is implemented in more than one websites of the same network). In particular, if you set this parameter to <em>true</em>, our solution creates a technical cookie on iubenda.com (domain) which is used when the cookie on the local domain is not found.</p> <p><code>invalidateConsentWithoutLog</code> <em>(boolean, string, date, default true)</em>. When <em>true, </em>new consent will be requested whenever a user’s consent has not been found recorded within the <a href="https://www.iubenda.com/en/help/45718-cookie-preference-logs">Cookie and Consent Preference Log.</a>&nbsp;<br>If a date is set <em>(format: &#8220;yyyy-mm-dd&#8221;)</em> when consent collected prior to this date is not found within the Cookie and Consent Preference Log a new consent will be requested(e.g.<code> invalidateConsentWithoutLog: "2022-01-10</code>&#8220;)</p> <p><code>googleConsentMode</code> (<em>boolean, string, default null</em>). When <em>null</em> the CS automatically detects whether enabling Google Consent Mode (if a global <code>window.dataLayer</code> variable or a global <code>gtag</code> function is found).<br>If set to <em>true</em> the Privacy Controls and Cookie Solution <strong>always</strong> enables Google Consent Mode and defines a global <code>window.dataLayer</code> if not already defined. <br>If set to <em>false</em> the CS always disables Consent Mode.<br>Set this parameter to <code>template</code> if you are using the <a href="https://www.iubenda.com/en/help/74198-how-to-set-up-google-tag-manager-with-the-iubenda-cookie-solution-template">iubenda Google Tag Manager template</a> and you want to embed the Privacy Controls and Cookie Solution code manually (as explained in <a href="https://www.iubenda.com/en/help/74198-how-to-set-up-gtm-with-iubenda-cs-template#2-cookie-solution-embedding">this section</a>).</p> <h3 class="wp-block-heading" id="development">5.3 Development</h3> <p><code>inlineDelay</code> <em>(integer, milliseconds, default 500)</em> – The maximum time between the activations of snippets tagged with the class <code>_iub_cs_activate-inline</code> (the snippet tagged in this way are activated sequentially). By decreasing this value you will reduce the total time of activation. Caution: the default value is set in order for the snippets to work properly; reducing it may prevent the successful activation of some snippet. It is highly recommended to check the activation of the snippet shown on your page if this setting is changed.</p> <p><code>rebuildIframe</code> <em>(boolean, default true)</em> – Once the user&#8217;s consent has been recorded, the default behavior of the Privacy Controls and Cookie Solution is to fully regenerate (or reintegrate) the iframes previously modified. By setting this parameter to <em>false</em>, the iframes previously blocked are restored after the collection of consent.</p> <h4 class="wp-block-heading" id="callbacks">Callbacks</h4> <div class="my-4 rounded p-3 bg-fade"> <p id="callback" class="mb-0"><code>callback {}</code> <em>(object)</em> – This is the parameter through which you can define the callback that iubenda Privacy Controls and Cookie Solution can perform upon the occurrence of an event.</p> </div> <p><code>onReady</code> <em>(function)</em> – If the consent of the user has not yet been processed (for example, because it&#8217;s his first visit) the onReady callback is invoked as soon as the banner cookie is displayed; on the contrary, if the user has already given their consent to the installation of cookies, this callback is invoked as soon as the iubenda Privacy Controls and Cookie Solution is initialized. The consent given or not is passed as an argument, which can be <em>true</em> or <em>false</em>.</p> <p><code>onBannerShown</code> <em>(function)</em> – Using this feature you can run a script when the banner is shown.</p> <p><code>onBannerClosed</code> <em>(function)</em> – Using this feature you can run a script when the banner is closed.</p> <p><code>onCookiePolicyShown</code> <em>(function)</em> &#8211; Called when the cookie policy is shown (either in modal window or on a separate page).</p> <p><code>onConsentGiven</code> <em>(function)</em> – This callback is invoked if the user has given the consent to the installation of cookies, both when consenting for the first time and in all subsequent visits.</p> <p><code>onConsentFirstGiven</code> <em>(function)</em> &#8211; It is invoked the first time that the user gives their consent and each time the user updates their preferences (for example by clicking on <code>iubenda-cs-preferences-link</code> and saving their new preferences). One of the following strings is passed as an argument: <em>documentScroll</em>, <em>documentMoved</em>, <em>bannerXClose</em>, <em>documentClicked</em> or <em>cookiePolicyClosed</em>.</p> <p><code>onConsentRejected</code> <em>(function)</em> – This callback is invoked if the user has rejected the consent to the installation of cookies.</p> <p><code>onConsentFirstRejected</code> <em>(function)</em> – Invoked when the consent has been rejected, the first time the user gives their preference (not on every page view, as <code>onConsentRejected</code>) and each time the user updates their preferences (for example by clicking on <code>iubenda-cs-preferences-link</code> and saving their new preferences).</p> <p><code>onPreferenceExpressed</code> <em>(function)</em> – It is invoked whenever a preference is expressed, be it accept or reject.</p> <p><code>onPreferenceFirstExpressed</code> <em>(function)</em> – Invoked the first time the user gives their preference (not on every page view, as <code><code>onPreferenceExpressed</code></code>) and each time the user updates their preferences (for example by clicking on <code>iubenda-cs-preferences-link</code> and saving their new preferences).</p> <p><code>onPreferenceExpressedOrNotNeeded</code> <em>(function)</em> – It is invoked whenever a preference is expressed or not needed, for example when:</p> <ul class="wp-block-list"> <li><code>gdprApplies:true</code> and the user has expressed his preference, or</li> <li><code>gdprApplies:false</code>, or</li> <li><code>gdprAppliesGlobally:false</code>, <code>countryDetection:true</code> and the user is based outside the EU</li> </ul> <p><code>onPreferenceNotNeeded</code> <em>(function)</em> – It is invoked whenever a preference is not needed, for example when:</p> <ul class="wp-block-list"> <li><code>gdprApplies:false</code>, or</li> <li><code>gdprAppliesGlobally:false</code>, <code>countryDetection:true</code> and the user is based outside the EU</li> </ul> <p><code>onConsentRead</code> <em>(function)</em> &#8211; It is invoked the first time the user gives consent and each subsequent loading when the consent is detected. The callback <code>onConsentGiven</code> becomes an alias for <code>onConsentRead</code> and it is not invoked if the latter is defined.</p> <p><code>onStartupFailed</code> <em>(function)</em> &#8211; It is invoked in the case where the iubenda Privacy Controls and Cookie Solution fails the startup phase. An error message is passed as an argument.</p> <p><code>onError</code> <em>(function)</em> &#8211; It is invoked in the case where the iubenda Privacy Controls and Cookie Solution is experiencing an error. An error message is passed as an argument.</p> <p><code>onFatalError</code> <em>(function)</em> &#8211; It is invoked in the case where the iubenda Privacy Controls and Cookie Solution experiencing an error that does not allow it to continue. An error message is passed as an argument.</p> <p><code>onActivationDone</code> <em>(function)</em> – It is invoked when the snippet activation is complete.</p> <p><code>onBeforePreload</code> <em>(function)</em> &#8211; Invoked when the Privacy Controls and Cookie Solution preloads, that is before the cookies are loaded.</p> <p><code>onCcpaAcknowledged</code> <em>(function)</em> &#8211; Invoked when the CCPA notice has been acknowledged.</p> <p><code>onCcpaFirstAcknowledged</code> <em>(function)</em> &#8211; Invoked the first time the CCPA notice has been acknowledged.</p> <p><code>onCcpaOptOut</code> <em>(function)</em> &#8211; Invoked when the user has opted out from sale.</p> <p><code>onCcpaFirstOptOut</code> <em>(function)</em> &#8211; Invoked the first time the user has opted out from sale, and each time the user updates their preferences (for example by clicking on <code>iubenda-ccpa-opt-out</code> and saving their new preferences).</p> <p><code>on2ndLayerShown</code> <em>(function)</em> &#8211; Invoke when the second layer of the banner is shown.</p> <p><code>onCookiePolicyShown</code> <em>(function)</em> &#8211; Invoke when the cookie policy is shown (either in modal window or on a separate page).</p> <p><a href="#configexample">View a sample configuration ↓</a></p> <h4 class="wp-block-heading" id="debugging">Debugging</h4> <p><code>skipSaveConsent</code> <em>(boolean, default false)</em> – By setting this parameter to <em>true</em>, the consent is not saved in a preference cookie.</p> <p><code>logLevel</code> <em>(string)</em> – It defines the verbosity of the logger (available values: &#8216;debug&#8217;, &#8216;info&#8217;, &#8216;warn&#8217;, &#8216;error&#8217;, &#8216;fatal&#8217;; the default value is &#8216;nolog&#8217;).</p> <h4 class="wp-block-heading" id="cookie-expiration">Cookie expiration</h4> <div class="my-4 rounded p-3 bg-fade"> <p class="mb-0"><code>preferenceCookie {}</code> <em>(object)</em> – This is the parameter through which you can customize the lasting of the preference cookie iubenda installs in the user&#8217;s browser in order to record its consent. In particular, the object to be defined is <code>expireAfter</code>.</p> </div> <p><code>expireAfter</code> (number, default 365) – It represents the number of days of validity of the consent given by the user on a given web site. Note: this value is updated at each subsequent visit by the user.</p> <div class="my-4 rounded p-3 bg-fade"> <p class="mb-0"><code>ccpaCookie {}</code> <em>(object)</em> – Allows you to customize the expiration of the cookie that stores the acknowledgment of the notice. In particular, the object to be defined is <code>expireAfter</code>.</p> </div> <p><code>expireAfter</code> (number, default 365) – Number of days of validity.</p> <h4 class="wp-block-heading" id="local-consent">Local consent domain and path</h4> <p><code>localConsentDomain</code> <em>(string, default null)</em> – the domain on which you want to save the consent collected from the users. If not set, the consent will be saved in a cookie on the domain of the current page (for example, by visiting www.example.com, the consent will be saved in a cookie placed in the domain example.com).</p> <p>If the default behavior is not appropriate, for example, if the website is located on the domain www.paesaggiurbani.italia.it the consent must be provided for paesaggiurbani.italia.it (and not for italia.it), in that case, you are required to set the localConsentDomain to the value &#8216;paesaggiurbani.italia.it&#8217;.</p> <p>Notice: in a similar scenario, if the parameter is not given, the banner could continue to appear to the same user at each subsequent visit/page view.</p> <p><code>localConsentDomainExact</code> <em>(boolean, default null)</em> – This allows you to specify the exact domain, in which you want to save the consent provided by the user.</p> <p>Note: if both options (<code>localConsentDomain</code> and <code>localConsentDomainExact</code>) are configured, only the <code>localConsentDomainExact</code> option is considered.</p> <p><code>localConsentPath</code> <em>(string, default &#8216;/&#8217;)</em> – The path within the local domain, in which you want to save the consent provided by the user. By default, the user&#8217;s consent is saved in the local domain within the cookie in the path &#8216;/&#8217;. This way, the cookie is available regardless of the page of the domain being accessed.</p> <p>If you, for example, don&#8217;t want the preference cookie set for www.example.com/percorso1 to also apply to www.example.com/percorso2 (by browsing), and vice versa, you will need to provide the value &#8216;/percorso1&#8217; for this parameter in the first case, and &#8216;/percorso2&#8217; in the second case.</p> <h4 class="wp-block-heading" id="further-parameters">Further parameters</h4> <p><code>whitelabel</code> <em>(boolean, default true)</em> – Set this parameter to <em>false</em> to show the iubenda branding on the second layer.</p> <p><code>invalidateConsentBefore</code> <em>(&#8220;YYYY-MM-DD&#8221;, milliseconds from epoch, default null)</em> – All consents collected prior to this date will be invalidated. Consents collected on this date and in the future will not be invalidated.</p> <p><code>maxCookieSize</code> <em>(number, default 4096)</em> – To avoid browsers reject cookies longer than 4096 characters, the Privacy Controls and Cookie Solution allows to split cookies in multiple chunks. With <code>maxCookieSize</code> you can configure the maximum length of every chunk (see also <code>maxCookieChunks</code>).</p> <p><code>maxCookieChunks:</code><em>(number, default 5)</em> – With this parameter you can configure the maximum number of chunks into which cookies can be split (see also <code>maxCookieSize</code>).</p> <p>Note: if the cookie to be saved is longer than <code>maxCookieSize</code> * <code>maxCookieChunks</code> (20480 chars with default values), then the cookie is not saved.</p> <p><code>timeoutLoadConfiguration</code> (<em>integer, milliseconds, default 30000</em>) &#8211; The amount of time to wait for the remote configuration before stating that a timeout occurred. In case of a slow network, by increasing this value, you&#8217;ll make sure that the Privacy Controls and Cookie Solution gets the needed resources on time.</p> <p><code>startOnDomReady</code> <em>(boolean, default true)</em> – If <em>true</em> banner rendering and/or activation of blocked snippets will be performed as soon as the document status is &#8216;loaded&#8217; (i.e. when the DOM reaches the &#8216;loaded&#8217; status). If the option is set to <em>false</em>, then the Privacy Controls and Cookie Solution will start when the page has been fully loaded (i.e. when the DOM status is <em>&#8216;completed&#8217;</em> and all resources included in the page have been loaded).</p> <h4 class="wp-block-heading" id="delevopment-classes">Classes</h4> <p><code>iubenda-cs-close-btn</code> – By adding this class to any element of the page, the click on the item closes the banner and assumes that the consent is provided (in an equivalent manner to the click on the X button of the banner).</p> <div class="my-4 rounded px-3 pt-3 pb-1 bg-caution"> <p>Caution: Some national DPAs in Europe will NOT consider such a consent mechanism as allowed, therefore, you should carefully evaluate such an addition according to your applicable law.</p> </div> <p><code>iubenda-cs-cookie-policy-lnk</code> – By adding this class to any element of the page, the click on that element allows the displaying of the Cookie Policy (it&#8217;s equivalent to the click on the link to the Cookie Policy). Note: in order to ensure proper display of the cookie policy, the class <code>iubenda-cs-cookie-policy-lnk</code> (assigned to the link to the cookie policy in the banner) <strong>must not be used elsewhere on the page</strong>.</p> <p><code>iubenda-cs-preferences-link</code>&nbsp;– Add this class to any element of the page to allow users to update their cookie preferences even after closing the cookie banner/consent banner.</p> <h3 class="wp-block-heading" id="examples">5.4 Examples</h3> <p id="configexample">Here is an example of configuration with the optional parameters:</p> <pre class="wp-block-code prettyprint linenums js-code"><code>&lt;script type="text/javascript"&gt; var _iub = _iub || &#91;]; _iub.csConfiguration = { "lang": "en", "siteId": 896537, //use your siteId "cookiePolicyId": 8207462, //use your cookiePolicyId "enableRemoteConsent": true, "banner": { "position": "top", "slideDown": false, "content": "This website or its third-party tools use cookies. Please refer to the %{cookie_policy_link} if you want to learn more or withdraw your consent.", "cookiePolicyLinkCaption": "cookie policy", "backgroundColor": "#CCC", "textColor": "#000", "fontSize": "14px", "innerHtmlCloseBtn": "OK" }, "callback": { "onPreferenceExpressed": function(preference) { console.log('onPreferenceExpressed', preference); } }, "preferenceCookie": { "expireAfter": 180 } }; &lt;/script&gt; &lt;script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async&gt;&lt;/script&gt;</code></pre> <p>Other examples of possible configurations:</p> <ul class="wp-block-list"> <li><a href="https://codepen.io/iubenda/pen/jJNRGj" target="_blank" rel="noopener noreferrer">Standard values</a> (top center floated with &#8220;Accept&#8221; and &#8220;Learn more and customize&#8221; buttons)</li> <li><a href="https://codepen.io/iubenda/pen/NJKVKW" target="_blank" rel="noopener noreferrer">Banner above the footer</a></li> <li><a href="https://codepen.io/iubenda/pen/KEPjye" target="_blank" rel="noopener noreferrer">Banner over the header</a></li> <li><a href="https://codepen.io/iubenda/pen/EBaYmQ" target="_blank" rel="noopener noreferrer">Center floated cookie banner/consent banner with background overlay</a></li> <li><a href="https://codepen.io/iubenda/pen/wvGNrJz" target="_blank" rel="noopener noreferrer">Banner with custom HTML and content</a></li> <li><a href="https://codepen.io/iubenda/pen/LaPojg" target="_blank" rel="noopener noreferrer">Banner with custom CSS</a></li> <li><a href="https://codepen.io/iubenda/pen/drbBap" target="_blank" rel="noopener noreferrer">Bottom right floated cookie banner/consent banner in an unsupported language</a> (with custom &#8220;Accept&#8221; and &#8220;Learn more&#8221; buttons)</li> <li><a href="https://codepen.io/iubenda/pen/eYmQRXx/" target="_blank" rel="noopener">Banner with edited/translated texts in an unsupported language</a> (via the <a href="#i18n">i18n</a> JavaScript library)</li> </ul> <h3 class="wp-block-heading" id="custom-notice-blocked-scripts">5.5 Custom placeholder for blocked snippets</h3> <p>You may want to show a custom notice that replaces content that you can&#8217;t show until consent is given, or because consent has been rejected for that purpose and is therefore blocked by the Privacy Controls and Cookie Solution.</p> <p>To do this, you can create a <code>&lt;div&gt;</code> element, with the custom notice you want to show in place of the unavailable content, and a priorly blocked script that removes the <code>&lt;div&gt;</code>, once the consent is granted.</p> <h4 class="wp-block-heading">Example</h4> <pre class="wp-block-code prettyprint linenums js-code"><code>&lt;div id="content-before-consent"&gt;This will be removed as soon as the user gives consent to purpose X&lt;/div&gt; // Where X is the purpose for which consent needs to be given to run that script &lt;script type="text/plain" class="_iub_cs_activate" data-iub-purposes="X"&gt; // Where X is the purpose for which consent needs to be given to run that script ;(function() { var divToRemove = document.getElementById('content-before-consent'); if (divToRemove &amp;&amp; divToRemove.parentNode) { divToRemove.parentNode.removeChild(divToRemove); } })(); &lt;/script&gt;</code></pre> <h3 class="wp-block-heading" id="inline-activator">5.6 Inline activator</h3> <p>It&#8217;s possible to include the part of the code relative to the scripts, directly in-page (inline); this code is known as the <strong>inline activator</strong>. Scripts can be activated through the inline activator even if the iubenda_cs.js primary resource is generically unavailable or in error.</p> <p>The inline activator only guaranties script activation but can also take on a provided permission (see the following <code>forceSafeActivation</code> option). It cannot be used to show the banner, the cookie policy or manage the obtaining of consent.</p> <p>It serves only as another layer of protection in case of errors and <strong>does not at all act as a substitute for the main iubenda Privacy Controls and Cookie Solution code</strong>.</p> <p>Note that the inline activator will only invoke the <code>onActivationDone</code>, while others will be ignored.</p> <p>Two additional configuration options are available for the inline activator:</p> <ul class="wp-block-list"> <li><code>safeTimeout</code> <em>(milliseconds, default 0)</em> – the time the inline activator waits before it&#8217;s starting to work.</li> <li><code>forceSafeActivation</code> <em>(boolean, default false)</em> – If set to <em>true</em> scripts are activated independently of the given consent. If set to <em>false</em> the inline activator activates the scripts only if consent has been given (as memorized in the preference cookie of the domain of the host page).</li> </ul> <p>The inline activator is available at:</p> <ul class="wp-block-list"> <li><a href="https://cdn.iubenda.com/cs/safe.js">https://cdn.iubenda.com/cs/safe.js</a> (Current channel)</li> <li><a href="https://cdn.iubenda.com/cs/beta/safe.js">https://cdn.iubenda.com/cs/beta/safe.js</a> (Beta channel)</li> <li><a href="https://cdn.iubenda.com/cs/stable/safe.js">https://cdn.iubenda.com/cs/stable/safe.js</a> (Stable channel)</li> </ul> <div class="my-4 rounded px-3 pt-3 pb-1 bg-fade"> <h5 class="my-2">IAB Transparency and Consent Framework</h5> <p><strong>If</strong> you&#8217;ve enabled <a href="https://www.iubenda.com/en/help/7440">IAB Transparency and Consent Framework (TCF)</a> compatibility for the customization of advertising tracking preferences, you can <strong>use the inline activator both for </strong><code>safe.js</code> <strong>and</strong> <code>safe-tcf-v2.js</code></p> <p><code>safe-tcf-v2.js</code> is available at:</p> <ul> <li><a href="https://cdn.iubenda.com/cs/tcf/safe-tcf-v2.js">https://cdn.iubenda.com/cs/tcf/safe-tcf-v2.js</a> (Current channel)</li> <li><a href="https://cdn.iubenda.com/cs/tcf/beta/safe-tcf-v2.js">https://cdn.iubenda.com/cs/tcf/beta/safe-tcf-v2.js</a> (Beta channel)</li> <li><a href="https://cdn.iubenda.com/cs/tcf/stable/safe-tcf-v2.js">https://cdn.iubenda.com/cs/tcf/stable/safe-tcf-v2.js</a> (Stable channel)</li> </ul> </div> <h4 class="wp-block-heading" id="inline-activator-examples"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Examples</span></span></h4> <p>The content of <code>safe.js</code>(and <code>safe-tcf-v2.js</code>) has to be included in-page <strong>after</strong> the initial configurations and <strong>before</strong> the code that loads <code>iubenda_cs.js</code>.</p> <h5 class="wp-block-heading">CURRENT</h5> <pre class="wp-block-code prettyprint linenums js-code"><code>&lt;script type="text/javascript"&gt; var _iub = _iub || &#91;]; _iub.csConfiguration = { "lang": "en", "siteId": XXXXXX, //use your siteId "cookiePolicyId": YYYYYY, //use your cookiePolicyId "banner": { "position": "float-top-center", "acceptButtonDisplay": true, "customizeButtonDisplay": true } }; _iub.csConfiguration.safeTimeout = 500; //custom option _iub.csConfiguration.forceSafeActivation = false; //custom option &lt;/script&gt; &lt;!-- inline activator - safe.js (current channel) --&gt; &lt;script type="text/javascript"&gt; //&lt;!&#91;CDATA&#91; //copy content from cdn.iubenda.com/cs/safe.js and paste here //]]&gt; &lt;/script&gt; &lt;script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async&gt;&lt;/script&gt;</code></pre> <p>Sample configuration with IAB TCF v2.0 enabled:</p> <pre class="wp-block-code prettyprint linenums js-code"><code>&lt;script type="text/javascript"&gt; var _iub = _iub || &#91;]; _iub.csConfiguration = { "lang": "en", "enableTcf": true, "siteId": XXXXXX, //use your siteId "cookiePolicyId": YYYYYY, //use your cookiePolicyId "banner": { "position": "float-top-center", "acceptButtonDisplay": true, "customizeButtonDisplay": true } }; &lt;/script&gt; &lt;script type="text/javascript" src="//cdn.iubenda.com/cs/tcf/stub-v2.js"&gt;&lt;/script&gt; &lt;!-- inline activator - safe.js (current channel) --&gt; &lt;script type="text/javascript"&gt; //&lt;!&#91;CDATA&#91; //copy content from cdn.iubenda.com/cs/safe.js and paste here //]]&gt; &lt;/script&gt; &lt;!-- inline activator - safe-tcf-v2.js (current channel) --&gt; &lt;script type="text/javascript"&gt; //&lt;!&#91;CDATA&#91; //copy content from cdn.iubenda.com/cs/tcf/safe-tcf-v2.js and paste here //]]&gt; &lt;/script&gt; &lt;script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async&gt;&lt;/script&gt;</code></pre> <h5 class="wp-block-heading">BETA</h5> <pre class="wp-block-code prettyprint linenums js-code"><code>&lt;script type="text/javascript"&gt; var _iub = _iub || &#91;]; _iub.csConfiguration = { "lang": "en", "siteId": XXXXXX, //use your siteId "cookiePolicyId": YYYYYY, //use your cookiePolicyId "banner": { "position": "float-top-center", "acceptButtonDisplay": true, "customizeButtonDisplay": true } }; _iub.csConfiguration.safeTimeout = 500; //custom option _iub.csConfiguration.forceSafeActivation = false; //custom option &lt;/script&gt; &lt;!-- inline activator - safe.js (beta channel) --&gt; &lt;script type="text/javascript"&gt; //&lt;!&#91;CDATA&#91; //copy content from cdn.iubenda.com/cs/beta/safe.js and paste here //]]&gt; &lt;/script&gt; &lt;script type="text/javascript" src="//cdn.iubenda.com/cs/beta/iubenda_cs.js" charset="UTF-8" async&gt;&lt;/script&gt;</code></pre> <p>Sample configuration with IAB TCF v2.0 enabled:</p> <pre class="wp-block-code prettyprint linenums js-code"><code>&lt;script type="text/javascript"&gt; var _iub = _iub || &#91;]; _iub.csConfiguration = { "lang": "en", "enableTcf": true, "siteId": XXXXXX, //use your siteId "cookiePolicyId": YYYYYY, //use your cookiePolicyId "banner": { "position": "float-top-center", "acceptButtonDisplay": true, "customizeButtonDisplay": true } }; &lt;/script&gt; &lt;script type="text/javascript" src="//cdn.iubenda.com/cs/tcf/beta/stub-v2.js"&gt;&lt;/script&gt; &lt;!-- inline activator - safe.js (beta channel) --&gt; &lt;script type="text/javascript"&gt; //&lt;!&#91;CDATA&#91; //copy content from cdn.iubenda.com/cs/beta/safe.js and paste here //]]&gt; &lt;/script&gt; &lt;!-- inline activator - safe-tcf-v2.js (beta channel) --&gt; &lt;script type="text/javascript"&gt; //&lt;!&#91;CDATA&#91; //copy content from cdn.iubenda.com/cs/tcf/beta/safe-tcf-v2.js and paste here //]]&gt; &lt;/script&gt; &lt;script type="text/javascript" src="//cdn.iubenda.com/cs/beta/iubenda_cs.js" charset="UTF-8" async&gt;&lt;/script&gt;</code></pre> <h5 class="wp-block-heading">STABLE</h5> <pre class="wp-block-code prettyprint linenums js-code"><code>&lt;script type="text/javascript"&gt; var _iub = _iub || &#91;]; _iub.csConfiguration = { "lang": "en", "siteId": XXXXXX, //use your siteId "cookiePolicyId": YYYYYY, //use your cookiePolicyId "banner": { "position": "float-top-center", "acceptButtonDisplay": true, "customizeButtonDisplay": true } }; _iub.csConfiguration.safeTimeout = 500; //custom option _iub.csConfiguration.forceSafeActivation = false; //custom option &lt;/script&gt; &lt;!-- inline activator - safe.js (stable channel) --&gt; &lt;script type="text/javascript"&gt; //&lt;!&#91;CDATA&#91; //copy content from cdn.iubenda.com/cs/stable/safe.js and paste here //]]&gt; &lt;/script&gt; &lt;script type="text/javascript" src="//cdn.iubenda.com/cs/stable/iubenda_cs.js" charset="UTF-8" async&gt;&lt;/script&gt;</code></pre> <p>Sample configuration with IAB TCF v2.0 enabled:</p> <pre class="wp-block-code prettyprint linenums js-code"><code>&lt;script type="text/javascript"&gt; var _iub = _iub || &#91;]; _iub.csConfiguration = { "lang": "en", "enableTcf": true, "siteId": XXXXXX, //use your siteId "cookiePolicyId": YYYYYY, //use your cookiePolicyId "banner": { "position": "float-top-center", "acceptButtonDisplay": true, "customizeButtonDisplay": true } }; &lt;/script&gt; &lt;script type="text/javascript" src="//cdn.iubenda.com/cs/tcf/stable/stub-v2.js"&gt;&lt;/script&gt; &lt;!-- inline activator - safe.js (stable channel) --&gt; &lt;script type="text/javascript"&gt; //&lt;!&#91;CDATA&#91; //copy content from cdn.iubenda.com/cs/stable/safe.js and paste here //]]&gt; &lt;/script&gt; &lt;!-- inline activator - safe-tcf-v2.js (stable channel) --&gt; &lt;script type="text/javascript"&gt; //&lt;!&#91;CDATA&#91; //copy content from cdn.iubenda.com/cs/tcf/stable/safe-tcf-v2.js and paste here //]]&gt; &lt;/script&gt; &lt;script type="text/javascript" src="//cdn.iubenda.com/cs/stable/iubenda_cs.js" charset="UTF-8" async&gt;&lt;/script&gt;</code></pre> <p>The activator code is an integral part of the iubenda Privacy Controls and Cookie Solution and as such can be modified to include new features, upgrades and fixes.</p> <p>To facilitate the management of the activator version in your page, the <code>_iub.csSafeActivatorVersion</code> variable is available, which recalls the iubenda_cs.js version from which the activator was extracted.</p> <h3 class="wp-block-heading" id="api">5.7 API</h3> <p>The iubenda Privacy Controls and Cookie Solution features a JS API for easy interaction with some of its main functions.</p> <p><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Syntax: </span></span><code>_iub.cs.api.METHOD_NAME</code></p> <p><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">The available methods are:</span></span></p> <p><code>printErrors()</code> &#8211; Prints any errors in the iubenda Privacy Controls and Cookie Solution on the browser console.</p> <p><code>showCP()</code> &#8211; Shows the Cookie Policy (similarly to when you click on the link to the Cookie Policy in the banner or on another link with the&nbsp;<code>iubenda-cs-cookie-policy-lnk</code> class, as described&nbsp;<a href="https://www.iubenda.com/en/help/1205-how-to-configure-your-cookie-solution-advanced-guide#iubenda-cs-cookie-policy-lnk">here</a>).</p> <p><code>openPreferences()</code> &#8211; Allows users to update their cookie preferences even after closing the cookie banner/consent banner (similarly to when they click on an element with the&nbsp;<code>iubenda-cs-preferences-link</code>&nbsp;class).<br><code>openPreferences({ acceptPurposes [purposes] })</code> Allows users to update their cookie preferences, opening the second layer of the banner with pre-selected purposes. <br>❗️Please note that the use of this parameter is available only to Ultimate plan users</p> <p><code>getPreferences()</code> &#8211; Retrieves the stored user&#8217;s cookie preferences at that moment in time. The return object varies based on applicable legislation and selected purposes. Additionally, it can return properties for CCPA (ccpa), TCF v2 (tcfv2), and Google Additional Consent Mode (gac). It is important to note that this method does not return the GPP (Global Privacy Platform) string.</p> <pre class="wp-block-code prettyprint linenums js-code"><code>{<br>"id": "xxxxx",<br>"purposes": {<br>"1": true,<br>"2": false,<br>"3": false,<br>"4": false,<br>"5": false<br>},<br>"ccpa": "1YN-",<br>"uspr": {<br>"s": true,<br>"sh": true,<br>"adv": true<br>}<br>}</code></pre> <p><code>isPreferenceExpressed()</code> &#8211; Returns the status of the preference expressed by the user.<br><em>true</em> if a preference has been expressed <br><em>false</em> if a preference has not been expressed</p> <p><code>resetCookies()</code> &#8211; Use this method to reset preference cookies.</p> <p><code>showTcfVendors()</code> &#8211; Reopens the TCF vendor list (similarly to when users click on an element with the&nbsp;<code>iubenda-vendor-list-link</code>&nbsp;class).</p> <p><code>consentGiven()</code> &#8211; Provides consent.&nbsp;The method accepts the following as optional parameters:</p> <ul class="wp-block-list"> <li><code>eventName</code>&nbsp;<em>(string)</em> &#8211; One of the following:&nbsp;<em>documentClicked</em>&nbsp;(default),&nbsp;<em>documentScrolled</em>,&nbsp;<em>documentMoved</em>,&nbsp;<em>bannerXclose</em>,<em>&nbsp;cookiePolicyClosed</em>.&nbsp;Indicates the type of action by which consent is provided.</li> <li><code>force</code>&nbsp;<em>(boolean)</em>,&nbsp;<em>true |&nbsp;false</em>&nbsp;(default) &#8211; If&nbsp;<em>false</em>&nbsp;, iubenda CS ensures that the banner is shown before actually accepting the consent;&nbsp;instead, by providing this option to&nbsp;<em>true</em>, consent is received in any case. Note: the call to this method assumes the consent provided is completely equivalent to when it is provided via UI, eg with page scrolling.&nbsp;Therefore, all actions downstream of the consent provided are performed, including the updating of the preference cookie, the activation of the previously blocked snippets and the invocation of the&nbsp;<code>onConsentFirstGiven</code> and&nbsp;<code>onConsentRead</code>callbacks. To activate only the snippets there&#8217;s the&nbsp;<code>activateSnippets()</code> method.</li> </ul> <p><code>activateSnippets()</code> &#8211; Activate the previously blocked snippets. This method can be invoked repeatedly – already-activated snippets will not be taken into account.&nbsp;It is therefore useful in those installations where, upon collection of consent, previously blocked content that now needs to be activated, is dynamically added to the page (eg lazy loading or infinite scrolling).</p> <p>The option <code>runOnActivationDoneCallback</code> <em>(boolean, default false)</em>, if <em>true</em>, will execute the <code>onActivationDone</code>callback upon completion of the activation of the snippet (see <code>onActivationDone</code> callback).</p> <p><code>isConsentGiven()</code> <em>(DOMElement, default window.document)</em> &#8211; Returns <em>true</em> if the consent was given, otherwise it returns <em>false</em>.</p> <p>Note: you cannot use this function if you&#8217;ve set <code>banner.rejectButtonDisplay: true</code> or <code>perPurposeConsent: true</code>. Also, if you&#8217;ve enabled the Transparency and Consent Framework, you mandatorily need to add the <a href="https://www.iubenda.com/en/help/7440#notblocking">synchronous activator</a> (safe-tcf-v2.js).</p> <p><code>setConsentOnScrollOnElement()</code> <em>(boolean)</em> &#8211; The call to this method defines the element on which the scroll will be observed for the purpose of consent. This method is useful when you want to take advantage of the <code>consentOnScrollOnElement</code> option, but the DOMelement is not yet available when the Privacy Controls and Cookie Solution is initialized. In this regard it&#8217;s possible to use the <code>onBannerShow</code>callback (<a href="https://raw.githubusercontent.com/iubenda/cookie-law-solution-codesnippets/master/callback/onBannerShow_for_setConsentOnScrollElement.html" target="_blank" rel="noopener">example</a>) which occurs when the CS is initialized.</p> <p><code>storeConsent()</code> &#8211; Stores consent in cookies.&nbsp;If, for example, you want to&nbsp;<a href="https://www.iubenda.com/en/help/18678">migrate consents from a previous provider</a>, you could call this method inside the <code>onBeforePreload</code>&nbsp;callback when consent is already given by another platform. Also, if you&#8217;re a vendor, you can take advantage of&nbsp;<code>storeConsent()</code> to test our solution (see&nbsp;<a href="https://codepen.io/iubenda/pen/WNGmeyv?editors=1000" target="_blank" rel="noopener">this demo on CodePen</a>).</p> <p><code>gdprApplies()</code>&nbsp;<em>(boolean)</em>&nbsp;&#8211; Returns&nbsp;<em>true</em>&nbsp;if the GDPR protections are applied to the current user, otherwise it returns&nbsp;<em>false</em>.</p> <p><code>ccpaApplies()</code>&nbsp;<em>(boolean)</em> &#8211; Returns&nbsp;<em>true</em>&nbsp;if the CCPA protections are applied to the current user, otherwise it returns&nbsp;<em>false</em>&nbsp;.</p> <p><code>askCcpaOptOut()</code> &#8211; Pops up the dialog to request confirmation for the opt-out from sale.</p> <p><code>isCcpaAcknowledged()</code> &#8211; Returns whether the CCPA notice has been acknowledged.</p> <p><code>isCcpaOptedOut()</code> &#8211; Returns whether the user has opted out from sale.</p> <p><code>acceptAll()</code> &#8211; Accepts everything (purposes or binary consent, all TCF entities, all Google Additional Consent vendors, activates scripts) as soon as it is invoked regardless of user&#8217;s preferences.<br>❗️Please note that the use of this parameter is available only to Ultimate plan users</p> <p><code>rejectAll()</code> &#8211; Rejects all cookies.</p> <p>Notes: you can&nbsp;<a href="https://www.iubenda.com/en/help/23633">invoke Privacy Controls and Cookie Solution API methods also from an iframe</a>.</p> <h3 data-toc-skip="">See also</h3> <ul class="wp-block-list"> <li><a href="https://www.iubenda.com/en/help/3831"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">How to Customize the Look and Behavior of the Cookie Banner/consent banner (Beginner&#8217;s Guide)</span></span></a></li> <li><a href="https://www.iubenda.com/en/help/3081"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Introduction to the Prior Blocking of Cookies</span></span></a></li> <li><a href="https://www.iubenda.com/en/help/5525"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Cookies and the GDPR: What&#8217;s Really Required?</span></span></a></li> </ul> </div> <div class="help-tpl__still-questions-section mt-5 pt-5"> <h4 class="mb-3">Still have questions?</h4> <a href="/en/help/13053" class="btn btn-dark-gray txt-dark d-block d-lg-inline-block mb-2 mb-lg-0">Attend one of our free webinars</a> <a href="mailto:info@iubenda.com" class="btn btn-dark-gray txt-dark d-block d-lg-inline-block mb-2 mb-lg-0" data-elevio-module="2" data-elevio-style="nothing">Email us</a> <a href="#" class="btn btn-dark-gray txt-dark d-block d-lg-inline-block" data-elevio-module="9" data-elevio-style="nothing">Live chat</a> </div> </div> <!-- /.content --> </div> </div> </section> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ (function(w,d,t,u,n,s,e){w['SwiftypeObject']=n;w[n]=w[n]||function(){ (w[n].q=w[n].q||[]).push(arguments);};s=d.createElement(t); e=d.getElementsByTagName(t)[0];s.async=1;s.nonce='6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091'; s.src=u;e.parentNode.insertBefore(s,e); })(window,document,'script','//s.swiftypecdn.com/install/v2/st.js','_st'); _st('install','mvF4xAYwSHJ9YPypgTYd','2.0.0', { install: { hooks: { query_filter: function(query) { query.setFilterDataByDocumentTypeSlugAndFilterField('page', 'tags', { values: ['en'], type: "and" }); return query; } } } }); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ HelpUtils.activateToc("#toc", $("[data-toc-activator]")); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ $(document).ready(function() { /** consent solution mapping for help compliance course form **/ if ($('#help_compliance_course_form').length > 0) { _iub.cons_instructions.push(['load', { submitElement: 'help_compliance_course_submit', form: { selector: 'help_compliance_course_form', map: { subject: { email: 'email' } } }, consent: { preferences: { 'help_compliance_course_subscription': true }, legal_notices: [ { identifier: 'privacy_policy' } ] } }]); } $('.btn-aside').click(function(){ $('.doc_aside').toggleClass('show'); }); $('.doc_aside li.has_child').click(function(e){ if (e.target.nodeName === 'A') { return; } e.preventDefault(); e.stopPropagation(); $(this) .toggleClass('active'); }); $('.navbar-nav a').click(function(){ var li = $(this).closest('li'); if(!li.find('ul').length) { var parent = $('.doc_aside'); if(parent.hasClass('show')) parent.removeClass('show'); } }); $('.toc-button').click(function(){ $(this).toggleClass('clicked'); if($(this).hasClass('clicked')) $('[data-toggle=toc]').show(); else $('[data-toggle=toc]').hide(); }); exposeFideFunctions({ incorporationBetaEnabled: false, loginUrl: "/en/login?fide_user=true&for=custom_do", companyIncorporationsPath: "/en/costituzione/srl", isLoggedIn: false }); initializeFideBtns(); if ( $('#toolbox-accordion').length > 0) { var accordionConteiner = $('#toolbox-accordion'); $(accordionConteiner).find('.card p .btn').each(function buttonClickHandler() { $(this).on('click', function(e) { e.preventDefault(); var card = $(this).parents(':eq(2)'); var autoCheckOutLink = HelpUtils.createAutoCheckOutLink(card); location.href = '/pricing'+ autoCheckOutLink; }) }); } var currentAnchor = null; $('h2[id],h3[id]').hover( function(){ var el = $(this); if(currentAnchor) currentAnchor.remove(); currentAnchor = $('<a href="#'+el.attr('id')+'" class="a-anchor-inline ml-3"><i class="i-link"></i></a>').appendTo(el); }, function(){ if(currentAnchor) currentAnchor.remove(); } ); HelpUtils.activatePopovers(); HelpUtils.readAndCreateTheCheckBoxMapForCountries(); $('.button-expand').click(function(e) { var perCountryTable = $(e.target.parentElement.parentElement).clone(); var modalTitle = $('.country-table').data('title'); perCountryTable.find('.button-expand').remove(); Modal.dialog(perCountryTable[0].outerHTML, { title: modalTitle, size: 'full' }); setTimeout(function loadCheckboxesData() { HelpUtils.updateCheckBoxFromMap('.modal-dialog'); HelpUtils.activatePopovers(); }, 1); }); $('body').on('click', '.country-table form.countries label', function(e) { e.preventDefault(); }); $('body').on('change', '.country-table form.countries input', function(e) { var className = $(this).attr('class'); HelpUtils.updateCheckBoxMap(e); $('table .' + className).toggle($(this).is(':checked')); }); }).on('show.bs.modal', '.modal', function () { $('.modal-body .table th').attr('style', 'transform: translateY(0px);'); $('.modal').scroll(function() { if($('.modal .table-first-col-fixed').length > 0) { if ($('.modal').offset().top - $('.modal .table-first-col-fixed').offset().top > 0) { $('.modal .table-first-col-fixed th').css('transform', 'translateY(' + ($('.modal').offset().top - $('.modal .table-first-col-fixed').offset().top) + 'px)'); } else { $('.modal .table-first-col-fixed th').css('transform', 'translateY(0)'); } } }); }).on('hide.bs.modal','.modal', function () { HelpUtils.updateCheckBoxFromMap('.container'); }); //]]> </script> <footer class="iub-footer bg-light-gray text-sm"> <div class="container"> <div class="row line-between-columns gutter-lg"> <div class="col-md-6 col-sm-12 mt-5 mb-5"> <div class="mb-3"> <h4 class="text-default text-uppercase">Products and services</h4> <p class="text-default">Compliance for websites and apps</p> </div> <div class="row justify-content-between mb-3"> <div class="col-lg mb-4 mb-lg-0"> <ul class="list-unstyled mb-3 pl-2"> <li><a class="font-weight-bold" href="/en/privacy-and-cookie-policy-generator">Privacy and Cookie Policy Generator</a></li> <li><a class="font-weight-bold" href="/en/cookie-solution">Privacy Controls and Cookie Solution</a></li> <li><a class="font-weight-bold" href="/en/terms-and-conditions-generator">Terms and Conditions Generator</a></li> <li><a class="font-weight-bold" href="/en/consent-solution">Consent Database</a></li> <li><a class="font-weight-bold" href="/en/internal-privacy-management">Register of Data Processing Activities</a></li> <li><a class="font-weight-bold" href="/en/whistleblowing-management-tool">Whistleblowing Management Tool</a></li> <li><a class="font-weight-bold" href="/en/newsletter-opt-in-booster">Newsletter opt-in booster</a></li> <li><a class="font-weight-bold" href="https://www.iubenda.com/stats/">iubenda Stats </a></li> </ul> </div> </div> <div class="mb-3"> <ul class="list-unstyled mb-0"> <li class="list-inline-item d-block d-md-inline-block mr-md-0 mb-md-2"> <a href="/en/pricing" class="btn btn-sm btn-outline-primary d-block">Pricing</a> </li> <li class="list-inline-item d-block d-md-inline-block mr-md-0 mb-md-2"> <a href="https://www.iubenda.com/en/scan" class="btn btn-sm btn-outline-primary d-block">Free site scan</a> </li> </ul> </div> </div> <div class="col-md-6 col-sm-12 mt-5 mb-5 footer-right"> <div class="row mb-4"> <div class="col mb-4"> <h4 class="text-default text-uppercase mb-3">Company</h4> <ul class="list-unstyled mb-3 pl-2 text-xs"> <li class="mb-1"><a class="bg-gray-1 rounded px-2 py-1 text-white" href="https://www.iubenda.com/en/help/posts/1812">Work with us</a></li> <li><a href="https://www.iubenda.com/blog/">Blog</a></li> <li><a href="/en/partner-program">Get certified as a Compliance Expert</a></li> <li><a href="/en/help/15138-partner-directory">Partner directory</a></li> <li><a href="https://www.iubenda.com/en/help/149409-join-the-iubenda-affiliate-program">Earn with iubenda</a></li> </ul> <ul class="list-unstyled d-md-flex align-items-center"> <li class="mb-1 mr-4"> <a href="https://iubenda.link/capterra" target="_blank" rel="noopener"> <img border="0" data-lazy-src="https://assets.capterra.com/badge/de52ae1b9de89ae468a920af39e7ace6.png?v=2110097&p=156938" width="100" height="32" alt="Capterra rating"/> </a> </li> </ul> </div> <div class="col mb-4"> <h4 class="text-default text-uppercase mb-3">Legal</h4> <ul class="list-unstyled mb-0 pl-2 text-xs"> <li><a href="https://www.iubenda.com/privacy-policy/252372" class="iubenda-white iubenda-embed" title="Privacy Policy">Privacy Policy</a></li> <li><a href="/en/user/tos" class="iubenda-white iubenda-embed" title="Terms of Service">Terms and Conditions</a></li> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ (function (w,d) {var loader = function () {var s = d.createElement("script"), tag = d.getElementsByTagName("script")[0];s.src = "https://cdn.iubenda.com/iubenda.js";tag.parentNode.insertBefore(s,tag);};w.addEventListener ? w.addEventListener("load", loader, false) : w.attachEvent("onload", loader);})(window, document); //]]> </script> <a href="https://www.iubenda.com/dsar-form/en/5bcb8bf5-5fe3-43fe-ae11-2065200c7827" class="iubenda-white iubenda-embed" title="Privacy rights request">Privacy rights request</a> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ (function (w, d) { var loader = function () { var s = d.createElement("script"), tag = d.getElementsByTagName("script")[0]; s.src = "https://cdn.iubenda.com/iubenda.js"; tag.parentNode.insertBefore(s, tag); }; if (w.addEventListener) { w.addEventListener("load", loader, false); } else if (w.attachEvent) { w.attachEvent("onload", loader); } else { w.onload = loader; } })(window, document); //]]> </script> <li><a href="https://www.iubenda.com/whistleblowing-form/en/7d7ca782-3805-4ce2-ae0b-5b57f53162d5" class="iubenda-white iubenda-embed" title="Whistleblower Form">Whistleblower Form</a></li> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ (function (w,d) {var loader = function () {var s = d.createElement("script"), tag = d.getElementsByTagName("script")[0]; s.src="https://cdn.iubenda.com/iubenda.js"; tag.parentNode.insertBefore(s,tag);}; if(w.addEventListener){w.addEventListener("load", loader, false);}else if(w.attachEvent){w.attachEvent("onload", loader);}else{w.onload = loader;}})(window, document); //]]> </script> <li class="pb-3"><a href="https://www.iubenda.com/terms-and-conditions/19521877">Whistleblower policy</a></li> <li class="pb-3"><a href="/en/help/158">Imprint/Impressum</a></li> <li><a href='#' class='iubenda-cs-preferences-link'> <img style="width: 2rem!important" src="data:image/svg+xml;charset=UTF-8,%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 30 14' style='enable-background:new 0 0 30 14;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;%7d .st1%7bfill-rule:evenodd;clip-rule:evenodd;fill:%230066FF;%7d .st2%7bfill:%23FFFFFF;%7d .st3%7bfill:%230066FF;%7d %3c/style%3e%3cg%3e%3cg id='final---dec.11-2020_1_'%3e%3cg id='_x30_208-our-toggle_2_' transform='translate(-1275.000000, -200.000000)'%3e%3cg id='Final-Copy-2_2_' transform='translate(1275.000000, 200.000000)'%3e%3cpath class='st0' d='M7.4,12.8h6.8l3.1-11.6H7.4C4.2,1.2,1.6,3.8,1.6,7S4.2,12.8,7.4,12.8z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='final---dec.11-2020'%3e%3cg id='_x30_208-our-toggle' transform='translate(-1275.000000, -200.000000)'%3e%3cg id='Final-Copy-2' transform='translate(1275.000000, 200.000000)'%3e%3cpath class='st1' d='M22.6,0H7.4c-3.9,0-7,3.1-7,7s3.1,7,7,7h15.2c3.9,0,7-3.1,7-7S26.4,0,22.6,0z M1.6,7c0-3.2,2.6-5.8,5.8-5.8 h9.9l-3.1,11.6H7.4C4.2,12.8,1.6,10.2,1.6,7z'/%3e%3cpath id='x' class='st2' d='M24.6,4c0.2,0.2,0.2,0.6,0,0.8l0,0L22.5,7l2.2,2.2c0.2,0.2,0.2,0.6,0,0.8c-0.2,0.2-0.6,0.2-0.8,0 l0,0l-2.2-2.2L19.5,10c-0.2,0.2-0.6,0.2-0.8,0c-0.2-0.2-0.2-0.6,0-0.8l0,0L20.8,7l-2.2-2.2c-0.2-0.2-0.2-0.6,0-0.8 c0.2-0.2,0.6-0.2,0.8,0l0,0l2.2,2.2L23.8,4C24,3.8,24.4,3.8,24.6,4z'/%3e%3cpath id='y' class='st3' d='M12.7,4.1c0.2,0.2,0.3,0.6,0.1,0.8l0,0L8.6,9.8C8.5,9.9,8.4,10,8.3,10c-0.2,0.1-0.5,0.1-0.7-0.1l0,0 L5.4,7.7c-0.2-0.2-0.2-0.6,0-0.8c0.2-0.2,0.6-0.2,0.8,0l0,0L8,8.6l3.8-4.5C12,3.9,12.4,3.9,12.7,4.1z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e "> Your Privacy Choices</a></li> <li class="pb-3"><a href='#' class='iubenda-cs-uspr-link'>Notice at Collection</a></li> <li><a href="https://www.iubenda.com/privacy-policy/94654098">Consent Database Privacy Notice</a></li> <li><a href="https://www.iubenda.com/privacy-policy/36700132">Privacy Controls and Cookie Solution Privacy Notice</a></li> </ul> </div> </div> <div class="row"> <div class="col-6 mb-4"> <h4 class="text-default text-uppercase mb-3">Help</h4> <ul class="list-unstyled mb-0 pl-2 text-xs"> <li><a href="/en/help">Documentation</a></li> <li><a href="https://support.iubenda.com">Feedback & support forum</a></li> <li><a href="mailto:info@iubenda.com" data-elevio-module="2" data-elevio-style="nothing">Contact support</a></li> <li><a href="https://www.iubenda.com/en/help/161162-our-cmp-support-commitment">Our CMP Support Commitment</a></li> </ul> </div> <div class="col-6 mb-4"> <h4 class="text-default text-uppercase mb-2"><label for="user_country">Country</label></h4> <div class="mb-4"> <select class="form-control custom-select" id="user_country" name="iubenda_current_user[country_code]" remote="true"> </select> </div> </div> </div> <div class="row"> <div class="col-6 mb-4 mt-3"> <div class="footer_social_buttons"> <ul class="list-unstyled d-flex align-items-center"> <li class="mr-1"> <a href="https://www.facebook.com/iubenda" target="_blank" rel="noopener" class="pr-0"> <img class="mb-4" width="32" height="32" alt="Facebook logo" data-lazy-src="/assets/site/general/facebook_logo-0a635f95d5ca9a530ec6849fdca8c313abdbaa2ef4f7ff085e7894a481e69cb4.svg" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img class="mb-4" width="32" height="32" alt="Facebook logo" src="/assets/site/general/facebook_logo-0a635f95d5ca9a530ec6849fdca8c313abdbaa2ef4f7ff085e7894a481e69cb4.svg" /> </noscript> </a> </li> <li> <a href="https://twitter.com/iubenda" target="_blank" rel="noopener" class="pl-0"> <img class="mb-4" width="32" height="32" alt="X logo" data-lazy-src="/assets/site/general/x_logo-374a5be853d42cc934c74f37d1378ececb74abff0767a619a2749f8461f05bf9.svg" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img class="mb-4" width="32" height="32" alt="X logo" src="/assets/site/general/x_logo-374a5be853d42cc934c74f37d1378ececb74abff0767a619a2749f8461f05bf9.svg" /> </noscript> </a> </li> </ul> </div> </div> <div class="col-6 footer-certificates"> <img height="75" alt="CMP Partner badge" class="mr-3 mb-3" data-lazy-src="/assets/site/general/cmp_badge_en-3d95a73213cca3ef66050653cc124af032a115c33f225a895c6587e7665f2d0f.svg" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img height="75" alt="CMP Partner badge" class="mr-3 mb-3" src="/assets/site/general/cmp_badge_en-3d95a73213cca3ef66050653cc124af032a115c33f225a895c6587e7665f2d0f.svg" /> </noscript> <a href="/assets/site/general/iubenda_iso_certificate-02df3bf20f10947e36649d790bb65e06f4f8df96b0bd26c4d1b7bd1d01fb4311.pdf" target="_blank"><img height="85" alt="ISO 27001 certificate" data-lazy-src="/assets/site/general/marchio_certification_ISO_IEC_27001-b48149ce6e055a2caa00f0961394ce95d4ae4f31fbcc7957a1851c213b2f6bff.png" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /> <noscript> <img height="85" alt="ISO 27001 certificate" src="/assets/site/general/marchio_certification_ISO_IEC_27001-b48149ce6e055a2caa00f0961394ce95d4ae4f31fbcc7957a1851c213b2f6bff.png" /> </noscript> </a> </div> </div> </div> </div> </div> <div class="language-country-selectors"></div> <hr class="p-0"> <div class="p-4 text-xs"> <div class="container"> <div class="row"> <div class="col-md-12"> <address class="d-flex flex-column d-lg-block"> <strong class="mr-2">iubenda s.r.l</strong> <span class="mr-2">Via San Raffaele, 1 - 20121 Milan (Italia)</span> <span class="mr-2">EU VAT No: IT07347120961</span> <span class="mr-2">UK VAT No: GB370904694</span> <span class="mr-2">Milan Chamber of Commerce</span> <span class="mr-2">SC: 12,795.78 Eur (fully paid up)</span> </address> </div> </div> </div> </div> </footer> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ $(document).ready(function() { $(".show-in-iframe").click(function(event) { if(!event.ctrlKey && !event.metaKey){ if (document.getElementById('iubenda-pp-popup')) { return; } showInIframe($(this).attr('href')/*,null,null,null,null,$('.container')[0],name*/); event.preventDefault(); } }); }); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ window.isUserSignedIn = false; window.TrackingUtils.init(); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ dataLayer.push({ event: "trigger_conversion", google_conversion_id: 1036022355, google_custom_params: window.google_tag_params, google_remarketing_only: true }); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ !function(e,l,v,i,o,n){e[i]||(e[i]={}),e[i].account_id=n;var g,h;g=l.createElement(v),g.type="text/javascript",g.async=1,g.src=o+n,h=l.getElementsByTagName(v)[0],h.parentNode.insertBefore(g,h);e[i].q=[];e[i].on=function(z,y){e[i].q.push([z,y])}}(window,document,"script","_elev","https://cdn.elev.io/sdk/bootloader/v4/elevio-bootloader.js?cid=","5b0d50ab36803"); window._elev.on('load', function (_elev) { var userSettings = { groups: ['Language=EN']} _elev.setUser(userSettings); _elev.setLanguage('en'); _elev.setSettings({ disablePushState: true, cspInlineScriptNonce: CSP_NONCE }); }); window._elev.on('ready', function elevReady() { var wrap = document.querySelector('#_elev_io._elevio_widget').querySelector('._1mpem'); var wrapAppendChild = wrap.appendChild.bind(wrap); wrap.appendChild = function wrapAppendChildMid(div) { var divAppendChild = div.appendChild.bind(div); div.appendChild = function divAppendChildMid(article) { if (article.tagName && article.tagName.toLowerCase() === 'article') { var articleAppendChild = article.appendChild.bind(article); article.appendChild = function articleAppendChildMid(iframe) { if (iframe.tagName && iframe.tagName.toLowerCase() === 'iframe') { iframe.setAttribute('src', '/no-content.html'); } return articleAppendChild(iframe); }; } return divAppendChild(article); }; return wrapAppendChild(div); }; }); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" src="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.min.js" integrity="sha512-XtmMtDEcNz2j7ekrtHvOVR4iwwaD6o/FUJe6+Zq+HgcCsk3kj4uSQQR8weQ2QVj1o0Pk6PwYLohm206ZzNfubg==" crossorigin="anonymous" referrerpolicy="no-referrer"> //<![CDATA[ //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ (function($) { $('.wp-block-cb-carousel').slick(); })(jQuery); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ function PasswordVisibilityToggle(passwordInputSelector, submitBtnSelector) { this.passwordInput = document.querySelector(passwordInputSelector); this.submitBtn = document.querySelector(submitBtnSelector); console.log( this.passwordInput + ' - ' + this.submitBtn ); if (this.passwordInput && this.submitBtn) { this.alert = this.findSiblingElement(this.passwordInput, 'show-hide-pw-alert'); this.toggleBtn = this.findSiblingElement(this.passwordInput, 'show-hide-pw-btn'); if (this.toggleBtn && this.alert) { this.init(); } else { console.error('Required elements not found.'); } } } PasswordVisibilityToggle.prototype.findSiblingElement = function(startElement, className) { var sibling = startElement.parentNode.firstChild; while (sibling) { if (sibling !== startElement && sibling.nodeType === 1 && sibling.classList.contains(className)) { return sibling; } sibling = sibling.nextSibling; } return null; }; PasswordVisibilityToggle.prototype.init = function() { var self = this; this.toggleBtn.addEventListener('click', function() { self.toggleVisibility(); }); this.submitBtn.addEventListener('click', function() { self.resetPasswordInput(); }); }; PasswordVisibilityToggle.prototype.toggleVisibility = function() { if (this.passwordInput.type === 'password') { this.passwordInput.type = 'text'; } else { this.passwordInput.type = 'password'; } var isChecked = this.toggleBtn.getAttribute('aria-checked') === 'true'; this.toggleBtn.setAttribute('aria-checked', !isChecked); if (!isChecked) { this.alert.textContent = "Your password is visible"; } else { this.alert.textContent = "Your password is hidden"; } }; PasswordVisibilityToggle.prototype.resetPasswordInput = function() { this.passwordInput.type = 'password'; }; //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ var userLocationPrefs = {"locale":"en","country":"SG"}; var cdnBaseUrl = "https://cdn.iubenda.com/"; var goProModalUrl = ""; var upToProUrl = ""; var upgradeSiteUrl = ""; var dashboardUrl = "/en/dashboard"; var accountUrl = "https://www.iubenda.com/en/account" var mtToPaygConversionFormUrl = "https://www.iubenda.com/en/billing/subscriptions/mt_to_payg_conversion_form"; var moveToPaygUrl = "https://www.iubenda.com/en/billing/subscriptions/move_to_payg"; var gopro_upgrade_to_remove = "Upgrade this privacy policy to Pro to remove the limit"; var gopro_upgrade_now = "Upgrade now"; var gopro_learn_more = "Learn more"; var gopro_free_limit_reached = "Free limit reached"; var gopro_only_four_services = "Upgrade this privacy policy to Pro to add more than 4 services."; var gopro_service_pro_only = "Upgrade this privacy policy to Pro to add this service." var gopro_switch_to_pro = "Switch to Pro to enable it"; var gopro_no_custom_text = "In order to add custom text, your privacy policy has to be upgraded to Pro."; var gopro_no_style_limit = "Only Pro privacy policies allow removal of the button style and free modification."; var gopro_no_brand_limit = "If you want to remove the iubenda logo, upgrade this privacy policy to Pro."; var gopro_direct_link_limit = "If you want to directly link the privacy policy, without using the embedding code, upgrade this privacy policy to Pro."; var gopro_direct_embed_limit = "If you want to directly embed the privacy policy text, so that it's printed right on your website's page, upgrade this privacy policy to Pro. <a href='/en/help/78' target='_blank'>Display an example</a>"; var gopro_add_language = "The license of this site is valid for a single language. If you want to add an additional language, you can purchase another license for the same price as the first :)"; var gopro_add_language_payg = "The license of this site is valid for a single language as each license is applied on a per-language or per-site basis. \u003cbr/\u003e\u003cbr/\u003e \u003cspan\u003e\u0026#128204;\u003c/span\u003e To add an additional language, you'll need to activate another license. Doing this is easy! \u003cbr/\u003e\u003cbr/\u003e Simply click the \"Add language\" button and our system will split the remaining value of your current paid license to activate the new one. \u003cbr/\u003e\u003cbr/\u003e The expiration date of both licenses will then shorten accordingly as the value of the subscription is split to accommodate your active licenses."; var mt_expired_add_language = "Your Multi-license plan expired, go to your dashboard to renew or go back to Pay-per-license."; var mt_emptied_add_language = "Your Multi-license plan has no more available slots, please upgrade to a larger plan."; var mt_add_language_upgrade_now = "Upgrade now"; var buy_second_language = "Buy additional language"; var permissions_tooltip_title = "Reserved for Pro policies"; var permissions_tooltip_paragraph = "In order to add this permission to your privacy policy, you must first upgrade it to Pro."; var pro_service_tooltip_title = "Reserved for Pro policies"; var pro_service_tooltip_paragraph = "In order to add this service to your privacy policy, you must first upgrade it to Pro."; var pro_cookiepp_tooltip_title = "Reserved for Pro policies"; var pro_cookiepp_tooltip_paragraph = "In order to add a cookie policy to your privacy policy, you must first upgrade it to Pro. <a href='/en/help/1175' target='_blank'>Display an example</a>"; var hint_tooltip_title = "Hints about this service"; var fbLoginUrl = "https://www.iubenda.com/en/facebook_login"; var facebookConnectUrl = "https://www.iubenda.com/en/facebook/connect"; var legacyUpgrade = true; var package_feature_not_enabled = "Upgrade your plan"; var package_upgrade_message = "This feature is not included in your current plan. Upgrade your plan to unlock it."; var package_upgrade_cta = "Learn more"; // alerts document.addEventListener("DOMContentLoaded", function(e) { var flashAlert = sessionStorage.getItem('flash_alert_error'); if (flashAlert) { AlertMessage.show({message: flashAlert, type: 'error', timerHide: 3000}); sessionStorage.removeItem('flash_alert_error'); } }); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" type="text/plain" class="_iub_cs_activate" data-iub-purpose="2"> //<![CDATA[ (function(d, id) { var fcJS; function initFreshChat() { window.fcWidget.init({ token: "6946a656-b4d1-4304-80ca-a527ec430aa5", host: "https://wchat.freshchat.com", locale: "en", config: { hideFAQ: true, headerProperty: { hideChatButton: true, direction: "ltr" }, } }); window.fcWidget.user.setLocale('en'); } if (d.getElementById(id)) { initFreshChat(); return; } fcJS = d.createElement('script'); fcJS.id = id; fcJS.async = true; fcJS.src = 'https://wchat.freshchat.com/js/widget.js'; fcJS.nonce = '6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091' fcJS.onload = initFreshChat; d.head.appendChild(fcJS); }(document, 'freshchat-js-sdk')); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" type="text/plain" class="_iub_cs_activate" data-iub-purposes="4,5"> //<![CDATA[ !function(){"use strict";window.RudderSnippetVersion="3.0.14";var e="rudderanalytics";window[e]||(window[e]=[]) ;var rudderanalytics=window[e];if(Array.isArray(rudderanalytics)){ if(true===rudderanalytics.snippetExecuted&&window.console&&console.error){ console.error("RudderStack JavaScript SDK snippet included more than once.")}else{rudderanalytics.snippetExecuted=true, window.rudderAnalyticsBuildType="legacy";var sdkBaseUrl="https://cdn.rudderlabs.com/v3";var sdkName="rsa.min.js" ;var scriptLoadingMode="async" ;var t=["setDefaultInstanceKey","load","ready","page","track","identify","alias","group","reset","setAnonymousId","startSession","endSession","consent"] ;for(var r=0;r<t.length;r++){var n=t[r];rudderanalytics[n]=function(t){return function(){var r ;Array.isArray(window[e])?rudderanalytics.push([t].concat(Array.prototype.slice.call(arguments))):null===(r=window[e][t])||void 0===r||r.apply(window[e],arguments) }}(n)}try{new Function('return import("")'),window.rudderAnalyticsBuildType="modern"}catch(a){} var i=document.head||document.getElementsByTagName("head")[0] ;var d=document.body||document.getElementsByTagName("body")[0];window.rudderAnalyticsAddScript=function(e,t,r){ var n=document.createElement("script");n.src=e,n.setAttribute("data-loader","RS_JS_SDK"),t&&r&&n.setAttribute(t,r), "async"===scriptLoadingMode?n.async=true:"defer"===scriptLoadingMode&&(n.defer=true), i?i.insertBefore(n,i.firstChild):d.insertBefore(n,d.firstChild)},window.rudderAnalyticsMount=function(){ "undefined"==typeof globalThis&&(Object.defineProperty(Object.prototype,"__globalThis_magic__",{get:function get(){ return this},configurable:true}),__globalThis_magic__.globalThis=__globalThis_magic__, delete Object.prototype.__globalThis_magic__), window.rudderAnalyticsAddScript("".concat(sdkBaseUrl,"/").concat(window.rudderAnalyticsBuildType,"/").concat(sdkName),"data-rsa-write-key","2MV0qrGjHKJbkC2kOh1rSBRyD9k") }, "undefined"==typeof Promise||"undefined"==typeof globalThis?window.rudderAnalyticsAddScript("https://polyfill-fastly.io/v3/polyfill.min.js?version=3.111.0&features=Symbol%2CPromise&callback=rudderAnalyticsMount"):window.rudderAnalyticsMount() ;var loadOptions={ onLoaded: function(rudderanalytics) { rudderanalytics.setAnonymousId("033302c3-5a61-4a61-87fb-f1778e8d66c1"); window._radderAnalyticsQueue = window._radderAnalyticsQueue || []; window._radderAnalyticsQueue.forEach(func => { if (typeof func === 'function') { func("eyJncm93dGhib29rIjp7ImF0dHJpYnV0ZXMiOnsiY291bnRyeSI6IlNHIiwi\naWQiOiIiLCJ0cmFja2luZ19pZCI6IiIsImFub255bW91c19pZCI6IjAzMzMw\nMmMzLTVhNjEtNGE2MS04N2ZiLWYxNzc4ZThkNjZjMSIsInNlc3Npb25faWQi\nOiIxMjAyOGZjMTBmN2Q5OWJhNThmZTI0ZTM2M2I0OWVjZCIsImlwIjoiOC4y\nMjIuMjA4LjE0NiJ9LCJmb3JjZWRGZWF0dXJlcyI6eyJwcmljaW5nXzIwMjMi\nOnRydWV9fX0=\n"); } }); }, storage: { entries: { userTraits: { type: "localStorage" } } }, setCookieDomain: "www.iubenda.com" } ;rudderanalytics.load("2MV0qrGjHKJbkC2kOh1rSBRyD9k","https://rudder.iubenda.com", loadOptions)}} }(); rudderanalytics.page('', '', {}); rudderanalytics.load("2MV0qrGjHKJbkC2kOh1rSBRyD9k","https://rudder.iubenda.com", { onLoaded: function(rudderanalytics) { console.log('launchpad'); Appcues.loadLaunchpad("#appcues-launchpad", { position: "left", header: "Hey there! 👋 Check out what's new!", }); } }); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" id="profitwell-js" data-pw-auth="e2b7961d01fb6d8f17a24d0b5f505c3d" type="text/plain" class="_iub_cs_activate" data-iub-purposes="2"> //<![CDATA[ (function(i,s,o,g,r,a,m){i[o]=i[o]||function(){(i[o].q=i[o].q||[]).push(arguments)}; a=s.createElement(g);m=s.getElementsByTagName(g)[0];a.async=1;a.src=r+'?auth='+ s.getElementById(o+'-js').getAttribute('data-pw-auth');m.parentNode.insertBefore(a,m); })(window,document,'profitwell','script','https://public.profitwell.com/js/profitwell.js'); profitwell('start', {}); //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091"> //<![CDATA[ window.GROWTHBOOK_API_HOST="https://cdn.growthbook.io"; window.GROWTHBOOK_CLIENT_KEY="sdk-nX2zVV0ub3f5ljqf"; //]]> </script> <script nonce="6aa57d316521dd1f393b61a27f94fea724a7c6b2132193c1e728782b7af6f091" src="/assets/builds/growthbook-5cfc0ab4c04b3cdc6f4e.js" type="text/plain" class="_iub_cs_activate" data-iub-purposes="4"> //<![CDATA[ //]]> </script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10