Booking
Book method is called to either hold a booking or to book and voucher a booking based on the selected rooms and guest information. We strongly recommend checking the updated prices and cancellation policies for the selected rooms through BlockRoom method before proceeding with the hotel booking to reduce the probability of booking failure.
To book and voucher in one go, the ‘IsVouchered’ node should be set as true.
Price verification is done before creating a booking and Confirmation No. / Booking Reference No. is returned in case of a successful booking.
In case of Price change or Cancellation Policy change, you will get new price and/or new cancellation policy in the Book response with IsPriceChanged node and/or IsCancellationPolicyChanged node set as ‘true’.
The price comparison is to be made at the client’s end, and Book request needs to be sent again with the updated price and/ or updated cancellation policy.
Instead of 'Vouchered' or 'Confirmed' you might get 'Pending' as BookingStatus for some bookings. This is because some of the suppliers do not provide confirmation of the booking immediately. In this case you need to call HotelBookingDetail method after few minutes (5-10) to get the updated status.
If the operator does not accept GST then it will not be added.
Service URL (REST) to be used:
Book Room Request
| Level | Element | Format | Comments | Mandatory |
|---|---|---|---|---|
| 1 | EndUserIp | String | Public IP address of the end user initiating the hotel search request. Used for security, tracking, and compliance purposes. | Mandatory |
| 2 | ClientId | String | Unique client identifier assigned to the agency during API registration and onboarding. | Mandatory |
| 3 | UserName | String | Username provided to the agency at the time of registration registration | Mandatory |
| 4 | Password | String | Password provided to the agency at the time of registration | Mandatory |
| 5 | TraceId | Integer | Trace ID (Trace Id to be echoed back from search response. This can be used to trace particular search/ book at SRDV's end) | Mandatory |
| 6 | SrdvType | String | Response type identifier indicating the version or category of data returned by the SRDV system. | Mandatory |
| 7 | SrdvIndex | String | Unique identifier for the hotel search result record. | Mandatory |
| 8 | ResultIndex | String | ResultIndex (Index of the hotel for which details are to be fetched) | Mandatory |
| 9 | HotelCode | String | Unique hotel code | Mandatory |
| 10 | HotelName | String | Unique hotel name | Mandatory |
| 11 | GuestNationality | String | ISO 3166-1 alpha-2 (2-letter code) Example: India → IN | Mandatory |
| 12 | NoOfRooms | String | Requested number of rooms | Mandatory |
| 13 | ClientReferenceNo | String | Client Reference No (Currently not in use, passs as 0) | Optional |
| 14 | IsVoucherBooking | Boolean | This represents whether the request is to Hold the booking or to voucher it directly (Set true if you want to voucher the booking. Set false, if you want to hold the booking and voucher it later) | Mandatory |
| 15 | HotelRoomsDetails[] | Array | Array of hotel room details | Mandatory |
| 15.1 | ChildCount | Integer | Number of children accommodated in the room | Mandatory |
| 15.2 | RequireAllPaxDetails | Boolean | Represents if passenger detail is required all guests or only for lead guest. If true, then details would be required for all guests | Mandatory |
| 15.3 | RoomId | String | Unique identifier assigned to the room | Mandatory |
| 15.4 | RoomStatus | String | Current availability status of the room | Mandatory |
| 15.5 | RoomIndex | String | Unique room index used for room selection and booking reference | Mandatory |
| 15.6 | RoomTypeCode | String | Unique code representing the room type | Mandatory |
| 15.7 | RoomTypeName | String | Name of the room type | Mandatory |
| 15.8 | RatePlan | String | NAme of the rate plan | Mandatory |
| 15.9 | RatePlanCode | String | Rate Plan Code associated with room | Mandatory |
| 15.10 | InfoSource | String | Shows the format to select possible multiple room combinations to book. (Possible values can be FixedCombination, Open Combination) | Mandatory |
| 15.11 | SequenceNo | String | Sequence Number of the Room (Not Applicable for API Customers) | Optional |
| 15.12 | DayRates[] | Array | Per day rate breakup of the room | Mandatory |
| 15.12.1 | Amount | Decimal | Per day price of the room | Mandatory |
| 15.12.2 | Date | DATETIME | Date for which day rate is applicableFormat: (YYYY-MM-DD) | Mandatory |
| 15.13 | SupplierPrice | Decimal | Price provided by the hotel supplier before any markup or adjustments | Mandatory |
| 15.14 | Price{} | Object | Contains the complete pricing breakdown and fare details applicable to the selected room. | Mandatory |
| 15.14.1 | CurrencyCode | String | Currency in which minimum hotel price is returned | Mandatory |
| 15.14.2 | RoomPrice | Decimal | Price of the room | Mandatory |
| 15.14.3 | Tax | Decimal | Tax applicable for the room | Mandatory |
| 15.14.4 | ExtraGuestCharge | Decimal | Extra Guest Charges applicable for the room | Mandatory |
| 15.14.5 | ChildCharge | Decimal | Child Charges applicable for the room | Mandatory |
| 15.14.6 | OtherCharges | Decimal | Other Charges applicable for the room | Mandatory |
| 15.14.7 | Discount | Decimal | Discount applicable for the room | Mandatory |
| 15.14.8 | PublishedPrice | Decimal | Published Price of the room (This price would be different only if Room Price is on PUBLISHED. In case of NET, Published Price would be same as Offered Price) | Mandatory |
| 15.14.9 | PublishedPriceRoundedOff | Decimal | Published Price (rounded off) of the room (This price is for display purpose only) | Mandatory |
| 15.14.10 | OfferedPrice | Decimal | Offered Price of the room | Mandatory |
| 15.14.11 | OfferedPriceRoundedOff | Decimal | Offered Price (rounded off) of the room | Mandatory |
| 15.14.12 | AgentCommission | Decimal | Commission applicable on the Room Price (srdv will part this amount if Room Price is on Published) | Mandatory |
| 15.14.13 | AgentMarkUp | Decimal | Agent Mark Up applicable on the Room Price(Agent will earn this amount if Hotel mark up is set from backend) | Mandatory |
| 15.14.14 | ServiceTax | Decimal | Service tax applicable for the room | Mandatory |
| 15.14.15 | TDS | Decimal | TDS applicable on Commission Earned (This would be deducted only when commission is parted to the agent) | Mandatory |
| 15.14.16 | ServiceCharge | Decimal | Service Charge | Mandatory |
| 15.14.17 | TotalGSTAmount | Decimal | Total GST amount applicable to the booking transaction. | Mandatory |
| 15.14.18 | GST{} | Object | Contains the detailed GST tax breakdown for the booking. | Mandatory |
| 15.14.18.1 | CGSTAmount | Decimal | Central GST amount applied to the taxable value | Mandatory |
| 15.14.18.2 | CGSTRate | Decimal | Central GST percentage rate applicable to the booking. | Mandatory |
| 15.14.18.3 | CessAmount | Decimal | Additional cess amount levied on the booking, if applicable. | Mandatory |
| 15.14.18.4 | CessRate | Decimal | Cess percentage rate applied to the taxable amount. | Mandatory |
| 15.14.18.5 | IGSTAmount | Decimal | Integrated GST amount applicable to interstate transactions. | Mandatory |
| 15.14.18.6 | IGSTRate | Decimal | Integrated GST percentage rate applicable to the booking. | Mandatory |
| 15.14.18.7 | SGSTAmount | Decimal | State GST amount applied to the taxable value. | Mandatory |
| 15.14.18.8 | SGSTRate | Decimal | State GST percentage rate applicable to the booking. | Mandatory |
| 15.14.18.9 | TaxableAmount | Decimal | Net amount on which GST calculations are performed. | Mandatory |
| 15.15 | HotelPassenger[] | Array | List of passengers associated with the hotel booking. | Mandatory |
| 15.15.1 | Title | String | Title (Possible values can be Mr, Mrs, Miss, Ms) | Mandatory |
| 15.15.2 | FirstName | String | FirstName (2–50 characters; no special characters) | Mandatory |
| 15.15.3 | MiddleName | String | MiddleName | Optional |
| 15.15.4 | LastName | String | LastName (2–50 characters; no special characters) | Mandatory |
| 15.15.5 | Phoneno | String | Contact number of the passenger. | Mandatory |
| 15.15.6 | String | Email address of the passenger for booking communication. | Mandatory | |
| 15.15.7 | PaxType | Enumeration | Specifies the passenger category(Adult = 1, Child = 2) | Mandatory |
| 15.15.8 | LeadPassenger | Boolean | LeadPassenger (Set true if the guest is a lead passenger. Set false, if the guest is not a lead passenger) | Mandatory |
| 15.15.9 | PassportNo | String | Passport number of the passenger. | Mandatory |
| 15.15.10 | PassportIssueDate | Date | Date on which the passenger's passport was issued. | Mandatory |
| 15.15.11 | PassportExpDate | Date | Expiry date of the passenger's passport. | Mandatory |
| 15.15.12 | PAN | String | Permanent Account Number (PAN) of the passenger, if applicable. | Optional |
| 15.15.13 | GSTCompanyAddress | String | Registered address of the GST-registered company. Required when GST invoicing is requested. | Mandatory |
| 15.15.14 | GSTCompanyContactNumber | String | Contact number of the GST-registered company. Required when GST invoicing is requested. | Mandatory |
| 15.15.15 | GSTCompanyName | String | Legal name of the GST-registered company. Required when GST invoicing is requested. | Mandatory |
| 15.15.16 | GSTNumber | String | Valid GST Identification Number (GSTIN) of the company. Required when GST invoicing is requested. | Mandatory |
| 15.15.17 | GSTCompanyEmail | String | Email address associated with the GST-registered company. Required when GST invoicing is requested and GST is enabled for the booking. | Mandatory |
| 15.16 | RoomPromotion | String | Promotional offer, special deal, or discount applicable to the selected room. | Mandatory |
| 15.17 | Amenities[] | Array | Collection of amenities and facilities available with the room. | Mandatory |
| 15.17.1 | Name | String | Display name of the room amenity or facility. | Mandatory |
| 15.17.2 | FontAwesome | String | Font Awesome icon class associated with the amenity for UI representation. | Mandatory |
| 15.17.3 | IcoFont | String | IcoFont icon class associated with the amenity for UI representation. | Mandatory |
| 15.18 | SmokingPreference | Enumeration | Indicates the smoking preference available for the room (e.g., Smoking, Non-Smoking, Either, or No Preference). | Mandatory |
| 15.19 | BedTypes | String | Specifies the bed configuration available in the room (e.g., King Bed, Twin Beds, Queen Bed). | Mandatory |
| 15.20 | HotelSupplements | String | Additional services, benefits, or supplements provided by the hotel for the selected room. | Mandatory |
| 15.21 | LastCancellationDate | Date | Last Cancellation Date (Nocancellation charge will be applied up to this date. If the date is less than book date then cancellation charge will be applicable as per policy) | Mandatory |
| 15.22 | CancellationPolicies[] | Array | List of cancellation policy rules applicable to the booking. | Mandatory |
| 15.22.1 | Charge | Decimal | Cancellation charge (Contains amount in case of Amount, Percentage value in case of Percentage, No of nights in case of Night) | Mandatory |
| 15.22.2 | ChargeType | Enumeration | Cancellation charge type : CancellationPolicies - ChargeType Amount = 1, Percentage = 2, Nights = 3 | Mandatory |
| 15.22.3 | Currency | String | Currency code in which the cancellation charge is defined. | Mandatory |
| 15.22.4 | FromDate | Date | Date from which charges will apply (Format: dd/mm/yyyy) | Mandatory |
| 15.22.5 | ToDate | Date | Date up to which charges will apply (Format: dd/mm/yyyy) | Mandatory |
| 15.23 | BedTypeCode | Integer | Unique identifier representing the room's bed configuration type. | Mandatory |
| 15.24 | Supplements | Integer | Indicates additional hotel supplements, services, or benefits associated with the room booking. | Mandatory |
Book Room Response
| Level | Element | Format | Comments | Mandatory |
|---|---|---|---|---|
| 1 | BookResult | Object | Root object containing the complete hotel booking response, including booking status, confirmation details, pricing information, and error details. | Mandatory |
| 1.1 | Error{} | Object | Object containing error information returned during booking processing. | Mandatory |
| 1.1.1 | ErrorCode | Integer | Unique system-generated error code identifying the reason for booking failure or validation error. | Mandatory |
| 1.1.2 | ErrorMessage | String | Detailed description of the error encountered during the booking process. | Mandatory |
| 1.2 | VoucherStatus | String | Voucher Status(true - Booking is vouchered false - Booking is not Vouchered ) | Mandatory |
| 1.3 | ResponseStatus | Enumeration | Response Status (NotSet = 0, Successful = 1, Failed = 2, InValidRequest = 3, InValidSession = 4, InValidCredentials = 5) | Mandatory |
| 1.4 | TraceId | Integer | Unique transaction identifier used for request tracking, troubleshooting, and support purposes. | Mandatory |
| 1.5 | Status | Enumeration | Status Possible values can be 0 – BookFailed,1 - Confirmed, 3 – VerifyPrice, 6 – Cancelled | Mandatory |
| 1.6 | HotelBookingStatus | Enumeration | Hotel Booking StatusPossible values can be – BookFailed, Confirmed, VerifyPrice, Cancelled | Mandatory |
| 1.7 | InvoiceNumber | String | Unique invoice number generated for the confirmed hotel booking transaction. | Mandatory |
| 1.8 | ConfirmationNo | String | Unique confirmation number of the successful booking | Mandatory |
| 1.9 | BookingRefNo | String | Reference number used to identify and manage the hotel reservation throughout its lifecycle. | Mandatory |
| 1.10 | BookingId | Integer | Unique system-generated identifier assigned to the booking record. | Mandatory |
| 1.11 | IsPriceChanged | Boolean | Represent if price is changed or not (Would be set true, if there is a price change. Would be set as false, if there is no price change) | Mandatory |
| 1.12 | IsCancellationPolicyChanged | Boolean | Represent if cancellation policy is changed or not (Would be set true, if there is a change in cancellation policy. Would be set as false, if there is no change in cancellation policy.) | Mandatory |