Certification

Pre-Certification

  1. Email [email protected] to request a Client token and testing property be created in the Mews Test Environment.

  2. Create the following HTTPS endpoint URLs for the Mews Test Environment

  3. Email the endpoints to [email protected]

  4. Use your test property username and Get Properties call to receive the connectionToken for the Test Hotel.

  5. Pull hotel information, space mapping, and rate mapping information using the Get Configuration call.

  6. Map the all rate plan and space category combinations in the UI of the channel manager backend using the data received in the Get Configuration call.

  7. Manually map products from the test hotel in the channel manager backend using the mapping codes received from [email protected] (optional)

Note: Multi-property Mews customers (vacation rentals, apartments, villas, etc.) are often set up in Mews as spaces of one Mews property. E.g. Property is the Mews Enterprise and Spaces are the rental properties. These spaces (properties) can be sent to the channel manager as multiple connections, 1 connection token per space (property), or as a single connection for the entire property manager.

Certification Tests

These tests will be done during a 90-minute call with the Mews Marketplace team and the channel manager.

Inventory Push Tests

Test

Requirement

Scenario

Expected Result

Notes

Receive multi-space, multi-rate availability push

Required

5+ Spaces (3 Rooms, 1 Dorm and 1 Bed) and 5+ Rates are mapped from the Get Configuration response and data is pushed to the Update Availability endpoint.

The channel manager returns { "success": true} and data is updated in the channel manager extranet.

Mapping bed and dorm space types is recommended, not required.

Receive multi-space, multi-rate gross rate push

Required

5+ Spaces (3 Rooms, 1 Dorm and 1 Bed) and 5+ Rates are mapped and pushed to the Update Prices endpoint.

The channel manager returns { "success": true} and data is updated in the channel manager extranet.

Mapping bed and dorm space types is recommended, not required.

Receive multi-space, multi-rate net rate push

Required

5+ Spaces (3 Rooms, 1 Dorm and 1 Bed) and 5+ Rates are mapped and pushed to the Update Prices endpoint.

The channel manager returns { "success": true} and data is updated in the channel manager extranet.

Mapping bed and dorm space types is recommended, not required.

Receive multi-space, multi-rate restriction push

Required

5+ Spaces (3 Rooms, 1 Dorm and 1 Bed) and 5+ Rates are mapped and pushed to the Update Restrictions endpoint.

The channel manager returns { "success": true} and data is updated in the channel manager extranet.

Mapping bed and dorm space types is recommended, not required.

Receive product (package) rates

Required

Package Rate and Breakfast product are manually mapped in the test property. Then, a rate push with a package Rate plan code is sent to the Update Prices endpoint.

The channel manager returns { "success": true} and data is updated in the channel manager extranet.

The per night or per person per night price of the product is added to the grossAmountor netAmount of each ratePrice collection in the push. Product prices are not itemized separately.

Receive a full inventory push from Mews

Required

The connection is enabled and Mews sends the maximum update to the Update Availability, Update Prices and Update Restrictions endpoints. A minimum full inventory push is 365 days.

The channel manager returns { "success": true} and data is updated in the channel manager extranet.

Being able to accept this data is required but push size or frequency can be decreased if necessary.

Reservation Tests

Test

Requirement

Scenario

Expected Result

Notes

Send a single gross priced reservation

Required

A reservation push with test credit card information in the paymentCard object, an adultCount of 2, a childCount of 1, and a companion in the guests property of the booking and a booked channel code is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Id sent in the reservation push]", "reservations":[ {"code":"[Code sent in the reservation push]", "confirmationNumber":"[Mews confirmation number]"}]} push to the Confirm Booking endpoint.

The paymentCard object is required for all reservation pushes in the live environment.

Modify the single gross priced reservation

Required

A modification push with the same channelManagerId, the same Reservation code for each booking and at least 1 change to the reservations collection is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Same id as the original push]", "reservations":[ {"code":"[Same code as the original push]", "confirmationNumber":"[Same confirmation number as the original push]"}]} push to the Confirm Booking endpoint.

Cancel the single gross priced reservation

Required

An cancellation push with the same channelManagerId as the original reservation and no additional data is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Same id as the original push]", "reservations":[ {"code":"[Same code as the original push]", "confirmationNumber":"[Same confirmation number as the original push]"}]} push to the Confirm Booking endpoint.

Send a single net priced reservation

Required

A reservation push with test credit card information in the paymentCard object, an adultCount of 2, a childCount of 1, and a companion in the guests property of the booking is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Id sent in the reservation push]", "reservations":[ {"code":"[Code sent in the reservation push]", "confirmationNumber":"[Mews confirmation number]"}]} push to the Confirm Booking endpoint.

The paymentCard object is required for all reservation pushes in the live environment.

Modify the single net priced reservation

Required

A modification push with the same channelManagerId, the same Reservation code for each booking and at least 1 change to the reservations collection is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Same id as the original push]", "reservations":[ {"code":"[Same code as the original push]", "confirmationNumber":"[Same confirmation number as the original push]"}]} push to the Confirm Booking endpoint.

Cancel the single net priced reservation

Required

An cancellation push with the same channelManagerId as the original reservation and no additional data is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Same id as the original push]", "reservations":[ {"code":"[Same code as the original push]", "confirmationNumber":"[Same confirmation number as the original push]"}]} push to the Confirm Booking endpoint.

Send a gross priced reservation with 3 spaces on 2 rate plans and varied daily rates

