Mapping Rooms and Rates
Pair each OTA room and rate with an Innvera room type and rate plan in the mapping tree, choose the primary occupancy, and change mappings later.
A mapping tells Channex which Innvera room type and rate plan feed a given OTA room and rate. Availability flows from the room type; prices and restrictions flow from the rate plan. Bookings travel the other way: an OTA booking for a mapped room/rate becomes a reservation on that room type and rate plan.
For Booking.com, Agoda and Trip.com you build mappings in Innvera's mapping tree, either while connecting the channel or later from Connection Details → Edit mappings. For channels connected through the Channex panel, mapping happens inside that panel and Innvera mirrors the result.
Key terms
OTA room type / OTA rate plan — the room and rate as the OTA defines them, shown with their numeric codes (for example Double Room #12345). These come from the OTA via Channex and cannot be edited here.
Occupancy row — one line per guest count under an OTA rate (1 guest, 2 guests, …). OTAs that price by occupancy expect a mapping per occupancy.
Primary occupancy — for each OTA room + rate, exactly one occupancy row is Primary. That row is the one that sends restrictions (stop-sell, min stay) to the OTA.
Pricing type — shown as a badge on each OTA rate: Occupancy-based (OBP) or Per-person (PP). A Readonly badge marks rates the OTA does not let a channel manager write to — on Booking.com these are usually derived rates.
The mapping tree
The tree lists every OTA room type as a collapsible section with a n/m mapped badge. Inside each section:
- Innvera room — one dropdown per OTA room type (Map to an Innvera room type…). An Innvera room type can be paired with only one OTA room type in a mapping session; once chosen it disappears from the other sections' dropdowns.
- One block per OTA rate, listing its occupancy rows with a checkbox each.
- On every ticked row, a Rate plan… dropdown to pick the Innvera rate plan that will price that occupancy.
The header line x of y OTA rate rows mapped tracks progress.
Map a channel
Pick the Innvera room type
Expand an OTA room type and choose the matching Innvera room type in Innvera room. Every rate row under it inherits this room type.
Tick the occupancy rows to sell
Tick each occupancy row you want connected. The first row you tick in an OTA rate becomes Primary automatically. Rows greyed out with Already mapped under another connection are taken by another channel and cannot be ticked.
Choose a rate plan per row
Pick a rate plan in the Rate plan… dropdown. Only rate plans that can price that occupancy are listed: per-room plans always qualify; per-person plans must have a price for that exact guest count. When only one plan qualifies it is selected for you. If none qualifies, the dropdown reads No rate plan has a N-guest price — add that occupancy to a rate plan under Rooms first.
Set the primary occupancy
If an OTA rate has several ticked rows, click Set primary on the one that should carry restrictions. You cannot untick the current primary while other rows are ticked (Set another occupancy primary before unchecking this one).
Add missing occupancies (optional)
If the OTA sells an occupancy Channex did not list, click Add occupancy, enter the guest count and click Add. Duplicates and values above the maximum occupancy are rejected.
Save
While connecting, click Create N Connections. While editing, click Save; the toast reads Channel mappings updated. Rows without both a room type and a rate plan are ignored.
Occupancy prices matter
If you pick a per-person rate plan that has no price for a row's guest count, the tree warns that Channex will not map that occupancy correctly. Fix it before saving, or two OTA occupancies may end up sharing one price.
Change mappings later
- Deactivate the connection from its card. Edit mappings stays disabled on an active connection (tooltip: Deactivate the connection before editing its mappings).
- Click the card to open Connection Details, then click Edit mappings. Innvera re-fetches the OTA's current rooms and rates and pre-ticks the existing mappings.
- Adjust room types, rows, rate plans and primaries, then click Save. The full mapping set replaces the old one in Channex. Saving with zero rows is refused — delete the connection instead if you no longer want it.
- Activate the connection again.
The Room & rate mappings section of Connection Details always shows the saved state as Innvera room type → rate plan next to each mapped occupancy.
Unmapped bookings
When an OTA booking references a room or rate that is not mapped, Channex sends booking_unmapped_room or booking_unmapped_rate. Innvera raises the notification Unmapped room on booking / Unmapped rate on booking and writes a CHANNEX_MAPPING_FAILED entry in Settings → Logs. The booking is retried automatically for about 30 minutes; add the mapping in that window and the import completes. After that, use Pull future reservations on the connection card (Booking.com) to fetch it.
OTA names on cards
Mappings created before OTA titles were stored may show only numeric codes. The Backfill OTA names button (speech-bubble icon on the connections card) re-fetches titles from Channex and fills them in; the toast reports how many were updated.
Common mistakes
- Two OTA room types mapped to one Innvera room type. Availability would be double-sold. The tree prevents this within a session; check existing connections before adding a new channel.
- Leaving a Booking.com occupancy unmapped. Booking.com then shows no price for that occupancy, or reports
booking_unmapped_ratewhen a guest books it. - Editing mappings while active. Not possible — deactivate first, and remember to re-activate.
Related
Connecting a Channel
Add an OTA connection with the Innvera form or the embedded Channex panel, complete Booking.com's extranet steps, then activate, test, pause or remove it.
Availability and Rate Sync
How availability, prices and restrictions reach your OTAs, what triggers a push, the Resync and Go Live actions, and what to do when a channel drifts.

