Sample XML
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 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
'
<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 -->
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 | 1 | Transaction Identifier |
SM_HotelResPaymentReadRS/HotelResPaymentList/HotelResPayment/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. |