Overview
A house discount is a structured rate-card discount you set for a buyer, applied at product discovery. Every buy carries two buyer identities — the brand (the advertiser) and the operator (the agency or DSP doing the buying) — so a discount declares which axis it applies to:
Each axis resolves up the buyer’s own brand hierarchy
(from its published
brand.json), so one row covers a whole corporate family:
- “Coke gets 20%” → a brand discount on
coke.com - “the whole Nike family gets 12%” → a brand discount on
nike.com(reaches a Converse buy:converse.com → nike.com) - “everything GroupM buys gets 8%” → an operator discount on
groupm.com
How a discount is chosen
At discovery the buy’s brand and operator are each resolved up their hierarchy. Abrand-scoped discount can only match the brand chain; an operator-scoped one
only the operator chain. Two rules then pick the winner:
- Nearest ancestor wins. A discount on the exact entity beats one on its
house; a closer parent beats a more distant one. A parent never overrides a
more specific descendant — set a discount on
nike.comand another onconverse.com, and a Converse buy takes the Converse rate. - Larger discount wins across axes. When both a brand discount and an
operator discount match a buy, the buyer gets the larger of the two — brand
and operator are independent buyer identities, so neither hides a better deal
from the other. (e.g. a
coke.combrand discount of 10% and awpp.comoperator discount of 20% on a WPP-buying-Coke buy yields 20%.) A tie resolves to the brand axis.
Operator-axis resolution needs the agency/holdco to publish a resolvable
brand.json corporate hierarchy (so groupm.com → wpp.com resolves). Many
agencies don’t. When an operator’s family can’t be resolved, key the discount on
the exact operator domain you want it to apply to rather than a parent
holdco.Composition with buyer instructions
A buy can also match a buyer instruction. Whenever more than one discount matches a buy — across axes or across rails — the buyer gets the larger one. Because a house discount isn’t tied to an identified buyer, it also applies to anonymous (no-account) discovery; a buyer instruction never does.The wholesale floor
Every quote is floored at the storefront’s wholesale cost. A discount can reduce a price toward that floor but never below it: a 40% discount on a 25 yields **21. Discounts never price inventory under cost.Isolation
Discounted quotes are cached per resolved entity, never on the shared public partition. A discount negotiated for the Nike house can never leak into the price another buyer — one whose brand does not roll up to that house — sees.Fields
(houseDomain, scope) is unique per storefront — the same domain may carry both a
brand discount and an operator discount.
Tasks
List house discounts
Read every discount on the storefront.
Create house discount
Add a brand or operator discount.
Update house discount
Change the discount or notes on a row.
Delete house discount
Remove a row by id.
Related
Buyer instructions
Operator-and-brand intersections, country terms, and freeform notes.
Product discovery
Where discounts are applied as buyers compose products.