1.
Structured attributes are merged into the room text, so the attributes you send as fields and the details a supplier wrote into the room name are considered together.
2.
The text is cleaned. Embedded HTML is stripped, underscores and separators are normalised, and duplicated whitespace is collapsed.
3.
Non-distinguishing phrases are removed. Marketing copy, promotional wording and rate conditions do not describe the room, so they are dropped before comparison.
4.
Tokens are normalised. Abbreviations are expanded, common misspellings are repaired, and recognised non-English terms are mapped to their English equivalents.
5.
Attributes are extracted into structured values: room category, bed types and counts, view, occupancy, board basis, accessibility and other room features.
6.
Rooms are grouped on the resulting attributes.
Entitlement is checked first, and it is strict. Your provider value is compared against the provider list your account is entitled to, exactly and case sensitively, with no trimming. A value with different casing or a stray leading or trailing space is rejected with status code 1011 before it is interpreted at all.
Interpretation is lenient, and silent. A provider that passes the entitlement check but has no supplier specific handling is read with the default interpretation. No warning is returned, and the mapping still runs. Only a handful of supplier families have bespoke handling; every other entitled provider is read this way, which is normal and expected.
Always source provider from the provider names endpoint, and keep the value stable across requests. Changing the spelling of a provider name, or introducing a variant such as an internal code, will either be rejected outright or silently change how that supplier's content is read.
Send one supplier's rooms under one provider name. Do not merge several suppliers behind a single value, and do not split one supplier across several.