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
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
- AttributesElement | @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 | 0..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). |
|
| ||||||
@PrimaryInd | boolean | 0..1 | When true, indicates this is the | @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 | 0..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. |
| |||||||
IOIO_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 | 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 | 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 | 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. | ||||||||
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. |
| |||||||
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 | ||||||||
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 | ||||||||
@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 | ||||||||
@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 | 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" |