1. Room Mapping
Vervotech
  • Hotel Mapping
    • Getting Started
    • Access & Onboarding with Vervotech
    • Explore your providers
    • Integration and Go Live
    • Map Providers Content
    • Webhook
    • References
    • FAQ
    • Metadata Content
      • Get Master Hotel Facilities
      • Get Master Hotel Chains
      • Get Master Hotel Brands
      • Get Master Property Types
      • Get All Master Countries
      • Get All Vervotech IDs
    • Mappings
      • Get Mappings
      • Get New Mappings
      • Get Updated Mappings
      • Get Deleted Mappings
      • Get Mapping Statistics
      • Export Mappings File
      • Get Mapping Counts
      • Get Provider Hotel Mappings by Provider ID
      • Get Provider Hotel Mappings by Vervotech ID
    • Curated Content
      • Get Curated Content by Provider Hotel IDs
      • Get Updated Curated Content
      • Get Curated Content by Vervotech IDs
    • Provider Content
      • Get Unmapped Provider Hotels
      • Get Unmapped Provider Hotels V2
      • Create Unmapped Provider Hotels File
      • Get All Provider Names
      • Get Provider Content by Provider Hotel IDs
      • Get Provider Content by Vervotech IDs
    • Location Content
      • Get Location by ID
      • Get All Locations
    • Operational APIs
      • Review Mappings of Booked Hotels by File
      • Review Mappings of Booked Hotels
      • Start Mapping by SFTP Folder
      • Get Mapping History by Run ID
    • Dynamic Mapping APIs
      • Find Match
    • Dual Mapping APIs
      • Overview
      • Get Mappings by Provider Hotel ID
      • Get Mappings with Content by Provider Hotel ID
      • Get Dual Mapping API Statistics
  • Room Mapping
    • Getting Started
    • File Based Room Mapping (Offline)
    • Customized Room Mapping Rules and Case Study
    • References
    • FAQ
    • Mapping API
      • Map Rooms
      • Get Master Room Amenities
      • Get Master Room Attributes
      • Get Provider Names
      • Get All Provider Names
    • Async Room Mapping API
      • Get Async Room Mapping Response
      • Map Large Rooms Async
    • Board Basis Mappings
      • Get All Master Board Basis
      • Map Board Basis
  • Schemas
    • Schemas
    • Response
      • GetMasterHotelBrandsResponse
      • GetMasterPropertyTypesResponse
      • GetMasterCountriesResponse
      • FacilityGroupFixtures
      • GetMasterHotelChainsResponse
    • HotelContent
    • GetHotelsByLocationIdRes
    • RoomMappingBody
    • Unica.Core.Contracts.Location.MasterLocationListRes
    • GetMasterHotelBrandsResponse1
    • CuratedHotels
    • GetHotelsByPolygonRes
    • RoomMappingBody2
    • Unica.Core.Contracts.Location.MasterLocationRes
    • GetMasterPropertyTypesResponse2
    • CuratedHotelsWithLocationContent
    • GetMappingsCountRes
    • KeyValue
    • Unica.Core.Contracts.Models.Airport
    • GetMasterCountriesResponse3
    • ReviewHotels
    • Unica.Core.Contracts.Models.ApiResponse
    • FacilityGroupFixtures4
    • ProviderMappingsStats
    • ProviderFacility
    • Unica.Core.Contracts.Models.Bed
    • GetMasterHotelChainsResponse5
    • MappingsStats
    • Unica.Core.Contracts.Models.Billing.AccountUsageBalance
    • ReviewMappingsofBookedHotelsRequest
    • ProviderRoomContent
    • Unica.Core.Contracts.Models.Billing.BillingEntry
    • LocationByPolygonRequest
    • RoomMappingRequest
    • Unica.Core.Contracts.Models.Billing.BilllingHistory
    • ProviderHotelIdentifiers
    • GenericResponse
    • Unica.Core.Contracts.Models.Billing.UsageBalanceDetails
    • ProviderHotelIdentifier
    • GetUnmappedHotelsResponse
    • GetMasterRoomAmenitiesResponse
    • Unica.Core.Contracts.Models.ConnectedLocation
    • GetMasterHotelChainsResponse
    • GetUnmappedHotelsV2Response
    • GetMasterRoomAttributesResponse
    • Unica.Core.Contracts.Models.DownloadStats
    • HotelChains
    • GetProviderContentResponse
    • MappedRoomRate
    • Unica.Core.Contracts.Models.DownloadStatsStatus
    • HotelMapping
    • GetProviderContentByHotelIdsResponse
    • RoomMappingResponse2
    • Unica.Core.Contracts.Models.Facility
    • HotelProviderIdentifier
    • GetCuratedContentResponse
    • ErrorResponse
    • Unica.Core.Contracts.Models.GetAllCountriesResV3
    • AsyncRoomMappingResponse
    • Bed
    • GetUpdatedCuratedContentResponse
    • Unica.Core.Contracts.Models.GetAllHotelBrandsRes
    • Status
    • GetMappingStatisticsResponse
    • Unica.Core.Contracts.Models.GetAllHotelChainsRes
    • Message
    • ReviewMappingsofBookedHotelsResponse
    • Unica.Core.Contracts.Models.GetAllMasterTagsResV3
    • StatusCode
    • GetProviderMappingResponse
    • Unica.Core.Contracts.Models.GetAllPropertyTypesRes
    • FacilityGroupFixtures
    • GetProviderMappingByProviderResponse
    • Unica.Core.Contracts.Models.GetMappingHistoryReq
    • GuestReview
    • GetMappingHistoryByRunIdResponse
    • Unica.Core.Contracts.Models.GetMappingsCountRes
    • CategoryRating
    • GetProviderNamesResponse
    • Unica.Core.Contracts.Models.GetProviderMappingStatsRS
    • Facility
    • GetProviderHotelIdsByVervotechIdResponse
    • Unica.Core.Contracts.Models.HotelsAPI.HotelContentField
    • GetMasterHotelBrandsResponse2
    • NearByLocation
    • GetAllVervotechIdsResponse
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.CreateUnmappedProviderHotelsFileReq
    • GetMasterPropertyTypesResponse3
    • TrainStations
    • StartMappingByFtpFolderResponse
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.CuratedHotelWithLocationMapping
    • GetMasterCountriesResponse4
    • PointOfInterests
    • PropertyContent400Error
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetCuratedContentByVervotechIdsReq
    • FacilityGroupFixtures5
    • ConnectedLocations
    • PropertyContent404Error
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetCuratedContentWithLocationRes
    • GetMasterHotelChainsResponse6
    • Neighbourhoods
    • HotelChain404Error
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetMappingByProviderRes
    • GetMasterHotelBrandsResponse3
    • Stadiums
    • MasterCountry404Error
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetMappingsRes
    • GetMasterPropertyTypesResponse4
    • LocationMapping
    • BucketFolderNotFound
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetMasterFacilityGroups
    • GetMasterCountriesResponse5
    • GetMasterHotelBrandsResponse
    • ProviderNames404Error
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetOSMLocationsRQ
    • FacilityGroupFixtures6
    • HotelBrands
    • PropertyType404Error
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetProviderContentByProviderIdsReq
    • GetMasterHotelChainsResponse7
    • GetMasterPropertyTypesResponse
    • Error401
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetProviderContentByVervotechIdsReq
    • PropertyTypes
    • Error403
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetProviderContentRes
    • GetMasterCountriesResponse
    • Error426
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetUnmappedProviderHotelsReq
    • Countries
    • Error500
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetUnmappedProviderHotelsRes
    • Room
    • Error503
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetUnmappedProviderHotelsV2Req
    • Locations
    • Facility404Error
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetUnmappedProviderHotelsV2Res
    • ResumeKey
    • TotalHotelsCount404Error
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetUpdatedCuratedContentRes
    • Error
    • LocationsRS
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.GetVervotechIdsRes
    • UnmappedHotelContent
    • Location404Error
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.HotelProviderIdentifierV3
    • HotelsByLocationIdRes
    • Location400Error
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.MasterFacilityGroups
    • Tag
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.ProviderHotelIdsRes
    • schema1
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.ProviderHotelMappings
    • schema2
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.ProviderMapping
    • schema3
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.ProviderMappingRes
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.ProviderMappingType
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.ReviewBookedHotelsReq
    • Unica.Core.Contracts.Models.HotelsAPI.HotelMappingV3.StartMappingByFtpFolderRes
    • Unica.Core.Contracts.Models.Image
    • Unica.Core.Contracts.Models.ImageSize
    • Unica.Core.Contracts.Models.KeyValue
    • Unica.Core.Contracts.Models.Link
    • Unica.Core.Contracts.Models.MappingStats
    • Unica.Core.Contracts.Models.MappingStatsRes
    • Unica.Core.Contracts.Models.MasterChain.HotelBrand
    • Unica.Core.Contracts.Models.MasterChain.HotelChain
    • Unica.Core.Contracts.Models.MasterLocation.LocationMappingRes
    • Unica.Core.Contracts.Models.MasterTags.Tags
    • Unica.Core.Contracts.Models.Neighbourhood
    • Unica.Core.Contracts.Models.PoI
    • Unica.Core.Contracts.Models.ProviderHotelHistory
    • Unica.Core.Contracts.Models.ProviderHotelHistoryRes
    • Unica.Core.Contracts.Models.ProviderHotelIdentifier
    • Unica.Core.Contracts.Models.ProviderMappingStats
    • Unica.Core.Contracts.Models.RawMapHotel
    • Unica.Core.Contracts.Models.Room
    • Unica.Core.Contracts.Models.RoomArea
    • Unica.Core.Contracts.Models.Stadium
    • Unica.Core.Contracts.Models.TrainStation
    • Unica.Core.Contracts.Models.VerifyMapping
    • Unica.DataContracts.Common.Address
    • Unica.DataContracts.Common.Bed
    • Unica.DataContracts.Common.CategoryRating
    • Unica.DataContracts.Common.CheckinInfo
    • Unica.DataContracts.Common.CheckoutInfo
    • Unica.DataContracts.Common.Contact
    • Unica.DataContracts.Common.Description
    • Unica.DataContracts.Common.DistanceUnit
    • Unica.DataContracts.Common.Facility
    • Unica.DataContracts.Common.Fee
    • Unica.DataContracts.Common.FeeType
    • Unica.DataContracts.Common.GeoCode
    • Unica.DataContracts.Common.GuestReview
    • Unica.DataContracts.Common.Image
    • Unica.DataContracts.Common.ImageSize
    • Unica.DataContracts.Common.KeyValue
    • Unica.DataContracts.Common.Link
    • Unica.DataContracts.Common.PointOfInterest
    • Unica.DataContracts.Common.Policy
    • Unica.DataContracts.Common.ReviewDistribution
    • Unica.DataContracts.Common.Room
    • Unica.DataContracts.Common.RoomArea
    • Unica.DataContracts.Common.Statistics
    • Unica.DataContracts.Common.UserReview
    • Unica.DataContracts.HotelMappingV3.DTORawMapHotel
    • Unica.DataContracts.HotelMappingV3.ProviderHotel
    • Unica.DataContracts.MasterLocation.MasterLocation
    • Unica.Host.Web.Controllers.GetProviderNamesRes
    • Unica.Services.CoreService.Models.GetProviderMappingMappingRq
    • Unica.Services.CoreService.Models.HotelMappingReq
    • NewHotelMapping
    • UpdatedHotelMapping
    • DeletedHotelMapping
  1. Room Mapping

