Here's an interesting design question I ran into recently. Some details have been changed for client confidentiality reasons.
-
You operate a car rental aggregation service called ParkingGarage. Individual rental agencies use your API to tell you about excess inventory, which they then give to you to sell.
-
ParkingGarage doesn't actually sell the inventory, however. Instead, it acts as a sort of rental-car exchange and makes the inventory available to third-party services who would like to book reservations. ParkingGarage charges a 5% fee on each reservation as a commission and gives the balance to the rental agency that posted the inventory.
-
Word of your service spreads and it gets very popular. Three affiliates AppleAudis, BananaBeetles, and CoconutCars sign up to be your first sellers. Each affiliate is a distinct, separate service that derives its inventory from a variety of sources, of which ParkingGarage is only one. They love your API, and they're selling cars like hotcakes.
-
As things grow, th