Skip to main content

Modify Bookings in CSL

This guide is intended to give an overview of how the Modify functionality works in Content Services for Lodging (CSL). Detailed documentation is also available in the Update Itinerary (UpdateReservationRQ) API's Help Documentation.

General

The Modify functionality is used to update certain elements within a CSL booking for a GDS hotel using the Update Itinerary (UpdateReservationRQ) API.

Guidelines

Important! Host commands or low-level services cannot be used to make changes to CSL segments.

  • Currently, no modifications can be made to an aggregator booking. API clients and Points of Sale (POS) systems should continue to use Cancel and Rebook methods.

  • Only previously committed and confirmed segments can be modified.

  • There is a restriction on modifications of segments where a virtual payment was used to make the original booking. If you attempt to modify a segment with a virtual card, the following error will be returned: UNABLE TO MODIFY SEGMENT WITH VIRTUAL CARD

  • No Modify or Cancel methods are allowed on a segment that has gone through Modify Initiate, but has not been committed. The following error will be returned: UNABLE TO MODIFY - PLEASE IGNORE OR COMMIT CURRENT TRANSACTION

  • If there is no confirmation number present in the segment, then Modify will not be permitted. The following error will be returned: UNABLE TO MODIFY UNCONFIRMED BOOKING

  • Once the modified segment is committed and a successful response is returned from CSL, the original segment is moved to History. The modified segment in History will show the SS to HK status. This also applies to ProductDetails/@PreviousStatusCode.

Example:

*HIH«                                                         

SEGMENT DETAILS HISTORY EXISTS *HSD/HOTEL TO VIEW             

MS   HHL MC 20MAR HK/OX1  DFW  -OUT22MAR 2NT              /DCMC

        1208 MARRIOTT DFW AIRPOR 1APNO00 -1/  119.00USD/CMN-C/C

     MT-COMMISSIONABLE/AGT91225783/GDPSTVIXXXXXXXXXXXX1111EXP X

     XXXX-DELLACORTE/CNOR/SI-CF-91006141-                     

AS   HHL MC 20MAR SS/HK1  DFW  -OUT23MAR 2NT              /DCMC

        1208 MARRIOTT DFW AIRPOR 1APNO00 -1/  119.00USD/CMN-C/C

     MT-COMMISSIONABLE/AGT91225783/GDPSTVIXXXXXXXXXXXX1111EXP X

     XXXX-DELLACORTE/CNOR/SI-CF-91006141-                

R-   NINA                                                      

61N1 HDQ*-XW 1146/21NOV19

Add fields in existing CSL segments

Fields could be added to the existing segment if they were not provided during the original sell request. Add one or more of the following fields to the existing CSL segment:

  • Special Instructions
  • Loyalty ID
  • Frequent Traveler number
  • Corporate ID number
  • Form of Payment
  • Arrival/Departure time

Modify fields in existing CSL segments

Change the value of an existing field in the PNR segment by modifying one of the following fields:

  • Room Type*
  • Check In/Check Out date outside date range*
  • Guest Number*
  • Check In/Check Out date within a date range
  • Guest Loyalty ID
  • Corporate ID number
  • Frequent Traveler Number
  • Arrival Time/Departure Time
  • Special Instructions
  • Form of Payment
  • IATA number
  • Lead Guest Name

Re-shop

The first three items, marked with an asterisk (*), require you to do a re-shop. Use one or more of the CSL shopping APIs, followed by Hotel Price Check REST or SOAP. Once you have a new booking key, use it in the Update Itinerary (UpdateReservationRQ) request to create the new segment. Although rare, a new confirmation number may be returned following the modification. When returned, it is added to the new segment.

The other items in the list are optional fields that do not require a re-shop.

Booking key is always required in the UpdateReservationRQ.

  • If the re-shop process is used: include the booking key received in the HotelPriceCheckRS
  • If the re-shop is not used: include the original booking key that can be found in the GetResevationRS Lodging content

Update itinerary request

The Update Itinerary (UpdateReservationRQ) request supports the modification of one or more of the elements listed above in the same request.

  • There is no restriction on the number of fields that can be modified in the same request.
  • The type of operation can be mixed (addition/deletion/modification). For example, It is possible to change the IATA number and remove the Guest Loyalty ID in the same request.

Following a successful request, the new HK segment is created.

Refer to the example request below for the modification of check-in and checkout dates outside the original dates:

