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
IO_LoyaltyAccountInfoRQ - Attributes
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_LoyaltyAccountInfoRQ | ReadRequests | 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. | |||
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). |
- 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_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 |
| 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 | 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
- AttributesElement | @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. |
An error that occurred during the processing of a message.
@ShortText | string |
0..1 | An abbreviated version of the error in textual format. |
IO_LoyaltyAccountInfoRS | Warnings
@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 | 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). |
|
IO_LoyaltyAccountInfoRS | LoyaltyReadResults
@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. |
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount
@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. |
- /** 1 */ MarkedForDeletion
- /** 2 */ Lapsed
- /** 3 */ Terminated
- /** 4 */ Active
- /** 5 */ Inactive
- true
- false
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | CardHolderName
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountBalance
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | 1 | |||||||
---|---|---|---|---|---|---|---|---|
@MemberCode | IOCodeString | 1 | The MemberCode attribute will indicate the actual 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 | OTA Code list 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. |
|
@Amount
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | |
---|
CardHolderName | string | 0..1 |
---|
Name of the Membership card |
---|
decimal
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 |
@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 |
@Type
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 |
@Type
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | |
---|
AccountRedeemed | CurrencyAmount |
---|
| Amount | decimal |
---|
1 | Amount in |
---|
@ExchangeRate
the |
---|
@CurrencyCode
Currency Code, from the RQ | |||
---|---|---|---|
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountChargeUpperLimit |
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountChargeLowerLimit
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 | |||
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 | |||
---|---|---|---|---|---|---|
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | |
AccountChargeLowerLimit | 0..1 |
---|
Minimum amount of points needed for a single redemption (Account and Invoice) | |||
---|---|---|---|
@Amount |
decimal |
1 |
Amount in Points |
@Organisation
@Department
@Type | string | 1 | Shortname of the Loyalty Program | |||
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
@CurrencyCode | string | 0..1 | Currency Code, from the RQ |
@UserName
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 |
---|
@Department
@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_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount |
---|
| LoyaltyAccount | |
---|
UserCreated | |
---|
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 |
---|
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | UserModified | Email
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | UserModified | Phone
@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 |
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
string | 0..1 | |||||
@Department | string | 0..1 | ||||
IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | UserModified | Email | string |
---|
0..1 |
---|
A numeric reference to the type of object defined by the unique ID attribute. Refer to the OTA code lists: Unique ID Type (UIT)
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 |
Sample Message
IO_LoyaltyAccountInfoRQ
Codeblock | ||||
---|---|---|---|---|
| ||||
<?xml version="1.0" encoding="UTF-8"?>
<IO_LoyaltyAccountInfoRQ xmlns="http://protel.io/soap" EchoToken="12345" TimeStamp="2021-09-16T06:29:58Z" Version="1.000" CorrelationID="Laureen_Info_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://protel.io/soap file:///C:/Users/ljacke/Desktop/xmlbinding-develop@0e346006532/io-binding/src/main/xsd/Loyalty.xsd">
<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"/>
<User UserName="HelloWorld" Organisation="Gruppe" Department="Department">
<Email>EMail@Email</Email>
<UserID ID="12315" ID_Context="protelID"/>
</User>
</ReadRequests>
</IO_LoyaltyAccountInfoRQ> |
IO_LoyaltyAccountInfoRS
Success
Codeblock | ||||
---|---|---|---|---|
| ||||
<IO_LoyaltyAccountInfoRS xmlns="http://protel.io/soap" CorrelationID="Laureen_Info_5" Version="1.0" TimeStamp="2021-09-16T06:29:58">
<Success>true</Success>
<LoyaltyReadResults HotelCode="2691" HotelName="JA Ocean View Hotel, UAE-Dubai" ChainCode="HC1">
<LoyaltyAccount MemberCode="12898323" ProgramCode="GHA" LevelCode="Gold" AccountStatus="4" PrimaryInd="false">
<CardHolderName>Gary</CardHolderName>
<AccountBalance Amount="940.0" Type="D$">
<CurrencyAmount CurrencyCode="AED" ExchangeRate="0.27224218664924316">
<Amount>3452.808</Amount>
</CurrencyAmount>
</AccountBalance>
<AccountAccrued Amount="4893.0" Type="D$">
<CurrencyAmount CurrencyCode="AED" ExchangeRate="0.27224218664924316">
<Amount>17972.96760000000</Amount>
</CurrencyAmount>
</AccountAccrued>
<AccountRedeemed Amount="3000.0" Type="D$">
<CurrencyAmount CurrencyCode="AED" ExchangeRate="0.27224218664924316">
<Amount>11019.600000000000</Amount>
</CurrencyAmount>
</AccountRedeemed>
<AccountChargeLowerLimit Amount="10" Type="D$">
<CurrencyAmount CurrencyCode="AED" ExchangeRate="0.27224218664924316">
<Amount>36.732</Amount>
</CurrencyAmount>
</AccountChargeLowerLimit>
<AccountChargeUpperLimit Amount="940.0" Type="D$">
<CurrencyAmount CurrencyCode="AED" ExchangeRate="0.27224218664924316">
<Amount>3452.808</Amount>
</CurrencyAmount>
</AccountChargeUpperLimit>
</LoyaltyAccount>
</LoyaltyReadResults>
</IO_LoyaltyAccountInfoRS> |
Error
language | xml |
---|---|
collapse | true |
@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" |