Connector API
  • Mews Connector API
  • Getting started
  • Usage guidelines
    • Authentication
    • Requests
    • Responses
    • Environments
    • Serialization
    • Pagination
    • Best practices
  • Concepts
    • Multi-property
    • Restrictions
    • Taxation
    • Time units
  • Use cases
    • 'How to' use cases
    • Accounting
    • Customer loyalty
    • Customer management
    • Customer messaging
    • Data export
    • Device integration
    • Events
    • Guest technology
    • Housekeeping
    • Kiosk
    • Mews Payment Terminals
    • Payment automation
    • Point of sale
    • Reputation management
    • Revenue management
    • Upsell
  • API Operations
    • Common objects
    • Accounting categories
    • Accounting items
    • Accounts
    • Account notes
    • Addresses
    • Age categories
    • Availability adjustments
    • Availability blocks
    • Bills
    • Business segments
    • Cancellation policies
    • Cashiers
    • Cashier transactions
    • Commands
    • Companies
    • Companionships
    • Company contracts
    • Configuration
    • Counters
    • Countries
    • Credit cards
    • Currencies
    • Customers
    • Departments
    • Devices
    • Enterprises
    • Exchange rates
    • Exports
    • Identity documents
    • Images
    • Languages
    • Loyalty memberships
    • Loyalty programs
    • Loyalty tiers
    • Messages
    • Message threads
    • Order items
    • Orders
    • Outlet bills
    • Outlet items
    • Outlets
    • Payments
    • Payment requests
    • Preauthorizations
    • Product categories
    • Product service orders
    • Products
    • Rates
    • Rate groups
    • Reservations
    • Reservation groups
    • Resource access tokens
    • Resource blocks
    • Resources
    • Resource categories
    • Resource features
    • Restrictions
    • Routing rules
    • Rules
    • Service order notes
    • Service overbooking limits
    • Services
    • Source assignments
    • Sources
    • Tasks
    • Tax environments
    • Taxations
    • Vouchers
    • Voucher codes
  • API Events
    • Ways to communicate
    • General Webhooks
    • Integration Webhooks
    • Webhooks FAQ
    • WebSockets
  • Your integration journey
    • Certification
  • Deprecations
    • Migration guide: Get all reservations
  • Changelog
    • Changelog 2024
    • Changelog 2023
    • Changelog 2022
    • Changelog 2021
    • Changelog 2020
    • Changelog 2019
    • Changelog 2018
    • Changelog 2017
    • Changelog 2016
Powered by GitBook
On this page
  • Initial data pull
  • Fetching reservations
  • Fetching rates and other data
  • Fetching data in the right order
  • Bulk data export
  • Periodic updates and syncing data
  • Rate pricing
  • Restrictions
  • Occupancy
  • Testing your integration
  • Additional help

Was this helpful?

  1. Use cases

Revenue management

PreviousReputation managementNextUpsell

Last updated 5 months ago

Was this helpful?

A Revenue Management System (RMS) optimizes occupancy and rates to achieve maximum total revenue for a property. To do this, a Revenue management integration fetches information about reservations, revenue and pricing from Mews, and then based on this data may recommend new rates, or directly update the rates, and estimates future revenue and occupancy. In bigger properties, there may be more than 50,000 reservations in a year, so it is necessary to limit operations in terms of potential data size, in order to avoid timeouts, network errors, etc. A recommended approach for implementing a Revenue management integration is described below. Following these guidelines should ensure that both our servers and those of the RMS are not unnecessarily overburdened.

Initial data pull

Data export: See also below.

An initial data pull is performed once when setting up the connection, because the RMS needs to obtain historical data on which to base its calculations.

Fetching reservations

The RMS should fetch the reservations in time-limited batches using , with set to Start. That will give you all reservations with an arrival time colliding with the selected interval. The optimum size of the batches depends on the size of the property and its occupancy, but in general weekly batches are recommended and will work well even for big hotels of 1000+ units. For example, in order to get reservations for the past year, the RMS should call sequentially 52 times, with one call for each week in the past year. That would give the RMS all reservations that have an arrival within the past year.

'How to' use case

API Operations

How to get historical reservations data

You can take advantage of the fact that reservations are usually booked a few weeks or months in advance. The further in future, the lower the occupancy, so the reservation batch length may increase with the distance to future from the current date. For example, weekly batches can be used only for the first three months of the future year when there is higher occupancy. And for the remaining 9 months, monthly batches would be sufficient. This will reduce the operation count from 52 to 21 (12 weekly batches + 9 monthly batches).

Fetching rates and other data

The RMS can also pull business segments via and rates via . To obtain revenue items associated with reservations, use . Information about resource blocks, e.g. rooms out of order, can be requested using . If you are managing availability blocks, see the use case for information on relevant operations.

