Booking Request
Request
| Method | URL |
|---|---|
| POST | api/v3/hotels/bookings |
Booking Payload
| Attribute | Type | Required | Description |
|---|---|---|---|
| search_id | string | REQUIRED | Search ID returned in the search response |
| hotel_code | string | REQUIRED | GRN hotel code returned in search response. |
| city_code | string | REQUIRED | City code returned in search response. |
| booking_name | string | Required | Name of the booking; for agent’s reference |
| group_code | string | REQUIRED | Group code returned in search |
| checkin | date | REQUIRED | Check-in date; ISO8601 format (YYYY-MM-DD). |
| checkout | date | REQUIRED | Check-out date; ISO8601 format (YYYY-MM-DD). |
| payment_type | string | REQUIRED | “AT_WEB” |
| holder | object | REQUIRED | Information of the lead passenger. See Holder for details. |
| booking_items | array | REQUIRED | Information of the rooms and the pax in the rooms. See Booking Item for details |
| booking_comments | string | OPTIONAL | Optional booking comments to be passed along to the hotel |
| agent_reference | string | OPTIONAL | Optional. Alpha Numeric and -_ allowed. |
| purpose_of_travel | integer | OPTIONAL | Possible values 1 or 2 1: Leisure 2: Business |
Booking Item:
| Attribute | Type | Required | Description |
|---|---|---|---|
| rate_key | string | REQUIRED | rate_key value from the search response in case rate type Bookable. If rate type Refetch/Recheck rate_key value from the Refetch/Recheck response. |
| room_code | string | REQUIRED, if returned in the search response Value to be picked-up from search response in case rate type Bookable. If rate type Refetch/Recheck room_code value from the Refetch/Recheck response. |
room_code value from the search response |
| rooms | array | REQUIRED | List of Room elements |
Room
| Attribute | Type | Required | Description |
|---|---|---|---|
| room_reference | string | REQUIRED, if returned in the search response Value to be picked-up from search response in case rate type Bookable. If rate type Refetch/Recheck room_reference value from the Refetch/Recheck response. |
Unique room reference for the room |
| paxes | array | REQUIRED | Contains the information of Pax in the room |
| bedtype_id | integer | OPTIONAL | Preferred bed type which can be selected from the list of bed types returned in the search response |
Pax
All guest names are required for adult as well as child. Guest names must be unique.
| Attribute | Type | Required | Description |
|---|---|---|---|
| title | string | REQUIRED | Title of the passenger (accepted values are: “Mr.”, “Ms.”, “Mrs.”, “Mstr.”) |
| name | string | REQUIRED | Name of the person staying in the room. Must not contain any special characters and numbers. |
| surname | string | REQUIRED | Surname/patronymic of the person staying in the room. Must not contain any special characters and numbers. |
| type | string | REQUIRED | Must be either “AD” or “CH” |
| age | integer | REQUIRED if type = “CH” |
Age of the children |
Holder
| Attribute | Type | Required | Description |
|---|---|---|---|
| title | string | REQUIRED | Title of the passenger (accepted values are: “Mr.”, “Ms.”, “Mrs.”, “Mstr.”) |
| name | string | REQUIRED | Name of the lead passenger. Must not contain any special characters and numbers. |
| surname | string | REQUIRED | Surname/patronymic of the lead passenger. Must not contain any special characters and numbers. |
| string | REQUIRED | Valid email address of the lead passenger | |
| phone_number | string | REQUIRED | Phone number of the lead passenger |
| client_nationality | string | REQUIRED | Two-letter ISO country code of the lead passenger |
| pan_number | string | REQUIRED if pan_required = "true" in search |
PAN Number is required, when pan_required is true in search response |
| pan_company_name | string | REQUIRED if pan_required = "true" in search |
PAN Company Name is required, when pan_required is true in search response and in case of corporate pan |
| fema_declaration | boolean | REQUIRED if agent is from India and Client is not Indian | I hereby confirms that I am a person resident outside India and have not stayed in India for more than 182 days in the preceding financial year as defined u/s. 2(v)(i) of FEMA. |
"holder": {
"title": "Mr.",
"name": "Test",
"surname": "Tested",
"email": "test@mail.com",
"phone_number": "661456XXXX",
"client_nationality": "US",
"pan_number": "AOQPJXXXXA",
"pan_company_name": "Aman Travel",
"fema_declaration": true
}
Credit Card
| Attribute | Type | Required | Description |
|---|---|---|---|
| card_type | string | REQUIRED | Card Types are listed below |
| give_name | string | REQUIRED | Name of Card Holder |
| family_name | string | REQUIRED | Family name of Card Holder |
| card_number | string | REQUIRED | Card Number in string format ex: "1234456789123" with any additional characters in between numbers |
| card_cv2 | string | REQUIRED | Card CV2 or CVV |
| expiry_month | string | REQUIRED | Month of card in string format - like "01" or "12" |
| expiry_year | string | REQUIRED if pan_required = "true" in search |
Year of card in "YYYY" format - like "2022" or "2021" |
| address_line1 | string | REQUIRED if pan_required = "true" in search |
Address of the card holder |
| city_name | string | REQUIRED if pan_required = "true" in search |
City of Card Holder. |
Card Types
| "AX" | "American Express", |
|---|---|
| "BC" | "Bank Card", |
| "BL" | "Carte Bleu", |
| "CB" | "Carte Blanche", |
| "DN" | "Diners Club", |
| "DS" | "Discover Card", |
| "EC" | "Eurocard", |
| "JC" | "Japanese Credit Bureau Credit Card", |
| "MA" | "Maestro", |
| "MC" | "Master Card" |
| "SO" | "Solo", |
| "CI" | "Union Pay", |
| "TP" | "Universal Air Travel Card", |
| "VE" | "Visa Electron", |
| "VI" | "Visa" |
Sample Booking Payload
For Bundled Rates:
{
"agent_reference": "",
"booking_comments": "Test booking",
"booking_items": [
{
"rate_key": "4dhf3z3dwbds7wcvvsnwihgw4tl23soh6pnovv3f3fbxp7ufcc6h72hqjqgc5yxb7vit5an2zbufimzu5o4dw5oot2sgdk6g33rcxr4m4spqdbcmzn7tapytiuy7upsnw6wglibpbfhgsm6h7k33smp44wvloqpbnwgszo2y7uq4bdnbaqrcjbqqy7ogp5itpw7gai26bjmscn6yxcdxjedv7pde7zoul6gffaudphrkqdvujceqyiza",
"room_code": "4xgevmjr5arfrpzt",
"rooms": [
{
"paxes": [
{
"name": "Henry",
"surname": "Patrick",
"title": "Mr.",
"type": "AD"
}
],
"room_reference": "swirdztkw44e5hqu6dbdqdnux6g7fs5c6g76o"
},
{
"paxes": [
{
"name": "Raj",
"surname": "kumar",
"title": "Mr.",
"type": "AD"
},
{
"name": "Rajiv",
"surname": "kumar",
"title": "Mr.",
"type": "AD"
}
],
"room_reference": "swirdztkw44e5hqu6dbdqdnux6g7fs5c6g76o"
}
]
}
],
"checkin": "2022-06-15",
"checkout": "2022-06-16",
"city_code": "121449",
"group_code": "xgirbylkufug7bk3v2ngofefwwaa",
"holder": {
"client_nationality": "fr",
"email": "james@pat.com",
"name": "James",
"phone_number": "6614565589",
"surname": "Patrick",
"title": "Mr.",
"pan_number": "AXXXX0000A",
"pan_company_name": "XYZ PVT Ltd"
},
"hotel_code": "1847222",
"payment_type": "AT_WEB",
"search_id": "6mprqy7dmnne3eb3vql2x7qm2i"
}
For Non Bundled Rates:
{
"search_id": "6mprqy7dmnne3eb3vql2x7qm2i",
"hotel_code": "1847222",
"city_code": "121449",
"group_code": "xgirbylkufug7bk3v2ngofefwwaa",
"checkout": "2022-06-16",
"checkin": "2022-06-15",
"booking_comments": "Test booking",
"payment_type": "AT_WEB",
"agent_reference": "",
"booking_items": [
{
"room_code": "43fevnb45bouroa",
"rate_key": "nhzihyw3fvlaj5xq5ua2dcgfb6oxye4wktlutu3vs",
"rooms": [
{
"room_reference": "swirdztkw44e5hqu6dbdqdnux6g7fs5c6g76o",
"paxes": [
{
"title": "Mr.",
"name": "Henry",
"surname": "Patrick",
"type": "AD"
},
{
"title": "Mr.",
"name": "Harry",
"surname": "Patrick",
"type": "AD"
},
{
"title": "Mr.",
"name": "Luke",
"surname": "Patrick",
"type": "CH",
"age": "3"
}
]
}
]
},
{
"room_code": "47eevnb45bouroa",
"rate_key": "cmg5hph74uaq6qghgwbthpxr5cmtuxec5liojekowzhzspwdpa2v4",
"rooms": [
{
"room_reference": "swirdztkw44e5hqu6dbdqdnux6g7fs5c6g76o",
"paxes": [
{
"title": "Mr.",
"name": "Sam",
"surname": "Patrick",
"type": "AD"
}
]
}
]
}
],
"holder": {
"title": "Mr.",
"name": "James",
"surname": "Patrick",
"email": "james@pat.com",
"phone_number": "6614565589",
"client_nationality": "fr",
"pan_number": "AXXXX0000A",
"pan_company_name": "XYZ PVT Ltd"
}
}