Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
minLevel1
maxLevel7

...

Sample XML

Expand
title

...

SM_HotelResPaymentResultRQ

...

Success
Code Block
languagexml
<SM_HotelResPaymentResultRQ EchoToken="123e4567-e89b-12d3-a456-426614174000" TimeStamp="2021-08-01T09:30:47+08:00" Version="1.0">
	<HotelResPaymentResult TransactionID="200098" HotelCode="ABDGFC9899">
		<UniqueID ID="BDC-79860526" Type="14" /> <!-- Reservation Id-->
		<UniqueID ID="74a63a92-d988-46b8-8476-3319285af8ac" Type="34" /> <!-- Master Res id -->
		<UniqueID ID="077887-200098" Type="40" /> <!-- Delivery Confirmation Id -->
	</HotelResPaymentResult>
	<Success/>
</SM_HotelResPaymentResultRQ>
Expand
titleSM_HotelResPaymentResultRQ Error
Code Block
languagexml
<SM_HotelResPaymentResultRQ EchoToken="123e4567-e89b-12d3-a456-426614174000" TimeStamp="2021-08-01T09:30:47+08:00" Version="1.0">
   <HotelResPaymentResult TransactionID="200098" HotelCode="ABDGFC9899">
        <UniqueID ID="BDC-79860526" Type="14" />
        <UniqueID ID="74a63a92-d988-46b8-8476-3319285af8ac" Type="34" />
    </HotelResPaymentResult>
    <Errors>
           <Error Type="12" Code="385">Booking reference not found</Error>
    </Errors>
</SM_HotelResPaymentResultRQ>
Expand
titleSM_

...

HotelResPaymentResultRS
Code Block
languagexml
<SM_

...

HotelResPaymentResultRS EchoToken="123e4567-e89b-12d3-a456-426614174000"  TimeStamp="2021-08-01T09:30:47+08:00" 

...

Version="1.0">

...


    <Success/>
</SM_HotelResPaymentResultRS>

Reservation IDs/UniqueID

Because of how payments are taken and handled in Siteminder. You now need to keep track of an extra Unique ID to link the payment to a reservation.

There will now an additional UniqueID of type=34. This ID contains the payment context ID (this is the booking identifier where the payments were taken). eg - '74a63a92-d988-46b8-8476-3319285af8ac" '
Type ="34" /> <!-- Master Res id --> <UniqueID ID="077887-200098" Type="40" /> <!-- Delivery Confirmation Id --> <Success/> </HotelResPaymentResult> </SM_HotelResPaymentResultRQ> <SM_HotelResPaymentResultRQ EchoToken="123e4567-e89b-12d3-a456-426614174000" TimeStamp="2021-08-01T09:30:47+08:00" " Version="1.0> <HotelResPaymentResult TransactionID="200098" HotelCode="ABDGFC9899"> 34 (master reference) is unique for the reservation, not the reservation message. So if we split 1 reservation into 2 messages, both messages will have the same master reference ID.

There is no change to the exisiting UniqueID of type=14 that contains the unique reservation ID of the of the reservation. Know as the Siteminder-Id eg - 'BDC-79860526'

The last UniqueID is the pms confirmation Id (this is assigned by the PMS and is the unique Id of the transaction in the PMS). This is optional. eg - '077887-200098'

Code Block
languagexml
<UniqueID ID="BDC-79860526" Type="14" /> <!-- 

...

Reservation Id-->
<UniqueID ID="74a63a92-d988-46b8-8476

...

titleSM_HotelResPaymentResultRS Sample XML

...

languagexml

...

-3319285af8ac" Type="34" /> <!-- Master Res id -->
<UniqueID ID="077887-200098" Type="40" /> <!-- Delivery Confirmation Id -->
		

Grouping transactions

While SM_HotelResPaymentResultRQ supports the ability to contain multiple payment transactions. If payment transactions are processed in a batch rather than one by one. Please be aware that a SM_HotelResPaymentResultRQ must contain either a Success or an Errors element. If multiple payment transactions are processed and both a success and an error message need to be returned then two SM_HotelResPaymentResultRQ messages need to be sent. One request containing the Success element and ids for the successfully processed payment transactions and the other request containing the Errors and ids for the payment transactions that failed to process.

SM_HotelResPaymentResultRQ

Element

Number

Description

SM_HotelResPaymentResultRQ

1

Root element

@Version

1

Current Version 1.0

@EchoToken

1

Globally unique identifier for the request, value will be returned as an EchoToken in the response.

@TimeStamp

1

Time of the transaction in xml schema dateTime format

SM_HotelResPaymentResultRQ/HotelResPaymentResult

0..n

HotelResPaymentResult

 data

@HotelCode

1

Hotel code as recognised by pmsXchange

@TransactionId

@TransactionID

1

Transaction Identifier

SM_

HotelResPaymentReadRS

HotelResPaymentResultRQ/

HotelResPaymentList/HotelResPayment

HotelResPaymentResult/UniqueID

2..3

Container for the Reservation Identifiers and Confirmation id. See Unique ID

@ID

1

Reservation Identifier or confirm id

@Type

1

14, 34 & if success 40 - See UniqueId@Type

SM_HotelResPaymentResultRQ/Success

0..1

Present If successfully stored and processed

SM_HotelResPaymentResultRQ/Errors

0..1

Present If unsuccessfully processed

See Error Handling

SM_HotelResPaymentResultRQ/Errors/Error

1

Mandatory if Error present. Text can contain a human readable description of the error

@Code

1

Mandatory if Error present. Any type from the OTA code table for 'Error Warning Type (EWT)' can be used.

@Type

1

Mandatory if Error present. Any code from the OTA code table for 'Error Codes (ERR)' can be used.

SM_HotelResPaymentResultRS

Element

Number

Description

SM_HotelResPaymentResultRS

1

Root element

@Version

1

Current Version 1.0

@EchoToken

1

Globally unique identifier for the request, value will be returned as an EchoToken in the response.

@TimeStamp

1

Time of the transaction in xml schema dateTime format

SM_HotelResPaymentResultRS/Success

0..1

Present If successfully stored and processed 

SM_HotelResPaymentResultRS/Errors

0..1

Present If unsuccessfully processed

See Error Handling

SM_HotelResPaymentResultRS/Errors/Error

1

Mandatory if Error present. Text can contain a human readable description of the error

@Code

1

Mandatory if Error present. Any type from the OTA code table for 'Error Warning Type (EWT)' can be used.

@Type

1

Mandatory if Error present. Any code from the OTA code table for 'Error Codes (ERR)' can be used.