'How to' use case

API Operations

How to get all configured business segments

How to get all configured rates and rate groups

How to get order items linked to a reservation

How to get information about out-of-order blocks

Fetching data in the right order

It is important to get the reservations and revenue first and the additional data afterwards. If done the other way around, there is a possibility that the RMS receives a reservation with a RateId which does not correspond to any rate that was pulled beforehand. Rates and business segments are dynamic and hotel employees could create a new one and assign it to a reservation just before the reservation gets pulled to the RMS.

Bulk data export

'How to' use case

API Operations

How to create a bulk data export

How to check on data export progress

Periodic updates and syncing data

The suggested frequency for periodic reservation syncing is 30 minutes for business intelligence solutions. Adjust the frequency depending on your use case. For example, a mobile key integration would rely more on real-time accuracy of reservation data to provide correct door access to the guest, whereas a thirty-minute to one-hour (or longer) interval period might suffice for a business intelligence solution aimed at providing daily statistical insight to a property's business operations.

'How to' use case

API Operations

How to listen for changes to reservations

How to get reservation details

Rate pricing

'How to' use case

API Operations

How to get all configured rates

How to get all configured rate groups

How to get the price for a specific rate and time period

How to listen for changes to rate prices

Restrictions

'How to' use case

API Operations

How to get service restrictions

How to add service restrictions

How to remove service restrictions

Occupancy

When calculating occupancy, it is important to take the hierarchy of resources into account. For example, if there is a reservation against a dormitory (or dorm), then not only is the dormitory occupied but also the beds which are child resources of the dormitory. And vice versa, if a bed in a dorm is occupied, then the dorm is also occupied.

Testing your integration

For testing Webhooks or WebSockets, set up your system to start listening for events, then manually trigger an event, e.g. update any element within a reservation.

Additional help

Help Guides:

Terminology: For an explanation of terms such as business segment, see the .

As an alternative to making conventional API requests using , we provide a bulk feature.

To keep reservations up-to-date and synced across your systems in real time, first cache the reservation data retrieved from the initial reservation data pull, then use (ServiceOrderUpdated event) or (Reservation event) to listen for reservation events. When you receive a reservation event, use the reservation Id obtained from the event to fetch the details of the reservation with .

WebSocket disconnection: In case of WebSocket disconnection, use with UpdatedUtc to perform a full resync of reservations that have been updated within the time period since the last full reservation data pull.

(ServiceOrderUpdated event) or (Reservation event)

To get rate information, there are three relevant operations. gives you information about the names and IDs of the rates in the property, and their status, and also restrictions. gives you information rate groups. And gives you the pricing of a specific rate for a specific time period. In order to update rate prices, use . Individual rate, resource category and time span can be selected. To avoid heavy consumption of API resources, while keeping rate price data up-to-date in real time, use to listen for PriceUpdate events. Then retrieve information about the relevant rates using , filtering by the relevant RateId.

(PriceUpdate event)

To retrieve information about restrictions, use . To add and remove restrictions, use and respectively.

Important: For more information about restrictions, including the algorithms used when setting and clearing restrictions, and the scope of restrictions affected by API operations, see .

Once your integration is completed, all operations should be tested prior to initiating the with the Mews Marketplace team. Testing your solution is done directly in the Connector API Demo environment. You should use the credentials found in to sign in as an end-user. This allows you to understand how both your system and the Mews system will be used by the property and gives you additional information to ensure you can provide a seamless on-boarding experience for our customers.

For help on how to create new reservations, please follow the steps outlined in the guide. If you'd like to double-check that you are correctly requesting all the reservations you want to retrieve, you can compare the API response to the Mews . This report can easily be exported in various formats following the steps in .

Mews Glossary for Open API users
Concepts > Restrictions
Certification process
Environments
Create a reservation
Reservation Report
Scheduling report exports
Create a reservation
Reservation Report
Scheduling report exports
Understanding restrictions
General Webhooks
WebSockets
WebSockets
Data export
General Webhooks
WebSockets
WebSockets
Bulk data export
Get all business segments
Get all resource blocks
Get all business segments
Get all resource blocks
Events
Get all rates
Get all rates
Get all rate groups
Get rate pricing
Get all order items
Get all rates
Get rate pricing
Update rate price
Get rate pricing
Get all rate groups
Get all rates
Get all order items
Add export
Get all exports
Get all reservations
TimeFilter
Get all reservations
Get all reservations
Get all reservations
Get all reservations
Get all reservations
Get all reservations
Get all restrictions
Set restrictions
Clear restrictions
Get all restrictions
Set restrictions
Clear restrictions