IAB TCF version 2 - Migration guide - Web

Our dedicated article gives more information on the IAB TCF version 2 and the migration calendar.

This guide is provided for testing the TCF version 2 on websites in April 2020. Do not enable TCF version 2 on your production websites before May 2020 as vendors might not be fully ready to support it. See our article on the IAB TCF version 2 and the migration calendar.

🔎 Didomi will make regular updates to its TCF version 2 support throughout the month of April as more tests are run with vendors.

💡 Feel free to send us feedback to support@didomi.io as you test this new version of TCF.

Migrating a Web consent notice from the IAB TCF version 1 to the version 2 can be done by following these steps:

  • Enable the IAB TCF version 2.
  • Configure your list of vendors and purposes.
  • Update your Embed Code.
  • Use new purpose SDK IDs in tag managers and SDK API calls.

We recommend testing these steps in a test environment first and validating your integration with your IAB TCF vendors before switching your production environments to the TCF v2. We also do not recommend launching the IAB TCF v2 in production before May 2020 as vendors might not be fully ready until then.


Improperly configuring your consent notices in production will result in lost consent and will negatively impact your revenue.

1- How to test the IAB TCF version 2?

We recommend setting up a test consent notice and not modifying your production notice. That will allow you to experiment with the new version of the TCF without risk.

You can temporarily enable the TCF version 2 on any website with a Didomi notice by adding ?didomiConfig.app.vendors.iab.version=2 to the URL. For instance, if your website is http://www.website.com, going to http://www.website.com/?didomiConfig.app.vendors.iab.version=2 will enable the TCF version 2 for you to test in your browser.

2- Enable the IAB TCF version 2

Edit your Consent Notice in the Didomi Console and go to the Integrations / IAB Transparency & Consent Framework section to enable the IAB TCF version 2:

Didomi Compliance Console et 14 pages de plus - Personnel – Microsoft_ Edge 2021-06-28 at 10.39.07 AM

Once you publish these changes, the Didomi CMP will start using the TCF version 2 on your website.

Version 1 and version 2 are not backward-compatible and cannot run in parallel on a given website. As the version 2 includes new purposes and vendors, consent will be automatically re-collected for all your users.
Vendors that are compatible with the TCF v2 will obtain consent information from the Didomi CMP automatically. Vendors that are not compatible with the TCF v2 and that only support the TCF v1 will no longer get consent from the Didomi CMP.

3- Configure your list of vendors and purposes

The TCF v2 has a different list of vendors and purposes so you should double-check your configured vendors to make sure that the vendors you work with are available.

After enabling the TCF v2 for your notice, go to the "VENDORS&PURPOSES" step to configure your vendor list and the purposes and their categories:

4- Update your Embed code

The TCF v2 has a different API for CMPs to communicate the user consent status to vendors.

The "stub" is a small piece of code included in the Embed code. The "stub" tells vendors that a CMP is present on the page and that they should wait for a consent status from the user.
As the "stub" has changed with the TCF v2, you will need to update the Embed code on your website.

Go to the Embed section of your notice and get the updated Embed code for the TCF v2:

 

The "stub" is only used to optimize the consent transmission between the CMP and vendors on a website. If you simply want to test the TCF v2 on your website before launching it in production, you can test without updating the Embed code.
Make sure you update the Embed code on your website right before enabling support for the TCF v2 in production.

5- Use new purpose SDK IDs in tag managers and SDK API calls

If you are using vendor-based information like the variable didomiVendorsConsent in your tag manager or API functions exposed by the SDK (getUserConsentStatusForVendor, setUserAgreeToAll, etc.), you do not need to change anything. The SDK will automatically take care of upgrading those functions to work with the TCF v2.

If you are using purpose-based information like the variable didomiPurposesConsent in your tag manager or API functions exposed by the SDK (getUserConsentStatusForPurpose), you will need to update your logic to use the new purpose SDK IDs for IAB purposes. The ID for your own custom purposes does not change so no update is required for those.

What's next?

These simple steps will enable the TCF v2 on your website. Feel free to make other adjustments as needed.

💡 As usual, our support team is available to help on support@didomi.io or via the chat in the Didomi Console.