
Supply Chain
Part of Supply-path transparency
Identifying resellers in an advertising supply path
Identify a reseller by following the account and payment relationships in the path, not by assuming that any unfamiliar company is suspicious.
Identify a reseller from the account and payment relationships in the path; an unfamiliar company is not automatically suspicious. A publisher may authorise another entity to control an account and resell its inventory, so check who the entity is, what it does and whether the reported route matches the declared one.
Check the declared relationship
Start with the publisher’s ads.txt file: it declares the advertising systems and accounts authorised to sell that inventory. A declaration naming an entity other than the publisher is a signal to check, not proof the entity is unauthorised or low quality; ads.txt does not reveal every technical service that may participate downstream.
Use the publisher’s ads.txt to check authorisation and the advertising system’s published sellers.json to look up a seller’s identity. These records answer different questions, so check the reported seller against both rather than assuming an unfamiliar name is unauthorised.
If the relationship remains unclear, ask the supply partner or publisher to identify the account and the entity it represents. Do not fill the gap with an assumption.
Follow the actual request path
The SupplyChain object (schain) is part of the IAB Tech Lab / Interactive Advertising Bureau OpenRTB specification, which enables buyers to see parties selling or reselling a bid request. It can be used with OpenRTB 2.5 and was officially added to the source object in OpenRTB 2.6 and 3.0.
Find schain in BidRequest.Source.schain for OpenRTB 2.6 or later, BidRequest.Source.ext.schain for 2.5, or BidRequest.ext.schain for 2.4 or earlier. Read its nodes in order; each node represents an entity in the transaction.
Each node has an advertising-system identifier (asi) and seller ID (sid). The asi is the advertising system’s domain name, while the sid identifies the seller that system pays for the inventory; the complete flag indicates whether the chain contains all nodes back to the inventory owner.
To name a node, use its asi domain to find the advertising system’s sellers.json, then look up that node’s sid and record the seller name. Repeat in node order to turn the actual request path into a named payment route.
The asi and sid values should match the values provided in ads.txt files. A seller ID must map to only one entity paid for inventory transacted with that ID, although one selling entity may have multiple seller IDs within an advertising system.
Because the object represents entities in the direct flow of payment, a technical service appearing elsewhere in a report is not a reseller merely because it handled the request. Classify a node using its seller identity and payment role, and ask the partner about its function if that remains unclear.
Ask the supply partner to identify the entity represented by each asi and sid, the authorised account and who the advertising system pays for that seller ID. A satisfactory explanation should let you reconcile the named seller with the declared account and reported payment path; confirm with the publisher if necessary.
Build a simple route table showing the publisher, first seller, each intermediate seller, final sending system and who pays whom if known. Mark uncertain links explicitly.
An unexpected node may be a disclosed service, an outdated configuration or a data error. Ask the relevant supply partner for its role and account relationship, then confirm with the publisher when necessary.
Decide by value and evidence
Assess what the reseller contributes, such as access to demand, a format integration, a yield service or another agreed function. Compare fees and performance only where you have comparable data; more intermediaries may complicate accountability, but a shorter chain is not proof of better inventory.
Define materiality through your buying policy: a discrepancy matters when it prevents you confirming a node’s identity, authorised account or payment relationship, or when it breaches that policy. Pause or exclude a path you cannot reconcile, and document the reason so the partner can resolve it.
Supply Chain Verification Metrics
- Nodes in chain
- Number of entities in schain
- Complete flag
- True if chain includes all parties back to inventory owner
- Matched to ads.txt
- Whether asi and sid align with declared authorisations
- Confirmed payment path
- All nodes reconciled with partners and publisher