<UpdateReservationRQ xmlns="http://webservices.sabre.com/pnrbuilder/v1_19" Version="1.19.0">
    <ReturnOptions RetrievePNR="true" IncludeUpdateDetails="true" />
    <ReservationUpdateList>
        <ReservationUpdateItem UpdateId="ID_3">

            <!--____id="XX" Taken from "SegmentReference" from GetRes____-->

            <ProductUpdate op="U" id="17">
                <!--ID Taken from "SegmentReference" from GetRes-->
                <Product>
                    <or:ProductDetails xmlns:or="http://services.sabre.com/res/or/v1_14">
                        <or:ProductName type="HHL">Lodging</or:ProductName>
                        <or:Lodging>
                            <or:ResGlobalInfo>
                                <or:BookingInfo Status="39" RequestorID="SG000000" InfoSource="100" RateKey="kc6kARWIDaVbeuDkPBEAG3woZDY4aYe5ViSH+gUnG2zbM+yU/fS0ULUehd56eD6G4mjY3un8iRuAGbYEuKSRTYnjtVNMqC621bTQ75pkwo2e6ko9cmlhJGYvjTXPjQVqdDCG/vyrAAPfyt55+PZwPSgu6NdCxgniS/sXVw3XOa1PGyJyYkIKLjLvYlFgquTr0JS8pbtwpWUXZbJDy5TGLtrnFiiZ5T6Mll6xXLMdmhuKaveO2JUibPzrV4BlIhZ+8FDT7YM38eLZJm6/nveRgQ2aIIKqU9n329mC/Y608v39sI6lj/j8u/a+CKdZ3eOWn3c4Vjg7Gex+b0RcXY2TISKKcezy1n5vniRLPZUfU5od9+vK2dja41bAVlTh9rgI2apWH6S1KL5hNlAzDseXqM0JqdtJiB/qB89X/5uhaSE7mgF9cQCPvaCSLVFMqaieH6BNv7bRDjyxPen1bePuUw==" TransactionId="16802a8cd2b10CTS1" Email="Orville.Wright@sabre.com">
                                    <or:BookingKey>d727c159-4c7f-4e2f-b54c-862f63c26dd7</or:BookingKey>
                                    <or:HotelReservationIds>
                                        <or:HotelReservation Id="97717699" Type="40" />
                                        <or:HotelReservation Id="XQYZMX" Type="24" />
                                        <or:HotelReservation Id="99999999" Type="5" />
                                    </or:HotelReservationIds>
                                </or:BookingInfo>
                                <or:HotelInfo HotelCode="100062610" CodeContext="GLOBAL" GlobalChainCode="RC" HotelName="RESIDENCE INN BEVERLY MARRIOTT" BrandCode="10000" SabreRating="3.0" ChainName="Residence Inn" BrandName="undefined" SupplierChainCode="RC" SourceHotelCode="14421">
                                    <or:LocationInfo Latitude="34.055624" Longitude="-118.395742">
                                        <or:Address>
                                            <or:AddressLine1>1177 South Beverly Drive</or:AddressLine1>
                                            <or:CityName CityCode="LAX">Los Angeles</or:CityName>
                                            <or:StateProv StateCode="CA" />
                                            <or:PostalCode>90035</or:PostalCode>
                                            <or:CountryName Code="US">United States of America</or:CountryName>
                                        </or:Address>
                                        <or:Contact Phone="1-310-2284100" Fax="1-310-2777488" />
                                    </or:LocationInfo>
                                    <or:Amenities>
                                        <or:Amenity Code="137" Description="Complimentary in-room coffee or tea" />
                                        <or:Amenity Code="15" Description="Car rental desk" />
                                        <or:Amenity Code="162" Description="Meal plan available" />
                                        <or:Amenity Code="179" Description="Wireless internet connection in public areas" />
                                        <or:Amenity Code="198" Description="Non-smoking rooms (generic)" />
                                        <or:Amenity Code="2006" Description="Refrigerator" />
                                        <or:Amenity Code="2007" Description="In Room Safe" />
                                        <or:Amenity Code="2014" Description="Family Room one" />
                                        <or:Amenity Code="2017" Description="Crib charge" />
                                        <or:Amenity Code="2018" Description="Extra person" />
                                        <or:Amenity Code="22" Description="Concierge desk" />
                                        <or:Amenity Code="224" Description="Pets allowed" />
                                        <or:Amenity Code="227" Description="Complimentary breakfast" ComplimentaryInd="true" />
                                        <or:Amenity Code="228" Description="Business center" />
                                        <or:Amenity Code="24" Description="Conference facilities" />
                                        <or:Amenity Code="259" Description="High speed internet access" />
                                        <or:Amenity Code="260" Description="Interior corridors" />
                                        <or:Amenity Code="261" Description="High speed wireless" />
                                        <or:Amenity Code="262" Description="Kitchenette" />
                                        <or:Amenity Code="44" Description="Game room" />
                                        <or:Amenity Code="48" Description="Health club" />
                                        <or:Amenity Code="55" Description="Hot Tub" />
                                        <or:Amenity Code="77" Description="Room service" />
                                        <or:Amenity Code="96" Description="Dry cleaning" />
                                    </or:Amenities>
                                    <or:PropertyTypeInfo>
                                        <or:PropertyType Code="1" Description="All suite" />
                                        <or:PropertyType Code="13" Description="Extended stay" />
                                    </or:PropertyTypeInfo>
                                </or:HotelInfo>
                                <or:StayDateRange StartDate="2021-07-02" EndDate="2021-07-16" />
                                <or:Total AmountAfterTax="9385.58" CurrencyCode="USD" Changed="false" SupplierChangedAmount="507.00" />
                                <or:AdditionalDetails>
                                    <or:AdditionalDetail Code="14">
                                        <or:Text>RATE IS BASED UPON CONTINUOUS LENGTH OF STAY</or:Text>
                                        <or:Text>EARLY DEPARTURE MAY RESULT IN A RATE CHANGE.</or:Text>
                                        <or:Text>MARRIOTTS COMMITTED SAFE ENVIRONMENT--PPE WORN BY</or:Text>
                                        <or:Text>HOTEL STAFF BASED ON JOB DUTIES AND LOCAL LAWS</or:Text>
                                        <or:Text>-HOSPITAL GRADE DISINFECTANTS ARE USED -HAND</or:Text>
                                    </or:AdditionalDetail>
                                </or:AdditionalDetails>
                                <or:Commission CommissionIndicator="true" Type="Variable">
                                    <or:CommissionDescription>
                                        <or:Text>COMMISSION PAID UP TO 029 DAYS</or:Text>
                                    </or:CommissionDescription>
                                </or:Commission>
                            </or:ResGlobalInfo>
                            <or:Rooms NumberOfRooms="1">
                                <or:Room InvBlockCode="XMID00" SegmentNumber="1" GuestRoomInfo="3" RoomIndex="1">
                                    <or:Guests Count="4">
                                        <or:Guest Type="10" Email="abcd@gmail.com" Index="1" LeadGuest="true" FirstName="Miller" LastName="Jonas">
                                            <or:Contact Phone="410541278467" Mobile="108205610" />
                                        </or:Guest>
                                    </or:Guests>
                                    <or:RoomDescription Name="MARRIOTT SENIOR DISC.">
                                        <or:Text>MARRIOTT SENIOR DISCOUNT, INCLUDES 14. NIGHTS, SEE RATE DETAILS, 2 BEDROOM SUITE CUSTOMERS SHOULD REVIEW GOVERNMENT GUIDANCE TO CONFIRM ELIGIBILITY TO TRAVEL - STAY AT HOTEL. SEE TRAVELGUIDANCE .MARRIOTT.COM. RESERVATIONS WILL NOT BE HONORED WHERE PROHIB MAX OCCUPANCY- 5 GUESTS BEDROOM 1: 1 QUEEN, BEDROOM 2: 1 QUEEN, SOFA BED, BATHROOMS: 2, FULLY EQUIPPED KITCHEN, MICROWAVE, 650SQFT/59SQM, DINING AREA MARRIOTT SENIOR DISCOUNT - AVAILABLE TO GUESTS 62 YEARS OF AGE OR OLDER. - PROOF OF AGE ELIGIBILITY REQUIRED AT CHECK-IN. - LIMIT OF TWO ROOMS PER NIGHT.</or:Text>
                                    </or:RoomDescription>
                                    <or:BookingStatus>HK</or:BookingStatus>
                                    <or:RatePlan RatePlanName="MARRIOTT SENIOR DISC." SupplierRatePlanCode="S9R" RatePlanType="13" PrepaidIndicator="false">
                                        <or:RatePlanDescription />
                                        <or:RatePlanInclusions />
                                        <or:MealsIncluded>
                                            <or:MealIncluded />
                                        </or:MealsIncluded>
                                        <or:RateInfo AmountBeforeTax="8112.00" AmountAfterTax="9385.58" CurrencyCode="USD" NightlyRate="507.00" AdditionalFeesInclusive="true" TaxInclusive="true">
                                            <or:AdditionalDetails>
                                                <or:AdditionalDetail Code="32">
                                                    <or:Text>INCLUDES TAXES AND SURCHARGES</or:Text>
                                                </or:AdditionalDetail>
                                                <or:AdditionalDetail Code="7">
                                                    <or:Text>CANCEL PERMITTED UP TO 01 DAYS BEFORE ARRIVAL</or:Text>
                                                    <or:Text>586.60 USD CANCEL FEE PER ROOM</or:Text>
                                                </or:AdditionalDetail>
                                                <or:AdditionalDetail Code="14">
                                                    <or:Text>FACE COVERINGS ARE REQUIRED. DUE TO COVID-19, SOME HOTEL</or:Text>
                                                    <or:Text>FACILITIES OR SERVICES MAY NOT BE AVAILABLE DURING YOUR STAY</or:Text>
                                                    <or:Text>COMMITMENT-HTTPS//CLEAN*MARRIOTT*COM</or:Text>
                                                </or:AdditionalDetail>
                                            </or:AdditionalDetails>
                                            <or:Fees Amount="0" />
                                            <or:Taxes Amount="1273.58" CurrencyCode="USD" />
                                            <or:CancelPenalties>
                                                <or:CancelPenalty Refundable="true">
                                                    <or:Deadline OffsetDropTime="BeforeArrival" OffsetTimeUnit="Day" OffsetUnitMultiplier="1" />
                                                </or:CancelPenalty>
                                            </or:CancelPenalties>
                                            <or:Guarantee GuaranteeType="GUAR">
                                                <or:GuaranteesAccepted>
                                                    <or:GuaranteeAccepted GuaranteeTypeCode="5">
                                                        <or:PaymentCards>
                                                            <or:PaymentCard CardCode="AX">AMERICAN EXPRESS</or:PaymentCard>
                                                            <or:PaymentCard CardCode="CA">MASTERCARD</or:PaymentCard>
                                                            <or:PaymentCard CardCode="DC">DINERS CLUB CARD</or:PaymentCard>
                                                            <or:PaymentCard CardCode="DS">DISCOVER CARD</or:PaymentCard>
                                                            <or:PaymentCard CardCode="IK">MASTER CARD</or:PaymentCard>
                                                            <or:PaymentCard CardCode="JC">JCB CREDIT CARD</or:PaymentCard>
                                                            <or:PaymentCard CardCode="VI">VISA</or:PaymentCard>
                                                        </or:PaymentCards>
                                                    </or:GuaranteeAccepted>
                                                    <or:GuaranteeAccepted GuaranteeTypeCode="29" />
                                                </or:GuaranteesAccepted>
                                            </or:Guarantee>
                                            <or:Commission CommissionIndicator="true" Type="Variable">
                                                <or:CommissionDescription>
                                                    <or:Text>COMMISSION PAID UP TO 029 DAYS</or:Text>
                                                </or:CommissionDescription>
                                            </or:Commission>
                                        </or:RateInfo>
                                    </or:RatePlan>
                                </or:Room>
                            </or:Rooms>
                            <!--Disable____-->
                            <or:PaymentInformation Type="DEPOSIT">
                                <or:FormOfPaymentReference newRef="1" />
                            </or:PaymentInformation>
                            -->
                            <or:POS>
                                <or:Source AgencyName="SABRE" ISOCountryCode="US" PseudoCityCode="TM61">
                                    <or:RequestorID Type="5" Id="99999999" IdContext="IATA" />
                                    <or:AgencyAddress>
                                        <or:AddressLine1>3150 SABRE DRIVE</or:AddressLine1>
                                        <or:CountryName Code="US" />
                                    </or:AgencyAddress>
                                </or:Source>
                            </or:POS>
                        </or:Lodging>
                    </or:ProductDetails>
                </Product>
            </ProductUpdate>
        </ReservationUpdateItem>
        <!--____Disabling ReservationUpdateItem from GetRes____-->
        <ReservationUpdateItem>
            <OpenReservationElementUpdate id="1" op="C">
                <OpenReservationElement id="1" type="FP">
                    <or:FormOfPayment xmlns:or="http://services.sabre.com/res/or/v1_14">
                        <or:PaymentCard>
                            <or:PaymentType>CC</or:PaymentType>
                            <or:CardCode>AX</or:CardCode>
                            <or:CardNumber tokenized="false">341111111111111</or:CardNumber>
                            <or:ExpiryMonth>10</or:ExpiryMonth>
                            <or:ExpiryYear>2021</or:ExpiryYear>
                            <or:FullCardHolderName>
                                <or:FirstName>John</or:FirstName>
                                <or:LastName>Smith</or:LastName>
                                <or:Email>smith.j@gmail.com</or:Email>
                            </or:FullCardHolderName>
                            <or:CSC>737</or:CSC>
                            <or:Address>
                                <or:AddressLine>Wadowicka 6</or:AddressLine>
                                <or:AddressLine>Entrance D</or:AddressLine>
                                <or:CityName>Cracow</or:CityName>
                                <or:CountryCodes>
                                    <or:Code>PL</or:Code>
                                </or:CountryCodes>
                            </or:Address>
                            <or:Phone>
                                <or:PhoneNumber>23231121</or:PhoneNumber>
                            </or:Phone>
                        </or:PaymentCard>
                    </or:FormOfPayment>
                </OpenReservationElement>
            </OpenReservationElementUpdate>
        </ReservationUpdateItem>
    </ReservationUpdateList>