Getting Started

Vervotech Room Mapping — Overview#

Vervotech Room Mapping offers high-precision, room-level mapping by leveraging proprietary algorithms and advanced machine learning models to accurately group equivalent room types across multiple suppliers. This ensures a consistent, deduplicated room experience—enabling cleaner displays and more informed decision-making for travelers.

What is Room Mapping?#

Travel and hospitality platforms typically aggregate inventory from many Suppliers, Bedbanks, GDSs, OTAs, and direct-connect partners. Each supplier describes the same physical room differently. One supplier may call a room "Deluxe King City View", another may list it as "DELUXE 1KNG CTY", and a third may simply send "DLX city view 1 King Bed". Without a unifying layer, the same hotel room appears multiple times in search results, prices cannot be compared apples-to-apples, and travelers see noisy, confusing inventory.
Room Mapping is the process of grouping equivalent room descriptions from different suppliers into a single, standardized room. Vervotech's Room Mapping product performs this grouping automatically using proprietary algorithms and machine-learning models that interpret room names, descriptions, bedding, views, and other attributes — producing one canonical room record per unique room type at each property.

Key benefits and use cases#

Room Mapping unlocks measurable improvements across product, engineering, and commercial functions.
Cleaner search and booking experiences. Travelers see one row per room instead of 5–10 near-duplicates, reducing decision fatigue and improving look-to-book ratios.
Best-rate selection. Once equivalent rooms are mapped, platforms can confidently surface the cheapest rate per room across suppliers.
Higher conversion and ADR. Cleaner displays correlate with better conversion; mapped inventory makes upsell paths (e.g., upgrading from Standard to Deluxe) clearer.
Faster supplier onboarding. New suppliers plug into the same standardization layer without bespoke parsing logic per integration.
Reduced operational overhead. Customer support tickets about "wrong room booked" or "duplicate listings" drop materially once a mapping layer is in place.
Analytics and reporting. Mapped room IDs provide a stable key for revenue analytics, competitive pricing analysis, and supplier performance comparisons.
Common use cases:
Use CaseOutcome
OTA search results consolidationOne row per unique room across all suppliers
Meta-search rate comparisonComparable rates for the same room across suppliers
Tour operator and wholesaler portalsConsistent inventory presentation to B2B partners

