This instance is currently being migrated to the new Atlassian One Confluence sytem.
If you can't find your space anymore, it should be already in the new System: https://confluence.weareplanet.com/
Message Description
- Lookup by Member ID w/ Currency for Points
- Receive Membership Info w/ Points & Account Balance in Hotel Currency
protel I/O uses a request and response message pair to asks an external system for the current amount of loyalty points attached to a specific loyalty card. In the response message from the external System the following information is included. The Account Balance is provided always in the Hotel Currency.
- AccountBalance → current amount of points
- AccountChargeLowerLimit → minimum redemption value
- AccountChargeUpperLimit → maximum redemption value
Message Attributes
IO_LoyaltyAccountInfoRQ
Element | @Attribute | Type | Num | Description outbound | Comments + Contents outbound | pAir | OnPrem |
---|---|---|---|---|---|---|
IO_LoyaltyAccountInfoRQ | 1 | Root element of the message. | ||||
@EchoToken | string | 0..1 | A reference for additional message identification, assigned by the requesting host system. When a request message includes an echo token the corresponding response message MUST include an echo token with an identical value. | |||
@CorrelationID | string | 1 | Used to match result messages (*RS) to request messages (*RQ) in asynchronous communication patterns. Therefore mandatory. | |||
@TimeStamp | dateTime |
1 | Time of the transaction. | "2019-06-05T09:12:14Z" | ||||
@Version | string | 0..1 | Message version. | Version="3.001" | ||
@PrimaryLangID | string | 0..1 | The primary language preference for the message encoded as ISO 639-3. | |||
IO_ |
---|
RequestorID
1
LoyaltyAccountInfoRQ | ReadRequests | 0..1 | |||||
---|---|---|---|---|---|---|
@HotelCode | string | 0..1 | Full name of the property which the transferred stay information belongs to. | |||
@HotelID |
string | 0..1 |
A reference to the type of object defined by the UniqueID element. Refer to OpenTravel Code List Unique ID Type
The ID will transfer the HotelID and needs to be agreed by the trading partners and remain the |
same throughout the messages. |
@HotelName | string | 0..1 |
Full name of the property which the transferred stay information belongs to. |
@ChainCode | string | 0..1 |
Full name of the property which the transferred stay information belongs to. |
Primary attribute would be set to “true” if only one booking channel is transferred. Only one source should be marked “true” if multiple sources are sent.
- true
- false
Allows extensions to be added to the OpenTravel specification per trading partner agreement.
IO_LoyaltyAccountInfoRQ | ReadRequests | LoyaltyReadRequest | 1..n | Loyalty Information | ||||||
---|---|---|---|---|---|---|---|---|
@CurrencyCode | IOCodeString | 0..1 | Default Hotel Currency Code | |||||
@MemberCode | IOCodeString | 1 | The MemberCode attribute will indicate the actual member number. | |||||
@ProgramCode | string | 1 | The ProgramCode attribute can be used to indicate the program that is being passed. For instance, we could use it to pass: Frequent Guest, Frequent Traveller and Company ID. | |||||
@LevelCode | IOCodeString | 0..1 | Indicates special privileges in program assigned to individual. | |||||
@AccountStatus | IOCodeString | 0..1 | The account status. Refer to Open Travel Code List Profile Status (PST). |
| ||||
@PrimaryInd | boolean | 0..1 | When true, indicates this is the primary customer loyalty program and when false, indicates this is not the primary customer loyalty program. |
| ||||
IO_LoyaltyAccountInfoRQ | ReadRequests | User | 0..1 | Information of the logged-in user | ||||||
@UserName | IOCodeString | 0..1 | Name of the User | |||||
@Organisation | string | 0..1 | Name of the Group the user belongs to | |||||
@Department | string | 0..1 | Name of the Department from the User |
IO_LoyaltyAccountInfoRQ | ReadRequests
The ID will transfer the HotelID and needs to be agreed by the trading partners and remain the same throughout the messages.
IO_LoyaltyAccountInfoRQ | ReadRequests | |
---|
User | Email | string |
---|
0..1 |
---|
This field would be used to pass the guest’s Email. |
---|
IO_LoyaltyAccountInfoRQ | ReadRequests | User | UserID | 0..1 | This field would be used to pass the guest’s UserID |
---|
@ID |
string | 1 |
A unique identifying value assigned by the creating system. In the context of protel IO, this will be the unique hotel ID where the profile was created. |
@ID_Context | string | 1 | Used to identify the source of the identifier. For both outbound (from protel IO) and inbound (to protel IO) request messages, this must carry the string value |
@Type |
IOCodeString | 0..1 |
- 4 = Active
- 5 = Inactive
- true
- false
IO_LoyaltyAccountInfoRQ | ReadRequests | LoyaltyReadRequest | User
IO_LoyaltyAccountInfoRS - Attributes
A numeric reference to the type of object defined by the unique ID attribute. Refer to the OTA code lists: Unique ID Type (UIT) |
IO_LoyaltyAccountInfoRS
Element | @Attribute | Type | Num | Description inbound | Comments + Contents inbound | pAir | OnPrem | ||
---|---|---|---|---|---|---|---|---|
IO_LoyaltyAccountInfoRS | 1 | Root element of the message. | ||||||
@EchoToken | string | 0..1 | A reference for additional message identification, assigned by the requesting host system. When a request message includes an echo token the corresponding response message MUST include an echo token with an identical value. | |||||
@CorrelationID | string | 1 | Used to match result messages (*RS) to request messages (*RQ) in asynchronous communication patterns. Therefore mandatory. | |||||
@TimeStamp | dateTime | 1 | Time of the transaction. | "2019-06-05T09:12:14Z" | ||||
@Version | string | 0..1 | Message version. | Version="3.001" | ||||
@PrimaryLangID | string | 0..1 | The primary language preference for the message encoded as ISO 639-3. | |||||
IO_LoyaltyAccountInfoRS | Success | boolean | 0..1 | Returning an empty element of this type indicates the successful processing of the message. It could be combined with warning message/s if the message had issue/s. |
| ||||
IO_LoyaltyAccountInfoRS | Errors | Error | 0..1 | Indicates an error occurred during the processing of an OpenTravel message. If the message successfully processes, but there are business errors, those errors should be passed in the warning element. | ||||||
@ShortText | string | 0..1 | An abbreviated version of the error in textual format. | |||||
@Type | OTA_CodeType EWT | 0..1 | Mandatory. Refers to the OTA Code List: Error Warning Type (EWT). |
| ||||
@Code | OTA_CodeType ERR | 0..1 | Refers to the OTA Code List: Error Codes (ERR). |
| ||||
IO_LoyaltyAccountInfoRS | Errors | Error | Message | string | 0...1 | Description of the issue | |||||
IO_LoyaltyAccountInfoRS | Warnings | Warning | 0..1 | Used in conjunction with the Success element to define one or more business errors. | ||||||
@ShortText | string |
IO_LoyaltyAccountInfoRS
@EchoToken
0..1
A reference for additional message identification, assigned by the requesting host system. When a request message includes an echo token the corresponding response message MUST include an echo token with an identical value.
@CorrelationID
1
Used to match result messages (*RS) to request messages (*RQ) in asynchronous communication patterns. Therefore mandatory.
@TimeStamp
0..1
Time of the transaction.
@Version
0..1
Message version.
Version="3.001"
@PrimaryLangID
0..1
The primary language preference for the message encoded as ISO 639-3.
IO_LoyaltyAccountInfoRS | Success
IO_LoyaltyAccountInfoRS | Errors
An error that occurred during the processing of a message.
0..1 | An abbreviated version of the error in textual format. |
@Type | OTA_CodeType EWT | 0..1 |
Mandatory. Refers to the OTA Code List: Error Warning Type (EWT). |
| ||||
@Code | OTA_CodeType ERR |
0.. |
1 | Refers to the OTA Code List: Error Codes (ERR). |
|
IO_LoyaltyAccountInfoRS | Warnings | Warning | |
---|
Message | string | 0.. |
---|
.1 | Description of the issue |
---|
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | 0..1 |
---|
@HotelCode |
string | 0..1 |
Full name of the property which the transferred stay information belongs to. | |||
@HotelID |
string | 0..1 |
The ID will transfer the HotelID and needs to be agreed by the trading partners and remain the same throughout the messages. |
@HotelName | string |
0..1 | Full name of the property which the transferred stay information belongs to. |
@ChainCode | string | 0..1 | Full name of the property which the transferred stay information belongs to. |
The ID will transfer the HotelID and needs to be agreed by the trading partners and remain the same throughout the messages.
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | 1 | |||||
---|---|---|---|---|---|---|
@MemberCode | IOCodeString | 1 | The MemberCode attribute will indicate the actual number. |
LoyaltyReadResults | LoyaltyAccount
@ProgramCode
@ProgramCode | string | 1 | The ProgramCode attribute can be used to indicate the program that is being passed. For instance, we could use it to pass: Frequent Guest, Frequent Traveller and Company ID. | |||
@LevelCode | IOCodeString | 0..1 | Indicates special privileges in program assigned to individual. | |||
@AccountStatus | IOCodeString | 0..1 | OTA Code list PST |
- /** 1 */ MarkedForDeletion
- /** 2 */ Lapsed
- /** 3 */ Terminated
- /** 4 */ Active
- /** 5 */ Inactive
| ||||
@PrimaryInd | boolean |
0..1 | When true, indicates this is the primary customer loyalty program and when false, indicates this is not the primary customer loyalty program. |
| ||||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | CardHolderName | string | 0..1 | Name of the Membership card | |||
---|---|---|---|---|---|---|
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountBalance | 1 | The actual amount available, which can be used for redeeming the points | ||||
@Amount | decimal | 1 | Amount in Points | |||
@Type | string | 1 | Shortname of the Loyalty Program | |||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountBalance | CurrencyAmount | 0..1 | Amount in the default Currency | ||||
@ExchangeRate | decimal | 0..1 | Exchange Rate for the Loyalty Points | decimal |
Account... |
@Amount * ExchangeRate = CurrencyAmount@Amount | ||||||
@CurrencyCode | string | 1 | Currency Code, from the RQ | |||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountBalance | CurrencyAmount | Amount | decimal | 1 | Amount in the Currency Code, from the RQ | |||
---|---|---|---|---|---|---|
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountAccrued | 0..1 | Total amount, the collected points | ||||
@Amount | decimal | 1 | Amount in Points | |||
@Type | string | 1 | Shortname of the Loyalty Program | |||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountAccrued | CurrencyAmount | 0..1 | Amount in the default Currency | ||||
@ExchangeRate | decimal | 0..1 | Exchange Rate for the Loyalty Points | |||
@CurrencyCode | string | 0..1 | Currency Code, from the RQ | |||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountAccrued | CurrencyAmount | Amount | decimal | 1 | Amount in the Currency Code, from the RQ | |||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountRedeemed | 0..1 | Total amount of points redeemed | ||||
@Amount | decimal | 1 | Amount in Points | |||
@Type | string | 1 | Shortname of the Loyalty Program | |||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountRedeemed | CurrencyAmount | 0..1 | Amount in the default Currency | ||||
@ExchangeRate | decimal | 0..1 | Exchange Rate for the Loyalty Points | |||
@CurrencyCode | string | 0..1 | Currency Code, from the RQ | |||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountRedeemed | CurrencyAmount | Amount | decimal | 1 | Amount in the Currency Code, from the RQ | |||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | |
AccountChargeUpperLimit | 0..1 |
---|
Maximum amount of points usable for a single redemption (Account and Invoice) | |||
---|---|---|---|
@Amount |
decimal |
1 |
Amount in Points | |||
@Type |
string |
1 |
Shortname of the |
Loyalty Program |
@Department
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | |
---|
AccountChargeUpperLimit | CurrencyAmount | 0..1 |
---|
Amount in the default Currency |
---|
@ExchangeRate | decimal | 0..1 |
Exchange Rate for the Loyalty Points | ||||||
@CurrencyCode | string | 0..1 | Currency Code, from the RQ | |||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | |
---|
AccountChargeUpperLimit | CurrencyAmount | Amount | decimal | 1 | Amount in the Currency Code, from the RQ |
---|
@UserName
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountChargeLowerLimit | 0..1 | Minimum amount of points needed for a single redemption (Account and Invoice) |
---|
@Organisation
@Amount | decimal |
1 | Amount in Points | |||
@Type |
string |
1 | Shortname of the Loyalty Program |
@Occupation
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountChargeLowerLimit | |
---|
CurrencyAmount | 0..1 |
---|
Amount in the default Currency |
---|
@ExchangeRate | decimal | 0..1 |
Exchange Rate for the Loyalty Points |
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | UserModified | Email
@CurrencyCode | string | 0..1 | Currency Code, from the RQ |
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountChargeLowerLimit | |
---|
CurrencyAmount | |
---|
Amount | decimal | 1 | Amount in the Currency Code, from the RQ |
---|
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount |
---|
| |
---|
LoyaltyAccount | |
---|
UserCreated | 0..1 |
---|
Information of the logged-in user | |||
---|---|---|---|
@UserName |
Sample Message
IO_LoyaltyAccountInfoRQ
Codeblock | ||||
---|---|---|---|---|
| ||||
<IO_LoyaltyAccountInfoRQ xmlns="http://protel.io/soap" EchoToken="Laureen_Info_2" TimeStamp="2021-08-19T14:41:25Z" Version="1.000" CorrelationID="Laureen_Info_2">
<POS xmlns="http://www.opentravel.org/OTA/2003/05">
<Source>
<RequestorID Type="10" ID="2691" ID_Context="protelIO"/>
<BookingChannel Type="4" Primary="true"/>
<TPA_Extensions>
<px:POSExtensions xmlns:px="http://protel.io/htng/extensions">
<px:HotelInfo FiscalDate="2019-08-17"/>
</px:POSExtensions>
</TPA_Extensions>
</Source>
</POS>
<ReadRequests HotelCode="2691" HotelID="7" HotelName="JA Ocean View Hotel, UAE-Dubai" ChainCode="HC1">
<LoyaltyReadRequest CurrencyCode="AED" MemberCode="12898323" ProgramCode="GHA" LevelCode="Gold" AccountStatus="4" PrimaryInd="false" PrimaryIndSpecified="true">
<User UserName="HelloWorld" Organisation="Gruppe" Department="Department">
<Email>EMail@Email</Email>
<UserID>12312</UserID>
</User>
</LoyaltyReadRequest>
</ReadRequests>
</IO_LoyaltyAccountInfoRQ> |
IO_LoyaltyAccountInfoRS
language | xml |
---|---|
collapse | true |
IOCodeString | 0..1 | Name of the User | ||||||
@Organisation | string | 0..1 | Name of the Group the user belongs to | |||||
@Department | string | 0..1 | Name of the Department from the User | |||||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | LoyaltyAccount | UserCreated | Email | string | 0..1 | This field would be used to pass the guest’s Email. | |||||
---|---|---|---|---|---|---|---|---|
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | LoyaltyAccount | UserCreated | UserID | 0..1 | This field would be used to pass the guest’s UserID | ||||||
@Type | IOCodeString | 1 | A reference to the type of object defined by the UniqueID element. Refer to OpenTravel Code List Unique ID Type (UIT) |
| ||||
@ID | string | 1 | The unique profile ID from the PMS. | |||||
@ID_Context | string | 1 | Used to identify the source of the ID. For inbound (to protelIO) requests, this will carry a string value identifying the protel I/O Integration Partner. | “protelIO" | ||||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | UserModified | 0..1 | |||||||
@UserName | IOCodeString | 0..1 | ||||||
@Organisation | string | 0..1 | ||||||
@Department | string | 0..1 | ||||||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | UserModified | Email | string | 0..1 | This field would be used to pass the guest’s Email. | |||||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | UserModified | UserID | 0..1 | This field would be used to pass the guest’s UserID | ||||||
@Type | IOCodeString | 1 | A reference to the type of object defined by the UniqueID element. Refer to OpenTravel Code List Unique ID Type (UIT) |
| ||||
@ID | string | 1 | The unique profile ID from the PMS. | |||||
@ID_Context | string | 1 | Used to identify the source of the ID. For inbound (to protelIO) requests, this will carry a string value identifying the protel I/O Integration Partner. | “protelIO" |