The IAB’s ads.txt standard launched in 2017 as a simple solution to help combat fraud. By listing their authorised resellers within an ads.txt file hosted on their domain, publishers could help buyers vet ad tech middlemen claiming to sell that publishers’ inventory, and expose fraudulent actors.
Ads.txt was received well by most of the industry and got a lot of press coverage. But the IAB’s follow up to ads.txt, seller.json, never got quite as much coverage. Nonetheless, since its launch, sellers.json has been picking up adoption and making its own mark in bringing transparency into programmatic supply chains.
Ads.txt lets publishers define who is authorised to sell their inventory, and gives buyers a mechanism to check vendors against this list. But in programmatic transactions, a bid request might pass through a number of various intermediaries who don’t have a direct relationship with the publisher before it reaches a buyer.
Sellers.json gives buyers a way to identify all the different participants in a bid request, by standardising a way for supply-side platforms (SSPs) and exchanges to list the other sellers they transact with – both the original publishers who own the inventory, and other intermediaries who they might receive bid requests from.
This, combined with another tool created by the IAB called SupplyChain Object, allows buyers to see all the intermediaries involved in a transaction. This gives greater transparency, and also helps prevent fraud by letting buyers identify legitimate resellers of inventory right through the supply chain from the publisher to the buyer.
So a publisher lists all authorised sellers of inventory in their ads.txt files. And the companies which populate these ads.txt files list all the companies they transact with through sellers.json files.
The Technical Details
As with ads.txt, SSPs and exchanges post information on who they transact with via a publicly accessible sellers.json file (.json is just a file format, similar to .txt).
This file contains information about the SSP or exchange itself – that is, who they are, where they’re based, how they can be contacted. And it might also contain and industry identifiers relating to them – for example, their Trustworthy Accountability Group certification identifier.
But the bulk of the file contains information about each other company they buy inventory from. For each seller, the following information is listed:
A seller ID – the same ID used within a publisher’s ads.txt file, used to identify each individual seller
The name of the company
A web domain for the company
Information about whether that seller is confidential or not
Specification of whether that seller is a publisher, an intermediary, or both
Specification of whether that seller is a ‘passthrough’ seller – i.e, a company that simply passes through a bid request without selling it on. BidSwitch would be an example of a pass-through seller
Any additional comments which might be useful to help identify the seller
SSPs and exchanges also need to update their OpenRTB integrations to include support for the SupplyChain Object mentioned above, which collects and passes information about companies involved in a transaction through the supply chain.
Buyers can then use these two tools to verify all players involved in a transaction.
The SupplyChain Object, which the buyer receives, lists all the different sellers involved in a transaction, providing their seller IDs. And the buyer can then verify all of the intermediaries listed within the SupplyChain Object by crawling their supply.json files, giving end-to-end verification of all the players involved.
The Pros and Cons
As both buyers and sellers seek to introduce more transparency into the knotted supply chains of the programmatic ecosystem, sellers.json makes genuine progress.
Firstly, simply giving buyers insight into who exactly is involved in a transaction can help buyers understand how many hands a bid request is passing through before it reaches them. Thus it can be a helpful tool for buyers wanting to conduct supply-path optimisation, by exposing the inefficient and convoluted routes impressions take before reaching the buyer.
By letting buyers confirm whether the intermediaries involved are authorised to sell inventory, sellers.json can also help expose fraudsters and other illegitimate actors.
And like ads.txt, sellers.json can be relatively simple to implement.
This isn’t always the case, however. Some sellers work with thousands of publishers, and getting the necessary information from each of these can be a lengthy process. An extreme example of this is Google, which works with over one million sellers. As of last October, Google hadn’t completed its sellers.json files, which senior product manager Per Bjorke told AdExchanger was due to the need to contact each publisher and ask permission to share their information in a public sellers.json file too.
Sellers.json also requires a lot of careful manual work. Human error in inputting values into either ads.txt or sellers.json files can mean sellers.json verification fails. Underdog Media said it found that 35 percent of publishers had errors in their ads.txt files which would cause sellers.json verification to fail.
And again as with ads.txt, sellers.json is only fully effective if buyers actually do consistently audit sellers.json files, which isn’t a given. Failure to do so means any fraudulent actors would avoid detection, despite their illegitimacy being flagged by the sellers.json files.