Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Inhalt


Target audienceCRM
Version13.0.
AuthenticationBearer Token
Message typeSynchronous
DirectionAsynchronous, Outbound


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


Image Added


Message Attributes

IO_LoyaltyAccountInfoRQ

IO_LoyaltyAccountInfoRQ - Attributes

Element | @Attribute

Type

Num

Description outbound

Comments + Contents outbound

pAir

OnPrem

IO_LoyaltyAccountInfoRQ


1Root element of the message.


(Fehler)(Haken)

@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.


(Fehler)(Haken)

@CorrelationID

string

1

Used to match result messages (*RS) to request messages (*RQ) in asynchronous communication patterns. Therefore mandatory.


(Fehler)(Haken)

@TimeStamp

0..
dateTime

1

Time of the transaction.

"2019-06-05T09:12:14Z"(Fehler)(Haken)

@Version

string

0..1

Message version.

Version="3.001"

(Fehler)(Haken)

@PrimaryLangID

string

0..1

The primary language preference for the message encoded as ISO 639-3.


(Fehler)(Haken)

IO_LoyaltyAccountInfoRQ | ReadRequests


0..1

(Fehler)(Haken)
@HotelCodestring0..1Full name of the property which the transferred stay information belongs to.
(Fehler)(Haken)
@HotelIDstring0..1

The ID will transfer the HotelID and needs to be agreed by the trading partners and remain the

same throughout

same throughout the messages.


(Fehler)(Haken)
@HotelNamestring0..1Full name of the property which the transferred stay information belongs to.


(Fehler)(Haken)
@ChainCodestring0..1Full name of the property which the transferred stay information belongs to.
(Fehler)(Haken)

IO_LoyaltyAccountInfoRQ  | ReadRequests | LoyaltyReadRequest


1..nLoyalty Information
(Fehler)(Haken)
@CurrencyCodeIOCodeString0..1
An ISO 4217 (3) alpha character code that specifies a monetary unit.
Default Hotel Currency Code
(Fehler)(Haken)
(Fehler)
@MemberCodeIOCodeString1The MemberCode attribute will indicate the actual member number.
(Fehler)(Haken)

@ProgramCode

string1The 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.
(Fehler)(Haken)
@LevelCodeIOCodeString0..1Indicates special privileges in program assigned to individual.
(Fehler)(Haken)
@AccountStatusIOCodeString0..1The account status. Refer to Open Travel Code List Profile Status (PST).
  • 4 = Active
  • 5 = Inactive
(Fehler)


HTML
<a href="https://confluence.protel.net/pages/viewpage.action?pageId=117818434" target="_blank">Profile Status (PST)</a>


(Fehler)(Haken)
@PrimaryIndboolean
@PrimaryInd
0..1When true, indicates this is the primary customer loyalty program and when false, indicates this is not the primary customer loyalty program.
  • true
  • false
(Fehler)(Haken)

IO_LoyaltyAccountInfoRQ  | ReadRequests |

 User

User


0..1Information of the logged-in user
(Fehler)(Haken)
@UserNameIOCodeString0..1Name of the User
(Fehler)(Haken)
@Organisationstring0..1Name of the Group the user belongs to
(Fehler)(Haken)
@Departmentstring0..1Name of the Department from the User
(Fehler)(Haken)
IO_LoyaltyAccountInfoRQ  | ReadRequests | User | Emailstring0..1This field would be used to pass the guest’s Email.
(Fehler)(Haken)
IO_LoyaltyAccountInfoRQ  | ReadRequests | User | UserID
0..1This field would be used to pass the guest’s UserID
(Fehler)(Haken)
@IDstring1A 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.


(Fehler)(Haken)
@ID_
LoyaltyAccountInfoRS - Attributes
Contextstring1

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


(Fehler)(Haken)
@TypeIOCodeString0..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)


(Fehler)(Haken)

IO_LoyaltyAccountInfoRS

Element | @Attribute

Type

Num

Description

outbound

inbound

Comments + Contents

outbound

inbound

pAir

OnPrem

IO_LoyaltyAccountInfoRS


1Root element of the message.


(Fehler)(Haken)

@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.


(Fehler)(Haken)

@CorrelationID

string

1

Used to match result messages (*RS) to request messages (*RQ) in asynchronous communication patterns. Therefore mandatory.


(Fehler)(Haken)

@TimeStamp

dateTime
0..

1

Time of the transaction.

"2019-06-05T09:12:14Z"(Fehler)(Haken)

@Version

string

0..1

Message version.

Version="3.001"

(Fehler)(Haken)

@PrimaryLangID