Required

A reservation push with three bookings in the reservations collection, unique ratePlanCode properties and different daily rates for each date is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Id sent in the reservation push]", "reservations":[ {"code":"[Code sent in the reservation push]", "confirmationNumber":"[Mews confirmation number]"}]} push to the Confirm Booking endpoint.

Multi-booking reservations must be sent as 1 reservation collection in all cases.

Add/remove a space and add/remove dates from the multi-room gross priced reservation

Required

A modification push with the same channelManagerId and Reservation codes as the original reservation, and changes to 2 of the 3 bookings in the reservations collection.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Same id as the original push]", "reservations":[ {"code":"[Same code as the original push]", "confirmationNumber":"[Same confirmation number as the original push]"}]} push to the Confirm Booking endpoint.

Cancel the multi-room gross priced reservation

Required

An cancellation push with the same channelManagerId as the original reservation and no additional data is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Same id as the original push]", "reservations":[ {"code":"[Same code as the original push]", "confirmationNumber":"[Same confirmation number as the original push]"}]} push to the Confirm Booking endpoint.

Send a net priced reservation with 3 spaces on 2 rate plans and varied daily rates

Required

A reservation push with three bookings in the reservations collection, unique ratePlanCode properties and different daily rates for each date is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Id sent in the reservation push]", "reservations":[ {"code":"[Code sent in the reservation push]", "confirmationNumber":"[Mews confirmation number]"}]} push to the Confirm Booking endpoint.

Multi-booking reservations must be sent as 1 reservation collection in all cases.

Add/remove a space and add/remove dates from the multi-room net priced reservation

Required

A modification push with the same channelManagerId and Reservation codes as the original reservation, and changes to 2 of the 3 bookings in the reservations collection.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Same id as the original push]", "reservations":[ {"code":"[Same code as the original push]", "confirmationNumber":"[Same confirmation number as the original push]"}]} push to the Confirm Booking endpoint.

Cancel the multi-room net priced reservation

Required

An cancellation push with the same channelManagerId as the original reservation and no additional data is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Same id as the original push]", "reservations":[ {"code":"[Same code as the original push]", "confirmationNumber":"[Same confirmation number as the original push]"}]} push to the Confirm Booking endpoint.

Send a reservation with a product attached

Optional

A reservation push with a least 1 mapped product in the extra collection is sent to the Process Group endpoint.

The channel manager receives a { "clientToken":"[Mews Client Token]", "connectionToken":"[Token of a concrete connection]", "channelManagerId":"[Id sent in the reservation push]", "reservations":[ {"code":"[Code sent in the reservation push]", "confirmationNumber":"[Mews confirmation number]"}]} push to the Confirm Booking endpoint.

These products must be manually mapped before certification. This test can be combined with the single reservation test. If supported, needs to be tested with gross and net prices.

Error Tests

All error messages from the channel manager to Mews must use the error codes listed in the Channel Manager API documentation in the plain reponse section and clearly state in the error message what the issue is. Ideally, advice on how to solve the error will also be included as these messages are forwarded to the property via email.

Test

Requirement

Scenario

Expected Result

Notes

System errors

Required

A list of the error response codes and messages for all potential system errors, including timeout errors, maintenance errors, and general downtime errors.

These must comply with the plain response requirements including the correct error code and a clear error message.

Unknown reservation error

Required

Mews will push an invalid reservation and send a confirmation to the channel manager.

The channel manager returns { "success": false, "error": { "code": 2, "message": "Reservation {mewsConfirmationNumber} is not recorded in the channel manager." }}.

These must comply with the plain response requirements including the correct error code and a clear error message.

Unmapped Space code error

Required

An availability push with an unmapped Space type code is sent from the test hotel to the Update Availability endpoint.

The channel manager returns { "success": false, "error": { "code": 4, "message": "e.g. Unknown space type mapping code 'ABC'." }} as per plain response.

The response must have the unmapped Space code and comply with the plain response requirements including the correct error code and a clear error message.

Unmapped Rate code error

Required

A rate push with an unmapped Rate plan code is sent from the test hotel to the Update Prices endpoint.

The channel manager returns { "success": false, "error": { "code": 5, "message": "e.g. Unknown rate type mapping code 'ABC'." }} as per plain response

The response must have the unmapped Rate code and comply with the plain response requirements including the correct error code and a clear error message.

Connection inactive or not set up error

Required

The channel manager connection is deactivated from the channel manager extranet and then an full inventory push is sent from the test hotel to the channel manager's endpoints.

The channel manager returns { "success": false, "error": { "code": 3, "message": "e.g. The connection is missing or inactive." }}

These must comply with the plain response requirements including the correct error code, either 3 or 8, and a clear error message.

API errors

Required

The channel manager sends an invalid format reservation.

Mews returns an API error, which explains why the reservation cannot be created in Mews.

The channel manager logs the error and does not re-push the invalid reservation. If possible, the channel manager fixes the error on its own and re-pushes the reservation.

Evaluation

  • If the required tests cannot be completed, Mews will not allow the channel manager to advance to the production environment.

    • Once issues are resolved, certification will start over.

  • If there are no critical issues discovered during certification, the channel manager will be advanced to the production environment.

    • Mews will require unique https production endpoint URLs for the Channel Manager API.

    • Mews will issue a new Client token for the channel manager to use in the live environment.

    • The channel manager will issue documenation of their setup process for approval.