</UpdateReservationRQ>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Deleting fields In existing CSL segments

Any of the following fields can be deleted from an existing booking using the Modify request:

  • Guest Loyalty ID
  • Frequent Traveler Number
  • Arrival Time/Departure Time
  • Special Instructions
  • Corporate ID number

PNR Process

  1. A message is sent to the supplier when the modification is requested during the Initiate step.
  2. Once the response is received from the supplier, if there is no confirmation, another segment is created in the PNR with an SS status and the existing segment is changed to the OX status.
  3. Once confirmation is received, the SS segment changes to HK, the confirmation number is added. If the Initiate response is successful with a confirmation number, no OX segment will appear in the PNR.
  4. The old segment is added to the PNR history, the SS status is changed to HK, and the confirmation number is added.

Example

*I«                                                            
1  HHL QA OX1 FSG IN22MAY W-OUT23MAY   1NT 9990005 QA    /DCQA
TEST HOTEL       1RAC0001-1/  101.01USD/RC-¤¤¤-RAC-R/CMN-C/CMT
-COMMISSION VARIABLE........../AA/GVIXXXXXXXXXXXX9664EXP XXXXX-
TEST/CD-GENERATEDCDNUMBER001/C04H/SI-CF-QA1234567895208        
2  HHL QA SS1 FSG IN22MAY W-OUT23MAY   1NT 9990005 QA TEST HOT
EL       1RAC0001-1/RR101.01USD/RC-¤¤¤-RAC-R/CMN-C/CMT-COMMISSI
ON VARIABLE........../AA/GVI4539105011539664EXP 11 20-TEST/CD-G
ENERATEDCDNUMBER001/C04H/SI-TEST-CF-

