GDS-Specific Best Practices (GDS Only)

Shop single property - Rate Display Logic

Products on the Hilton shop response are returned within the roomRates object in a specific order that Hilton has configured-

  • Products shown by room type with rate plans listed within
    • Room K1D, Rate Plan ABC
    • Room K1D, Rate Plan DEF
    • ...
  • Rate plan order within each room type in order of negotiated/consortia rates first, then tokens followed by BAR rates. No sort by low to high

How to interpret DCShop response and display products based on JSON format

The DCShop response contains objects for various components that make up the json response (Ex: ratePlans, roomTypes, clientAccounts)
As the GDS interface processes the DCShop response it will loop through the roomRate array of products and pull in the necessary data supporting it (ratePlans, roomTypes, clientAccounts, etc)
The below pseudocode can be used to format a single property shop response for agent display-


For each product returned in roomRate object
	If product is negotiated rate (If Product’s ratePlan is linked to clientId)
		For each clientId (Its infrequent but there could be multiple negotiated rates linked to same rate plan)
			Attach the clientID->clientName to ratePlan->ratePlanDesc (
				
                             Ex: Rate Plan name becomes “ABC Global Services – Preferred”    
                             "clientAccounts": {
                                    "0001949": {
                                         "clientId": "0001949",
                                         "clientName": "ABC GLOBAL SERVICES",
                                         "clientRatePlanFound": true,
                                         "gdsRateCategory": "N",
                                         "gdsRatePlanCode": "ABC",
                                         "clientType": "corporate"
                                    },
                                    . . . 
                                    "AIF": {
                                        "clientIdRequired": true,
                                         "commissionable": true,
                                          …
                                         "ratePlanCategory": "corporate",
                                         "clientIds": [
                                              "0001949",
                                              "0074614"
                                         ],
                                         "ratePlanDesc": [
                                              "PREFERRED"
                                         ]
                                   },
	
			Show the product details (Details found in roomRate, Rate Plan, Room Type object)
	Else (If not negotiated rate)	
		Show the product

Rate Rules Logic

  • Single and Multi property shop responses return all necessary data for rate rules. You should save the response content in context to be used for a subsequent rule display.
  • For existing bookings, you can use a booking retrieve (GET) to retrieve reservation details to show on the rate rules.
  • Static property data should not be returned in rate rules responses (e.g., property address, property credit cards accepted). You should pull any static data from your database rather than expect it on API responses.

Rate Plan Category

Rate plan category ‘corporate’ can have two interpretations depending on how it is passed in on the DCShop request-

  • Indicating a negotiated rate plan that will have corresponding ratePlanId (top object below)
  • Indicating a corporate rate category to return corporate rates (bottom object below)
"ratePlanCandidates": [
  {
    "ratePlanCategory": "corporate",
    "ratePlanId": "0560031690"
  },
  {
    "ratePlanCategory": "corporate"
  }]

GDSFlags attribute within RatePlan

Flags:

  • G = Guarantee
  • D = Deposit
  • X = Cancellable
  • A = Late Arrival

Ex: gdsFlags=GX (guarantee and cancellable)