How it works#

At a high level, Room Mapping ingests raw room data from one or more suppliers, applies standardization and grouping logic, and returns enriched, mapped room records.

Workflow overview#

1.
Input — Your system sends room data (room name, room code, provider identifier, hotel identifier, and optional attributes such as bedding, view, refundability, and board basis) to Vervotech.
2.
Normalization — Vervotech's algorithms parse the raw text, extract structured attributes (category, bed type, view, occupancy, amenities), and resolve aliases and abbreviations.
3.
Grouping — Equivalent rooms across suppliers are grouped into a single standardized room record with a confidence score reflecting match strength.
4.
Enrichment (optional) — Mapped rooms can be returned with merged or preferred-provider content (images, descriptions) based on your configuration.
5.
Output — Your system receives a structured response containing standardized room names, attributes, group identifiers, and per-rate match scores.
image.png

Integration modes#

Vervotech offers multiple integration modes to fit different operational profiles. Choose based on your latency requirements, batch sizes, and whether you need real-time or scheduled mapping.
ModeBest ForNotes
Synchronous Mapping API (Map Rooms)Real-time mapping during search or shopping flowsLowest latency; recommended payload sizes apply
Asynchronous Mapping API (Map Large Rooms Async)Large batches that exceed sync payload limitsSubmit job, poll for results
File-Based Room Mapping (Offline)Bulk historical mapping or scheduled backfillsCSV in / CSV out via shared file location
ℹ️ Note: Most production deployments uses the synchronous API for live traffic.

Quick-start prerequisites#

Before integrating, ensure you have the following in place.
Account credentials — an accountId and an authentication token provisioned by Vervotech while onboarding.
A short-list of supplier providers — the supplier names you want mapped, matching Vervotech's master provider names list.
Hotel identifiers — the ProviderHotelId for each property whose rooms you want mapped.
Per-room raw data — at minimum, RoomName, RoomCode, Provider, and ProviderHotelId. Additional attributes (Description, Bed, View, Refundability, BoardBasis) significantly improve match quality.

Getting started#

The fastest path from zero to first successful mapping call.

Confirm access and download the Postman collection#

Vervotech publishes a Postman collection that includes preconfigured requests for every Room Mapping endpoint. Import it, set your accountId and token as collection variables, and you can issue a working call within minutes.
Access the Postman collection by clicking here
Postman.jpg

Support#

For onboarding questions, integration support, or feedback on mapping quality, reach out to customersuccess@vervotech.com.
Previous
Get Dual Mapping API Statistics
Next
File Based Room Mapping (Offline)
Built with