The Ignore and End Transact process is unchanged. If the PNR is ignored, or there is an auto-timeout, the PNR (the segment) reverts to the previous status.

If an error is returned after the modification request, the existing segment is retained in the PNR.

Note: Higher prices returned in the response are always accepted. This is different at the time of booking, where we show the original price with the RR indicator preceding it.

Post-modification actions

  • If an OX segment remains in the PNR after the modification request, you can delete it using Update Itinerary (UpdateReservationRQ).
  • If Update Itinerary returns a Type B success status, use this delete function instead of changing the segment's status. The PNR will move the OX segment to the history.
  • If Type B returns an unsuccessful status (UC), change the segment status of OX to HK and delete the UC segment in the same transaction. This functionality is available within Update Itinerary (UpdateReservationRQ).

Example

<ns3:UpdateReservationRQ  Version="1.19.0" xmlns:ns3="http://webservices.sabre.com/pnrbuilder/v1_19" xmlns:or="http://services.sabre.com/res/or/v1_14" >
    <ns3:RequestType>Stateful</ns3:RequestType>
    <ns3:ReturnOptions IncludeUpdateDetails="true" RetrievePNR="true">
        <!--Subject Area is optional – it is added here to receive full lodging data in the response.-->
        <ns3:SubjectAreas>
            <ns3:SubjectArea>LODGING_CONTENT</ns3:SubjectArea>
        </ns3:SubjectAreas>
    </ns3:ReturnOptions>
    <ns3:ReservationUpdateList>
        <!--UpdateId="ID_3” is a random value here, as it is not pointing anywhere.-->
        <ns3:ReservationUpdateItem UpdateId="ID_3">
            <!-- id="110" is the segment ID taken from the GetReservationRQ response sent before this operation.-->
            <ns3:ProductUpdate op="D" id="110">
                <ns3:Product>

             </ns3:Product>
            </ns3:ProductUpdate>
        </ns3:ReservationUpdateItem>
        <ns3:ReceivedFrom>
            <ns3:AgentName></ns3:AgentName>
        </ns3:ReceivedFrom>
    </ns3:ReservationUpdateList>
    <ns3:UpdateToken></ns3:UpdateToken>
</ns3:UpdateReservationRQ>