Channel Manager Stub · Documentation

Overview

What Channel Manager Stub does in the ecosystem, how it connects, and what is simulated.

Channel Manager Stub

What it does

Channel Manager Stub stands in for the OTA/channel-manager seam every real hotel platform has: it pushes rates and availability out to distribution channels and pulls external bookings back in. It is intentionally a stub — its job is to give the rest of the Revenue & Distribution cluster a believable second source of bookings (channel-origin, with the occasional sync conflict) without any real integration. The roster is six simulated channels — Booking.com, Expedia, Airbnb, Agoda, MakeMyTrip and Google Hotels — each with a kind (OTA / Metasearch) and a commission %.

Operators push rates + availability (which writes labelled entries to the sync log) and pull bookings (which ingests a small deterministic set of channel-origin bookings). The owner can toggle individual channels on or off; with three or more channels live, a pull deterministically surfaces a rate-mismatch conflict so the cockpit's overbooking path has something real to show.

How it connects

It reads the shared rate plans (priced by Dynamic Pricing #10) and inventory, and writes channel-origin bookings into the shared-core booking table — so a pulled booking appears in the Booking Operations Cockpit #20 as a 'channel' source and lands on the PMS #30 arrivals board. On the event spine it emits rate.pushed and channel.synced (push), and booking.ingested + booking.created (pull). The simulated conflict a pull can create is the seed for the cockpit's channel-collision overbooking exception.

What is simulated

Everything external. No real OTA, GDS or metasearch endpoint is contacted; no real rates, availability, money or inventory move. Every channel, push, pull, sync-log entry and conflict is marked simulated — on the surface (an app-level 'simulated' reality badge and a sync note) as well as in the dark 'Behind the scenes' inspector. There is no metered AI and no cost: the app is deterministic and $0 in both Cloud and OSS modes.

Honesty + reality contract

Synthetic data only — channel-origin bookings are generated deterministically (fixed-seed) and labelled Synthetic, like every record in the ecosystem. The data invariant holds: an owner's channel toggles and pulled bookings are canonical, while a viewer's push/pull/toggle effects are own-credential-scoped, ephemeral, and cleared when their access window resets. No real brands are integrated, no PII, and no proprietary connectors or metrics appear anywhere; channel names are used only as recognisable labels for a clearly-simulated seam.

Overview · Channel Manager Stub · Abhishek Saxena