Bedbanks & wholesalers
HotelBeds, WebBeds, TBO and RateHawk-class pools: high-volume feeds where the same independent hotel hides behind a dozen supplier codes and creative spellings.
Use the hotel and room mapping API on its own or with OnArrival booking. Get shared property and room identifiers, confidence scores and review for uncertain matches.

The same property arrives from bedbanks, chains and channel managers under different names, IDs, room types and rate descriptions. Whatever the source, it leaves as one canonical record.
HotelBeds, WebBeds, TBO and RateHawk-class pools: high-volume feeds where the same independent hotel hides behind a dozen supplier codes and creative spellings.
Marriott, Accor, Hilton and IHG feeds carry the cleanest content in the graph. Chain-direct fields win the merge when sources disagree.
Room-type and rate-plan codes straight from the property’s own systems: the ground truth that anchors room mapping across the long tail of independents.
Direct contracts, extranet loads and static rate files run through the same pipeline as everything else, resolved against the same canonical graph and flagged as yours.
Post a supplier’s property and room payload; the response carries the canonical property ID, the mapped room type and rate plan, and a confidence score per match. High-confidence records resolve inline; the uncertain tail routes to a human-review queue and returns by webhook. Nothing about the call requires a booking, ever.
POST /v1/mapping/resolve
{ "supplier": "hotelbeds",
"property": { "code": "HB-88121",
"name": "Grand Hyatt - Dubai DXB" },
"room": { "code": "DBL-GV-1",
"name": "Garden Facing Standard" } }
200 OK
{ "property_id": "prop_9f2c81",
"room_id": "room_51b7",
"confidence": 0.98,
"status": "resolved" }Similar names are only a starting point. Compare location, property details and room attributes, then review uncertain matches before merging.
Every listing is reconciled to a canonical property ID using geo, address, phone and content signals. Three suppliers send "Grand Hyatt Dubai", "Hyatt Grand, Dubai" and "Grand Hyatt - Dubai DXB"; the API returns one ID for all three. Two million properties, continuously re-verified: under 0.1% ever surface twice.
A double room and a twin room are not interchangeable. Compare bed type, view, occupancy and size before matching rooms. Similar names alone cannot confirm a match.
Compare meal plans, cancellation conditions, payment timing and inclusions in one format. Keep rates separate when their terms differ, even if they refer to the same room.
Descriptions, photos and amenities merge from the most authoritative source per field, onto a 300+ amenity taxonomy in 14 languages. Chain-direct descriptions beat bedbank stubs; high-res photos dedupe against thumbnails.
Every match carries a score and the evidence behind it. You set the threshold per use case: auto-merge high for display, hold for review on anything that touches a booking. Nothing merges silently below your line.
The roughly 3% the model cannot settle goes to a review queue worked by our supply team, with an SLA and a webhook when each record resolves. Every decision feeds the matcher, so the tail keeps shrinking.
You aggregate bedbanks yourself and keep your own booking path. We settle which listings are the same hotel and which rooms are the same room, so your results page stops fighting itself.
Clean the catalog before your buyers see it: dedupe incoming hotel supply, normalise rooms and rate plans, and stop refunding stays that were mapped to the wrong room.
Content from one system, negotiated rates from another, market rates from a third: resolve all of it to one property card so travellers compare rates, not spellings.
Something we haven’t covered? Talk to the team. We can help you work through your integration.

Our mapping pipeline compares supplier records, checks room attributes and sends uncertain matches for review. The key is keeping the evidence behind each decision.
Different suppliers can list the same hotel under different names. Hotel mapping joins those records while keeping room types, rate conditions and booking references distinct.
Help us understand website visits and which ads lead to demos. Optional Google cookies are used only for the choices you allow. Your form details are not shared with Google. Privacy policy