Create separate Olo restaurant entities for each virtual brand, each with its own menu, branding assets, and ordering URL slug
Map all virtual brand Olo entities to the same physical kitchen location by assigning the shared address and dispatch configuration
Configure brand-specific menus ensuring no cross-brand item bleed; use Olo's menu management API to POST distinct product catalogs per brand entity
Set up Olo Dispatch for each virtual brand independently so delivery couriers are dispatched from the correct physical address regardless of which brand fulfilled the order
Implement a POS integration that receives orders tagged with the virtual brand identifier and routes tickets to the appropriate kitchen prep station
Test concurrent orders across two virtual brands arriving at the same kitchen and verify correct ticket separation and courier dispatch
Known gotchas
Olo requires each virtual brand to have a unique restaurant ID; sharing a single restaurant ID across brands causes menu and reporting data to merge, breaking per-brand analytics
Dispatch courier pickup instructions must specify the shared physical kitchen address for all virtual brands; using brand-specific address fields that differ from the physical location will cause courier confusion
Marketplace channel connections (Olo Rails to DoorDash or Uber Eats) must be configured separately for each virtual brand entity; a single Rails connection cannot serve multiple Olo brands simultaneously
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp