ResLink

Validate Custom Booking


Request Profile Table

Element | @Attribute Description/Contents
ValidateCustomBooking_RQ Root element of message.
BookingAgent (optional) Element representing a booking agent. Leave empty to make a direct booking.
To specify an agent you can just provide either the ID, or the GUID. If both are provided ResLink will make a check to see if the GUID and ID match in the database and will error out if they don't.
  ID ID of the booking agent.
  GUID GUID identifier for booking agent.
  Contact Contact name.
  Email Email address.
  Phone Phone number.
  OtherRef Booking Agent Reference.
  OtherRef2 Second Booking Agent Reference.
SellingAgent (optional) Element representing a selling agent.
To specify an agent you can just provide either the ID, or the GUID. If both are provided ResLink will make a check to see if the GUID and ID match in the database and will error out if they don't.
  ID ID of the selling agent.
  GUID GUID identifier for selling agent.
Booking Element indicating the booking.
  Name Booking name.
  Email Contact email address for booking.
  Phone Contact phone for booking.
  MemberID (optional) ID of the Member to allocate this booking to
PropertyBookings Collection of PropertyBooking elements
PropertyBooking Element representing a single property booking (see Accommodation Service for more details)
SupplierID ID of the supplier (ie property) for the booking
RoomRequests Collection of RoomRequest objects
RoomRequest Object representing a single request for a Room reservation
  @ArrivalDate Date of arrival
  @Nights Number of nights
  @PackageID (optional) Id of the Package if an Accommodation Package
