Quantcast Choice enables website owners to obtain privacy preferences from their visitors to allow non-IAB vendors to operate on their websites. You can easily set up non-IAB vendors within your Choice portal.
Key information to know before setting up non-IAB vendors:
- Non-IAB vendors are vendors who haven’t registered with IAB Europe and are not participating in the TCF and not following TCF policies. For example, Facebook.
- Vendors who registered with IAB and are participating in the TCF are listed in the Global vendor list which enables CMPs to create signals regarding them. Here is IAB Vendor List TCF v2.0. Read more about IAB’s definition of GVL here.
- Only TCF vendors will receive signals. Because non-IAB vendors are not listed in the Global Vendor List, it is not possible to create a signal to transmit to non-IAB vendors.
- Non-IAB support only enables publishers to show the vendor to the consumer and obtain a consumer's privacy preferences for that vendor, not the ability to transmit it in a standard way.
Note: If you are using Google Tag Manager, we recommend implementing the Choice CMP using these instructions, and using these instructions to collect consent for Non-IAB vendors while using Google Tag Manager instead of the instructions in this article.
Key steps to quickly set up non-IAB vendors:
Step 1
You will navigate through to the Non-IAB vendors section within the Vendors tab: go to Choice Portal > Vendors > Non-IAB Vendors, and click Add vendors here.
Step 2
Fill in vendor name, vendor description, vendor privacy policy and legal bases that you like to declare on behalf of that vendor (optional). Click Save Vendor after you finish. The Choice portal will assign a non-IAB vendor ID for the vendor you add.
Step 3
You need to use the nonIABVendorConsent API to gather user consent. Each vendor you specified is assigned an id and stored in the consent.nonIabVendorConsents object. Check each entry as needed for consent (true/false). Here is an example using out fictitious vendor "Non-IAB Company" with id 1 for which needs consent for purpose 1 and 3 to operate.
__tcfapi('getNonIABVendorConsents', 2, function(consent, success) {
// check consent for non-IAB vendor with id 1. Always check
// whether the callback returned success and GDPR applies
if ( success
&& consent.gdprApplies
&& consent.nonIabVendorConsents[1]
) {
// Use getTCData to validate consent is given for the
// purposes declared in the configuration step
__tcfapi('getTCData', 2, function(tcdata, success) {
if ( success
&& consent.gdprApplies) {
if ( tcdata.purpose.consents[1]
&& tcdata.purpose.consents[3]) {
nonIabCompanyTag(); // replace this with your own code
console.log("Debug: ", tcdata.purpose.consents[1],
tcdata.purpose.consents[3]);
}
}
});
}
});
You can make that call anywhere in your code where you need to check for consent for your non-IAB vendor you use on your page.
You also need to manually configure your Google tag(s) on your site to behave based on the consent preference made and on the product the user is using.
For NonIAB vendor API along with all other APIs, you can learn more here.