string

0..1

The primary language preference for the message encoded as ISO 639-3.


(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | Success

boolean0..1Returning 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.
  • true
  • false
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | Errors | Error


0..1Indicates 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.
(Fehler)
Errors | Error0..1

An error that occurred during the processing of a message.

(Fehler)
(Haken)
@ShortTextstring
@ShortText
0..1An abbreviated version of the error in textual format.
(Fehler)
@Code
(Haken)

@Type 

OTA_CodeType EWT

0..1

If present, this refers to a table of coded values exchanged between applications to identify errors or warnings. Refer

Mandatory. Refers to the OTA Code List:

Error Codes (ERR

 Error Warning Type (EWT).


HTML
<a href="https://confluence.protel.net/pages/viewpage.action?pageId=117810188" target="_blank">Error Warning Type (EWT)</a>


(Fehler)
(Haken)

@Code 

OTA_CodeType ERR
@Type

0..

1

Mandatory. Refer to OTA Code

Refers to the OTA Code List: Error

Warning Type

Codes (

EWT

ERR). 


HTML
<a href="https://confluence.protel.net/pages/viewpage.action?pageId=117810191" target="_blank">Error Codes (ERR)</a>


(Fehler)(Haken)
IO_LoyaltyAccountInfoRS |
Warnings
Errors | Error | Messagestring0...1
Used in conjunction with the Success element to define one or more business errors.
Description of the issue
(Fehler)
Warnings 
(Haken)

IO_LoyaltyAccountInfoRS | Warnings | Warning


0..1Used
when a message has been successfully processed to report any warnings or business errors that occurred
in conjunction with the Success element to define one or more business errors.
(Fehler)(Haken)
@ShortTextstring0..1An abbreviated version of the error in textual format.
(Fehler)
@Code
(Haken)

@Type 

OTA_CodeType EWT

0..1

If present, this refers to a table of coded values exchanged between applications to identify errors or warnings. Refer

Mandatory. Refers to the OTA Code List:

Error Codes (ERR).

 Error Warning Type (EWT).


HTML
<a href="https://confluence.protel.net/pages/viewpage.action?pageId=117810188" target="_blank">Error Warning Type (EWT)</a>


(Fehler)(Haken)

@Code 

OTA_CodeType ERR
(Fehler)@Type

0..

1

Mandatory. Refer to OTA Code List: Error Warning Type (EWT).(Fehler)

Refers to the OTA Code List: Error Codes (ERR). 


HTML
<a href="https://confluence.protel.net/pages/viewpage.action?pageId=117810191" target="_blank">Error Codes (ERR)</a>


(Fehler)(Haken)
IO_LoyaltyAccountInfoRS | Warnings | Warning |  Messagestring0...1Description of the issue
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults


0..1

(Fehler)(Haken)
@HotelCodestring0..1Full name of the property which the transferred stay information belongs to.
(Fehler)(Haken)
@HotelIDstring0..1

The ID will transfer the HotelID and needs to be agreed by the trading partners and remain the same throughout the messages.


(Fehler)(Haken)
@HotelNamestring0..1Full name of the property which the transferred stay information belongs to.
(Fehler)(Haken)
@ChainCodestring0..1Full name of the property which the transferred stay information belongs to.
(Fehler)
LoyaltyReadResults
(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount


1

(Fehler)(Haken)
@MemberCodeIOCodeString1The MemberCode attribute will indicate the actual number.
(Fehler)(Haken)

@ProgramCode

string1The 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.
(Fehler)(Haken)
@LevelCodeIOCodeString0..1Indicates special privileges in program assigned to individual.
(Fehler)(Haken)
@AccountStatusIOCodeString0..1OTA Code list PST


HTML
<a href="https://confluence.protel.net/pages/viewpage.action?pageId=117818434" target="_blank">Profile Status (PST)</a>


(Fehler)(Haken)
@PrimaryIndboolean0..1When true, indicates this is the primary customer loyalty program and when false, indicates this is not the primary customer loyalty program.
  • true
  • false
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | CardHolderName

string0..1Name of the Membership card
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountBalance


1
Actual
The actual amount available, which can be used for redeeming the points
(Fehler)(Haken)

@Amount

decimal1Amount in Points
(Fehler)(Haken)
@Typestring1Shortname of the Loyalty Program
(Fehler)
AccountBalance
(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountBalance | CurrencyAmount


0..1Amount in the default Currency
(Fehler)(Haken)
@ExchangeRatedecimal0..1Exchange Rate for the Loyalty Points

decimal


Account...@Amount * ExchangeRate = CurrencyAmount@Amount 

(Fehler)(Haken)

@CurrencyCode

string1Currency Code, from the RQ
(Fehler)
CurrencyAmount
(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountBalance | CurrencyAmount | Amount

decimal1Amount in the Currency Code, from the RQ
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountAccrued


0..1Total amount, the collected points
(Fehler)(Haken)

@Amount

decimal1Amount in Points
(Fehler)(Haken)

@Type

string1Shortname of the Loyalty Program
(Fehler)
AccountAccrued
(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountAccrued | CurrencyAmount


0..1Amount in the default Currency
(Fehler)(Haken)

@ExchangeRate

decimal0..1Exchange Rate for the Loyalty Points
(Fehler)(Haken)

@CurrencyCode

string0..1Currency Code, from the RQ
(Fehler)
CurrencyAmount
(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountAccrued | CurrencyAmount | Amount

decimal1Amount in the Currency Code, from the RQ
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountRedeemed


0..1Total amount of points redeemed
(Fehler)(Haken)

@Amount

decimal1Amount in Points
(Fehler)(Haken)

@Type

string1Shortname of the Loyalty Program
(Fehler)
AccountAccrued
(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountRedeemed | CurrencyAmount


0..1Amount in the default Currency
(Fehler)(Haken)

@ExchangeRate

decimal0..1Exchange Rate for the Loyalty Points
(Fehler)(Haken)

@CurrencyCode

string0..1Currency Code, from the RQ
(Fehler)
(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountRedeemed | CurrencyAmount

CurrencyAmount

| Amount

decimal1Amount in the Currency Code, from the RQ
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount |

 UserCreated

 AccountChargeUpperLimit


0..1
Information of the logged-in user(Fehler)
Maximum amount of points usable for a single redemption (Account and Invoice) 
(Fehler)(Haken)

@Amount

decimal1Amount in Points
(Fehler)(Haken)

@Type

string1Shortname of the Loyalty Program
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountChargeUpperLimit | CurrencyAmount


0..1Amount in the default Currency
(Fehler)(Haken)

@ExchangeRate

decimal
@UserName
0..1
Name of the User
Exchange Rate for the Loyalty Points
(Fehler)
@Organisation
(Haken)

@CurrencyCode

string0..1
Name of the Group the user belongs to(Fehler)@Department0..1Name of the Department from the User(Fehler)
Currency Code, from the RQ
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountChargeUpperLimit | CurrencyAmount | Amount

decimal1Amount in the Currency Code, from the RQ
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountChargeLowerLimit  


0..1Minimum amount of points needed for a single redemption (Account and Invoice)
(Fehler)(Haken)

@Amount

decimal1Amount in Points
(Fehler)(Haken)

@Type

string1Shortname of the Loyalty Program
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountChargeLowerLimit  | CurrencyAmount

UserCreated | Email


0..1
This field would be used to pass the guest’s Email.(Fehler)
Amount in the default Currency
(Fehler)(Haken)

@ExchangeRate

decimal0..1Exchange Rate for the Loyalty Points
(Fehler)(Haken)

@CurrencyCode

string
UserCreated  | UserID
0..1
This field would be used to pass the guest’s UserID(Fehler)
Currency Code, from the RQ
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | AccountChargeLowerLimit  | CurrencyAmount | Amount

decimal1Amount in the Currency Code, from the RQ
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | LoyaltyAccount | UserCreated

LoyaltyAccount | UserModified


0..1Information of the logged-in user
(Fehler)(Haken)

@UserName

IOCodeString0..1Name of the User
(Fehler)(Haken)

@Organisation

string0..1Name of the Group the user belongs to
(Fehler)(Haken)

@Department

string0..1Name of the Department from the User
(Fehler)
UserModified 
(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | LoyaltyAccount | UserCreated | Email

string0..1This field would be used to pass the guest’s Email.
(Fehler)
UserModified | Phone0..1This field would be used to pass the guest’s Phone(Fehler)
(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | LoyaltyAccount | UserCreated 

UserModified

| UserID


0..1This field would be used to pass the guest’s UserID
(Fehler)

Sample Message

IO_LoyaltyAccountInfoRQ

Codeblock
languagexml
collapsetrue
<p:IO_LoyaltyAccountInfoRQ xmlns:p="http://protel.io/soap" CorrelationID="TRIGGER#000500#UPDATE#000420#1613999060824#E564" Version="1.0" TimeStamp="2021-02-22T13:04:20Z" EchoToken="TRIGGER#000500#UPDATE#000420#1613999060824#E564" PrimaryLangID="en" Target="Test" TargetName="Test">
	<p:ReadRequests HotelCode="2535" HotelID="500" HotelName="DEV 2535" ChainCode="n/a">
		<p:LoyaltyReadRequest CurrencyCode="CZK" MemberCode="2345754635123" ProgramCode="Lounge Coders Club" LevelCode="HighRoller" AccountStatus="4" PrimaryInd="true">
			<p:EffectiveDateBefore>2019-07-04</p:EffectiveDateBefore>
			<p:ExpireDateAfter>2019-07-04</p:ExpireDateAfter>
		</p:LoyaltyReadRequest>
		<p:User UserName="johnD" Organisation="Hotel 2535" Department="dev.protel.net" Occupation="">
			<p:FirstName>John</p:FirstName>
			<p:LastName>Dev</p:LastName>
			<p:Email>jdev@protel.net</p:Email>
		</p:User>
	</p:ReadRequests>
</p:IO_LoyaltyAccountInfoRQ>

IO_LoyaltyAccountInfoRS

Codeblock
languagexml
collapsetrue
<p:IO_LoyaltyAccountInfoRS xmlns:p="http://protel.io/soap" CorrelationID="TRIGGER#000500#UPDATE#000420#1613999060824#E564" Version="1.0" TimeStamp="2021-02-22T13:07:02Z"> <p:Success>true</p:Success> <p:LoyaltyReadResults HotelCode="2535" HotelName="DEV 2535" ChainCode="n/a" ChainName="n/a"> <p:LoyaltyAccount MemberCode="2345754635123" ProgramCode="Lounge Coders Club" LevelCode="HighRoller" AccountStatus="4" PrimaryInd="true"> <p:CardHolderName>Oneoone K. Board</p:CardHolderName> <p:AccountBalance Amount="0" Type="L$C"> <p:CurrencyAmount CurrencyCode="CZK" ExchangeRate="1"> <p:Amount>0</p:Amount> </p:CurrencyAmount> </p:AccountBalance> <p:AccountAccrued Amount="0" Type="L$C"> <p:CurrencyAmount CurrencyCode="CZK" ExchangeRate="1"> <p:Amount>0</p:Amount> </p:CurrencyAmount> </p:AccountAccrued> <p:AccountRedeemed Amount="0" Type="L$C"> <p:CurrencyAmount CurrencyCode="CZK" ExchangeRate="1"> <p:Amount>0</p:Amount> </p:CurrencyAmount> </p:AccountRedeemed> <p:UserCreated UserName="johnD" Organisation="Hotel 2535" Department="dev.protel.net" Occupation=""> <p:FirstName>John</p:FirstName> <p:LastName>Dev</p:LastName> <p:Email>jdev@protel
(Haken)

@Type

IOCodeString

1

A reference to the type of object defined by the UniqueID element. Refer to OpenTravel Code List Unique ID Type (UIT)


HTML
<a href="https://confluence.protel.net/pages/viewpage.action?pageId=117810178" target="_blank">Unique ID Type (UIT)</a>


(Fehler)(Haken)

@ID

string

1

The unique profile ID from the PMS.


(Fehler)(Haken)

@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"(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | UserModified


0..1

(Fehler)(Haken)

@UserName

IOCodeString0..1

(Fehler)(Haken)

@Organisation

string0..1

(Fehler)(Haken)

@Department

string0..1

(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | UserModified | Email

string0..1This field would be used to pass the guest’s Email.
(Fehler)(Haken)

IO_LoyaltyAccountInfoRS | LoyaltyReadResults | LoyaltyAccount | UserModified | UserID


0..1This field would be used to pass the guest’s UserID
(Fehler)(Haken)

@Type

IOCodeString

1

A reference to the type of object defined by the UniqueID element. Refer to OpenTravel Code List Unique ID Type (UIT)


HTML
<a href="https://confluence.protel.net/pages/viewpage.action?pageId=117810178" target="_blank">Unique ID Type (UIT)</a>


(Fehler)(Haken)

@ID

string

1

The unique profile ID from the PMS.


(Fehler)(Haken)

@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"(Fehler)(Haken)
.net</p:Email> </p:UserCreated> <p:UserModified UserName="johnD" Organisation="Hotel 2535" Department="dev.protel.net" Occupation=""> <p:FirstName>John</p:FirstName> <p:LastName>Dev</p:LastName> <p:Email>jdev@protel.net</p:Email> </p:UserModified> </p:LoyaltyAccount> </p:LoyaltyReadResults> </p:IO_LoyaltyAccountInfoRS>