RoomRequestDetails Collection of RoomRequestDetail objects
RoomRequestDetail Object representing the detail for a single part of the Room reservation (each RoomType in the request requires it's own RoomRequestDetail)
  @Guests Total Number of Guests
  @Quantity Total Number of Rooms
  @RoomTypeId ID of the RoomType
RoomRequestDates Collection of RoomRequestDate objects
RoomRequestDate Object representing a single Date of a RoomRequest
  @Date Date of stay
  @Price Price for Date
  @Commission Commission value for Date
  @Currency Currency code of Price/Commission
  @AppliedPointsMultiplier Points multiplier used for Date (for Member bookings only)
PackageBookings Collection of PackageBooking elements
PackageBooking Element representing a single package booking
PackageID ID of the Package
PackageTemplateComponents Collection of PackageTemplateComponent elements
PackageTemplateComponent Element representing a single Package Template
TemplateID ID of the PackageTemplate (from GetPackageDetails).
ComponentID ID of the Component selected for the PackageTemplate
ComponentAvailabilityID ID of the Component date (from GetOpVoucherComponentAvailability.
For open dated components this should be set to 0.
ComponentAvailabilityDate Component date(from GetOpVoucherComponentAvailability.
For open dated components this will be ignored.
AddonBookings Collection of PackageTemplateComponent objects for Addon/Standalone bookings
PackageTemplateComponent Element representing a single Package Template OR Addon
TemplateID ID of the PackageTemplate (from GetPackageDetails).
For addon components this should be set to 0.
ComponentID ID of the Component selected for the PackageTemplate
ComponentAvailabilityID ID of the Component date (from GetOpVoucherComponentAvailability.
For open dated components this should be set to 0.
ComponentAvailabilityDate Component date(from GetOpVoucherComponentAvailability.
For open dated components this will be ignored.
PaxList Element representing a list of passengers.
  Pax Element representing a passenger.
    Firstname First name.
    LastName Last name.
    Email Email address.
    Phone Phone number.
    Country_GUID Passenger's country as identified by ProCharter System Code GUID
    State_GUID Passenger's state as identified by ProCharter System Code GUID
    Comments Comments.
    OtherRef Passenger Agent Reference.
    OtherRef2 Passenger Second Agent Reference.
    MarketingFields
    (optional)
Element representing a list of marketing fields for the passenger. See GetMarketingFields for how to retrieve marketing fields.
      MarketingField Element representing a marketing field.
      @Type Can be either "Pax", or "BookPax".
      @Index Unique index for the field type.
      @Name Description of the field - this can be left blank.
      @Value Value of the marketing field.
MarketingFields
(optional)
Element indicating a list of marketing fields for the booking.
  MarketingField Element indicating a marketing field.
  @Type Use "Booking".
  @Index Unique index for the field type.
  @Name Description of the field - this can be left blank.
  @Value Value of the marketing field.
Notes (optional) Element representing a list of notes.
  string Element representing a note string value.
Receipts Element representing a list of Receipts
Receipt Element representing a payment receipt.
  Total Payment total.
  Commission The portion of the Total amount that is the Commission passed on to the Agent automatically as part of a Money Direct transaction.
  TransactionFee The portion of the Total amount that is the Transaction fee.
  FTR Financial Transaction Record - a string value used in Money Direct transactions.
  Currency Currency code of receipt
  PaymentType
  (optional)
The 2 character ProCharter PaymentType code for the payment. If omitted the default payment type will be used.
MakeTestBooking Create a test booking. Set to true to create a WebRes booking; the status will automatically be set to cancelled.
SendConfirmationEmail Flag to send a confirmation email from ProCharter when the booking has been created. Default is True.

Scenario:

You want to book 1 night in an 8 Share dorm + package #3 + addon component #1 for John Smith.


Example message:

<ValidateCustomBooking xmlns="ResLink">   <ValidateCustomBookingRequest>     <SellingAgent />     <Booking>       <Name>Smith</Name>       <Email>john.smith@example.org</Email>     </Booking>     <PropertyBookings>       <PropertyBooking>         <SupplierID>205</SupplierID>         <RoomRequests>           <RoomRequest PackageId="" Nights="1" ArrivalDate="2015-02-20T00:00:00">             <RoomRequestDetails>               <RoomRequestDetail RoomTypeId="8SHX" Quantity="2" Guests="2">                 <RoomRequestDates>                   <RoomRequestDate Date="2015-02-20T00:00:00" Price="35" Discount="0" Commission="0" Currency="AUD" AppliedPointsMultiplier="0" />                 </RoomRequestDates>               </RoomRequestDetail>             </RoomRequestDetails>           </RoomRequest>         </RoomRequests>       </PropertyBooking>     </PropertyBookings>     <PackageBookings>       <PackageBooking>         <PackageID>3</PackageID>         <PackageTemplateComponents>           <PackageTemplateComponent TemplateID="8" ComponentID="20" ComponentAvailabilityID="42064" ComponentAvailabilityDate="2015-03-01T00:00:00" />           <PackageTemplateComponent TemplateID="7" ComponentID="68" ComponentAvailabilityID="22968" ComponentAvailabilityDate="2015-03-02T08:30:00" />           <PackageTemplateComponent TemplateID="9" ComponentID="20" ComponentAvailabilityID="42066" ComponentAvailabilityDate="2015-03-03T00:00:00" />           <PackageTemplateComponent TemplateID="91" ComponentID="20" ComponentAvailabilityID="42067" ComponentAvailabilityDate="2015-03-24T00:00:00" />         </PackageTemplateComponents>       </PackageBooking>       <PackageBooking>         <PackageID>2</PackageID>         <PackageTemplateComponents>           <PackageTemplateComponent TemplateID="4" ComponentID="24" ComponentAvailabilityID="0" ComponentAvailabilityDate="0001-01-01T00:00:00" />           <PackageTemplateComponent TemplateID="3" ComponentID="68" ComponentAvailabilityID="22968" ComponentAvailabilityDate="2015-03-02T00:00:00" />         </PackageTemplateComponents>       </PackageBooking>     </PackageBookings>     <AddonBookings>       <PackageTemplateComponent TemplateID="0" ComponentID="1" ComponentAvailabilityID="0" ComponentAvailabilityDate="0001-01-01T00:00:00" />     </AddonBookings>     <PaxList>       <Pax>         <FirstName>John</FirstName>         <LastName>Smith</LastName>         <MarketingFields />       </Pax>       <Pax>         <FirstName>Jane</FirstName>         <LastName>Smith</LastName>         <MarketingFields />       </Pax>     </PaxList>     <MarketingFields />     <Notes />     <Receipts />     <MakeTestBooking>true</MakeTestBooking>     <SendConfirmationEmail>false</SendConfirmationEmail>   </ValidateCustomBookingRequest> </ValidateCustomBooking>


Response Profile Table

Element | @Attribute Description/Contents
ValidatePackageBooking_RS Root element of message.
Status Element indicating the return status of the transaction.
@Code A numerical code for the status.
@Message The message of the status.
Valid Indicates if the request would be a valid booking.
CalculatedPrice The calculated price of the booking.
CalculatedCommission The calculated commission of the booking.

Example message:

<ValidateCustomBookingResponse xmlns="ResLink">   <ValidateCustomBookingResult>     <TimeStamp>2015-02-24T13:54:20.8109023+10:00</TimeStamp>     <Status Code="0" Message="Successful" />     <Errors />     <Warnings />     <OnRequest>false</OnRequest>     <Valid>false</Valid>     <CalculatedPrice>420</CalculatedPrice>     <CalculatedCommission>0</CalculatedCommission>   </ValidateCustomBookingResult> </ValidateCustomBookingResponse>