<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.zillionrewards.in/lmsglobal/ws/v1/extint" xmlns:extint="http://www.zillionrewards.in/lmsglobal/ws/v1/extint/types" name="Extint" targetNamespace="http://www.zillionrewards.in/lmsglobal/ws/v1/extint" xmlns="http://schemas.xmlsoap.org/wsdl/">
  <types>
    <xsd:schema xmlns:types="http://www.zillionrewards.in/lmsglobal/xsd/v1/types" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.zillionrewards.in/lmsglobal/xsd/v1/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <xsd:complexType name="AuthenticationType">
        <xsd:annotation>
          <xsd:documentation>
						This data type is used to transfer an authentication
						request to the system. It contains a Principal which is
						automatically mapped to system internal alias
						identifiers and a Credential. In special cases, the
						Credential may be left empty when authentication was
						already done via another way, e.g. manually (trusted by
						partner). In case of conversational WebService usage,
						the Credential may be replaced by a valid conversation
						identifier.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="Principal" type="types:PrincipalType">
            <xsd:annotation>
              <xsd:documentation>
								Principal of the member who wants to access a
								WebService method.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="Credential" type="types:CredentialType">
            <xsd:annotation>
              <xsd:documentation>
								Credential of the member who wants to access a
								WebService method.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="ConversationId" type="types:ConversationIdType">
            <xsd:annotation>
              <xsd:documentation>
								Valid conversation id for a WebService based
								workflow. When a conversation id is provided, no
								credential is necessary. The backend system
								checks the validity of conversation id.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="PrincipalType">
        <xsd:annotation>
          <xsd:documentation>
						This data type is used to transfer information about a
						principal. It consists of a principal identifier and a
						classifier that categorizes the principal type.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="PrincipalValue" type="types:PrincipalValueType">
            <xsd:annotation>
              <xsd:documentation>
								The value to use as Principal (e.g. card number
								4235 2345 5499 12).
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="PrincipalClassifier" type="types:PrincipalClassifierType">
            <xsd:annotation>
              <xsd:documentation>
								The 'type' of the given Principal value (e.g. 1,
								which means that the given value must be
								interpreted as a card number and not as a EAN or
								phone number)
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="PrincipalValueType">
        <xsd:annotation>
          <xsd:documentation>
						String-based value of the Principal that is passed for
						authentication.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:pattern value="[0-9]{16}|[0-9]{10}" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="PrincipalClassifierType">
        <xsd:annotation>
          <xsd:documentation>
						Classification of the given Principal value. It allows
						the backend to understand whether the
						PrincipalIdentifier has to be parsed as a card number, a
						EAN, a phone number, an email address etc.

						Currently we allow either 16-digit PAYBACK card number
						OR 10 digit mobile number (if mobile is linked with PAYBACK card)
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:integer">
          <xsd:whiteSpace value="collapse" />
          <xsd:minInclusive value="1" />
          <xsd:maxInclusive value="9999" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="CredentialType">
        <xsd:annotation>
          <xsd:documentation>
						PIN
						OR
						date of birth (6 digit - YYMMDD OR 4 digit - DDMM) if member has no
						PIN, needed to authenticate the given Principal.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:maxLength value="255" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="ConversationIdType">
        <xsd:annotation>
          <xsd:documentation>
						Unique identifier of a WebService conversation used in
						order to support workflows. Timeout-based for temporary
						use.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:maxLength value="100" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="LoyaltyCurrencyType">
        <xsd:annotation>
          <xsd:documentation>
						Unit of measurement of loyalty currency.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:pattern value="[a-zA-Z0-9]*" />
          <xsd:minLength value="3" />
          <xsd:maxLength value="3" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="StitchAssociationFaultResponse">
        <xsd:annotation>
          <xsd:documentation>
						Standard response base type with fault message object
						Fault data sent for the StitchAssociation service call

						LMS_00001=Invalid request, Request XML validation failed
						LMS_00002=Unknown failure, please contact PAYBACK support
						LMS_00003=Member not found
						LMS_00005=Member is disabled; please ask member to contact PAYBACK customer care
						LMS_00006=Invalid request, PartnerShortName or
						BusinessUnitShortName is invalid
						LMS_00012=Wrong communication protocol used. The protocol should be either HTTP
						or HTTPS. Please check with PAYBACK if both HTTP and HTTPS are
						allowed.
						LMS_00013=Invalid request, PrincipalClassifier is invalid
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="StitchAssociationFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="AccountBalanceDetailsType">
        <xsd:annotation>
          <xsd:documentation>
						Type used to transfer detailed information about an
						account balance. It comprises not only absolute points
						in loyalty currency but also information about available
						points and expired points.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="LoyaltyCurrency" type="types:LoyaltyCurrencyType">
            <xsd:annotation>
              <xsd:documentation>
								The loyalty currency of all amounts in this
								account balance record.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="TotalPointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
								The total amount of points in this account.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="AvailablePointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
								The amount of available points in this account.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="BlockedPointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
								The amount of blocked points in this account.(Total blocked earns)
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="ExpiryAnnouncement" type="types:ExpiryAnnouncementType">
            <xsd:annotation>
              <xsd:documentation>
								An optional announcement to warn the member that
								some of his points will expire soon.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="ExpiryStatistics" type="types:ExpiryStatisticsType">
            <xsd:annotation>
              <xsd:documentation>
								An optional statistics information to inform the
								member how many point already expired.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="LoyaltyAmountType">
        <xsd:annotation>
          <xsd:documentation>
						Amount of points in a certain loyalty currency.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:decimal">
          <xsd:totalDigits value="21" />
          <xsd:fractionDigits value="3" />
          <xsd:minInclusive value="0.000" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="ExpiryAnnouncementType">
        <xsd:annotation>
          <xsd:documentation>
						Announcement that a certain amount of points will expire
						soon.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="PointsToExpireAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
								The amount of points that will expire soon.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="NextExpiryDate" type="types:ExpiryDateType">
            <xsd:annotation>
              <xsd:documentation>
								The expected date of expiration.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="ExpiryStatisticsType">
        <xsd:annotation>
          <xsd:documentation>
						Statistics of point that already in expired in the past.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="ExpiredPointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
								The number of points that already expired since
								a certain point in the past.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="ExpiredSinceDate" type="types:ExpiryDateType">
            <xsd:annotation>
              <xsd:documentation>
								The begin of the expiration interval that was
								taken into account.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="ExpiryDateType">
        <xsd:annotation>
          <xsd:documentation>
						Type to describe expiry dates (targeted precision and
						format is YYYY-MM-DD).
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:date" />
      </xsd:simpleType>
      <xsd:complexType name="VoucherRedemptionFaultResponse">
        <xsd:annotation>
          <xsd:documentation>
						Fault data sent for the createVoucherRedemption service call

						LMS_00001=Invalid request, Request XML validation failed
						LMS_00002=Unknown failure, please contact PAYBACK support
						LMS_00003=Member not found
						LMS_00004=Member not registered, please request member to register
						LMS_00005=Member is disabled; please ask member to contact PAYBACK
						customer care
						LMS_00006=Invalid request, PartnerShortName or BusinessUnitShortName is invalid
						LMS_00007=Burning of points is not allowed for the partner. Please
						contact PAYBACK support
						LMS_00008=Invalid request, ChannelClassifier is invalid
						LMS_00009=Insufficient points
						LMS_00010=Invalid request, RedemptionDateTime has wrong format
						LMS_00011=Points requested to burn is too less. Try higher value.
						LMS_00012=Wrong communication protocol used. The protocol should be either HTTP
						or HTTPS. Please check with PAYBACK if both HTTP and HTTPS are
						allowed.
						LMS_00013=Invalid request, PrincipalClassifier is invalid
						LMS_00014=Invalid request, LoyaltyCurrency is invalid
						LMS_00015=Unknown terminal, please contact PAYBACK support.
						LMS_00016=Member account expired
						LMS_00017=Member authentication failed, Credential is invalid.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="CreateVoucherRedemptionFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="GetAccountBalanceFaultResponse">
        <xsd:annotation>
          <xsd:documentation>
						Standard response base type with fault message object.

						Fault data sent for the GetAccountBalance service call

						LMS_00001=Invalid request, XML validation failed
						LMS_00002=Unknown failure, please contact PAYBACK support
						LMS_00003=Member not found
						LMS_00012=Wrong communication protocol used. The protocol should be either HTTP
						or HTTPS. Please check with PAYBACK if both HTTP and HTTPS are
						allowed.
						LMS_00013=Invalid request, PrincipalClassifier is invalid
						LMS_00014=Invalid request, LoyaltyCurrency is invalid
						LMS_00016=Member account expired
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="GetAccountBalanceFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="IsMobileLinkedFaultResponse">
        <xsd:annotation>
          <xsd:documentation>
						Standard response base type with fault message object.

						Fault data sent for the IsMobileLinked service call

						LMS_00001=Invalid request, XML validation failed
						LMS_00002=Unknown failure, please contact PAYBACK support
						LMS_00012=Wrong communication protocol used. The protocol should be either HTTP
						or HTTPS. Please check with PAYBACK if both HTTP and HTTPS are
						allowed.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="IsMobileLinkedFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="GenerateOTPFaultResponse">
        <xsd:annotation>
          <xsd:documentation>
						Standard response base type with fault message object.

						Fault data sent for the IsMobileLinked service call

						LMS_00001=Invalid request, XML validation failed
						LMS_00002=Unknown failure, please contact PAYBACK support
						LMS_00012=Wrong communication protocol used. The protocol should be either HTTP
						or HTTPS. Please check with PAYBACK if both HTTP and HTTPS are
						allowed.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="GenerateOTPFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="EnforcePinStatusFaultResponse">
        <xsd:annotation>
          <xsd:documentation>
						Standard response base type with fault message object

						Fault data sent for the EnforcePinStatus service call

						LMS_00001=Invalid request, XML validation failed
						LMS_00002=Unknown failure, please contact PAYBACK support
						LMS_00003=Member not found, Either loyalty card no is not valid OR mobile not
						linked OR member/Card state is not valid
						LMS_00012=Wrong communication protocol used. The protocol should be either HTTP
						or HTTPS. Please check with PAYBACK if both HTTP and HTTPS are
						allowed.
						LMS_00013=Invalid request, PrincipalClassifier is invalid
						LMS_00018=Both Email and linked mobile not available to send PIN details, please
						contact Call center to update profile information.
						LMS_00019=PIN generation failed, please contact call center. Member is dummy OR
						DOB not updated(DOB is default)
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="EnforcePinStatusFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="VerifyMembershipFaultResponse">
        <xsd:annotation>
          <xsd:documentation>
						Standard response base type with fault message object
						Fault data sent for the VerifyMembership service call

						LMS_00001=Invalid request, Request XML validation failed
						LMS_00002=Unknown failure, please contact PAYBACK support
						LMS_00003=Member not found
						LMS_00005=Member is disabled; please ask member to contact PAYBACK customer care
						LMS_00006=Invalid request, PartnerShortName or
						BusinessUnitShortName is invalid
						LMS_00012=Wrong communication protocol used. The protocol should be either HTTP
						or HTTPS. Please check with PAYBACK if both HTTP and HTTPS are
						allowed.
						LMS_00013=Invalid request, PrincipalClassifier is invalid
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="VerifyMembershipFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="FaultDescriptorType">
        <xsd:annotation>
          <xsd:documentation>
						Basic type used as an 'exception' that is thrown by a WebMethodin case
						of errors when it
						was not possible to achieve thedesired result resp. to create the
						desired
						return value.In the majority of cases it can be assumed, that the
						underlying business transaction was rolled back when a Fault is
						thrown and
						therefore no change was made in the database.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Code" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
								Error code used in the fault message to precisely identify the type
								of interal
								exception/error that occurred during processing of the WebService
								request. In most cases, this is an error code generated by a
								business logic component and can be interpreted in its context.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="Message" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
								Error message used in the fault message to give a humans a readable
								and interpretable
								indication concerning what went wrong during processing of the
								WebService request. In contrast to the error code, this message
								string might be translated and therefore available in the
								customization's preferred language.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="ChannelClassifierType">
        <xsd:annotation>
          <xsd:documentation>
						Classification of the communication channel used for a
						certain activity (e.g. POS, Kiosk, Web, ...)
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:pattern value="[a-zA-Z]*" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="PartnerContextType">
        <xsd:annotation>
          <xsd:documentation>
						This type allows to transfer a description of the
						partner organization and the partner system that
						participated in a transaction. Hierarchy to follow is:
						Partner --&gt; BusinessUnit --&gt; Branch --&gt; Terminal
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="PartnerShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
								Short name that identifies the partner
								organization.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="BusinessUnitShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
								Short name that identifies the partner
								organization.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="BranchShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
								Short name that identifies the partner
								organization.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="TerminalId">
            <xsd:annotation>
              <xsd:documentation>
								Short name that identifies the partner
								organization.
							</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:whiteSpace value="collapse" />
                <xsd:pattern value="[a-zA-Z0-9]{0}|[a-zA-Z0-9]*" />
                <xsd:maxLength value="36" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="SuccessResponseType">
        <xsd:annotation>
          <xsd:documentation>
						EnforcePinStatus returns success status response code and message to the caller in
						the below scenarios,
						If Pin is already set
						If new pin is generated and sent to both email and linked mobile
						If new pin is generated and sent to email only
						IF new pin is generated and sent to linked mobile only
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Code" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>Code to map the message</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="Message" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="GetMemberCardsByEmailIdFaultResponse">
        <xsd:annotation>
          <xsd:documentation>
						Standard response base type with fault message object
						Fault data sent for the GetMemberCardsByEmailID service call

						LMS_00001=Invalid request, Request XML validation failed
						LMS_00002=Unknown failure, please contact PAYBACK support
						LMS_00003=Member not found
						LMS_00006=Invalid request, PartnerShortName or BusinessUnitShortName is invalid
						LMS_00012=Wrong communication protocol used. The protocol should
						be either HTTP or HTTPS.
						Please check with PAYBACK if both HTTP and HTTPS are allowed.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="GetMemberCardsByEmailIdFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="GetSegmentedDataFaultResponse">
        <xsd:annotation>
          <xsd:documentation>
						Standard response base type with fault message object
						Fault data sent for the GetMemberCardsByEmailID service call

						LMS_00001=Invalid request, Request XML validation failed
						LMS_00002=Unknown failure, please contact PAYBACK support
						LMS_00003=Member not found
						LMS_00006=Invalid request, PartnerShortName or BusinessUnitShortName is invalid
						LMS_00012=Wrong communication protocol used. The protocol should
						be either HTTP or HTTPS.
						Please check with PAYBACK if both HTTP and HTTPS are allowed.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="GetSegmentedDataFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="GetMemberCardDetailsByMobileOrEmailFaultResponse">
        <xsd:annotation>
          <xsd:documentation>
				Standard response base type with fault message
				object
				Fault data sent for the GetMemberCardsByEmailID service call

				LMS_00001=Invalid request, Request XML validation failed
				LMS_00002=Unknown failure, please contact PAYBACK support
				LMS_00003=Member not found
				LMS_00006=Invalid request,
				PartnerShortName or BusinessUnitShortName is invalid
				LMS_00012=Wrong
				communication protocol used. The protocol should be either HTTP or
				HTTPS.
				Please check with PAYBACK if both HTTP and HTTPS are allowed.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="GetMemberCardDetailsByMobileOrEmailFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="MemberCardDetailsWithIdentifierType">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="LoyCardNumber" type="types:LoyCardNumberType">
            <xsd:annotation>
              <xsd:documentation>
								Payback Member's Loyalty Card Number.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="AvailablePointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
								The amount of available points in this account.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="LastTransactionDetails" type="types:LastTransactionDetailsType">
            <xsd:annotation>
              <xsd:documentation>
								Latest transaction date with any partner and the partner lmid of this
								latest transaction is returned in this element.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="LastTransactionDetailsWithPartner" type="types:LastTransactionDetailsType">
            <xsd:annotation>
              <xsd:documentation>
								Latest transaction date with the partner lmid sent in the request is
								returned in this element.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="EnrollmentSource" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
								Enrollment Source of the member's Payback card.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="PromoCode" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
								Promocode of the member's Payback Card.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="SearchedBy" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
								Searched by Mobile OR Email
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="MobileNo" type="types:MobileNumberType">
            <xsd:annotation>
              <xsd:documentation> The mobile number of the PAYBACK member.
										</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="Email" type="types:EmailType">
            <xsd:annotation>
              <xsd:documentation>
									Customer Email ID to retrive payback cards
								</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="MemberCardDetailsType">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="LoyCardNumber" type="types:LoyCardNumberType">
            <xsd:annotation>
              <xsd:documentation>
								Payback Member's Loyalty Card Number.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="AvailablePointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
								The amount of available points in this account.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="LastTransactionDetails" type="types:LastTransactionDetailsType">
            <xsd:annotation>
              <xsd:documentation>
								Latest transaction date with any partner and the partner lmid of this
								latest transaction is returned in this element.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="LastTransactionDetailsWithPartner" type="types:LastTransactionDetailsType">
            <xsd:annotation>
              <xsd:documentation>
								Latest transaction date with the partner lmid sent in the request is
								returned in this element.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="EnrollmentSource" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
								Enrollment Source of the member's Payback card.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="PromoCode" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
								Promocode of the member's Payback Card.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="LastTransactionDetailsType">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="LatestTransactionDate" type="types:EffectiveDateType">
            <xsd:annotation>
              <xsd:documentation>
								Transaction date of the most recent transaction of this member.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="PartnerShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
								Partner LMID of the most recent transaction of this member.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="EffectiveDateType">
        <xsd:annotation>
          <xsd:documentation>
						An effective date is a date, when the reason of an event or
						transaction
						being created (e.g. a purchase), happened.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="types:IsoDateTimeType" />
      </xsd:simpleType>
      <xsd:simpleType name="OrganizationShortNameType">
        <xsd:annotation>
          <xsd:documentation>
						A human readalbe, string-based identifier to name
						organizations in external interfaces.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:maxLength value="25" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="IsoDateTimeType">
        <xsd:annotation>
          <xsd:documentation>
						Our standard date-time-stamps format (incl. time zone
						information). Describes instances identified by the
						combination of a date and a time. Its value space is
						described as a combination of date and time of day in
						Chapter 5.4 of ISO 8601. Its lexical space is the
						extended format: [-]CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm]
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:dateTime" />
      </xsd:simpleType>
      <xsd:simpleType name="ExternalIdType">
        <xsd:annotation>
          <xsd:documentation>
						Object identifier that is valid 'outside' our system,
						i.e. it can be used by external systems to reference
						system-internal objects like customers or organizations
						under their external name.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:pattern value="[a-zA-Z0-9]*" />
          <xsd:maxLength value="36" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="ActivityIdType">
        <xsd:annotation>
          <xsd:documentation>
						Member activity id OR transaction reference number
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:pattern value="[0-9]*" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="OrderIdType">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:pattern value="[0-9]*" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="MobileNumberType">
        <xsd:annotation>
          <xsd:documentation>
						10 digit Mobile number.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:pattern value="[0-9]*" />
          <xsd:maxLength value="10" />
          <xsd:minLength value="10" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="StatusType">
        <xsd:annotation>
          <xsd:documentation>
						This type is used by isMobileLinked and verifyMembership api's.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:enumeration value="YES" />
          <xsd:enumeration value="NO" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="AllStatusType">
        <xsd:annotation>
          <xsd:documentation>
						This type is used by isMobileLinked and verifyMembership api's.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="3" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="LoyaltyTerminalIdType">
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:pattern value="[a-zA-Z0-9]{0}|[a-zA-Z0-9]*" />
          <xsd:maxLength value="36" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="FullNameType">
        <xsd:annotation>
          <xsd:documentation>
						Member's full name.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string" />
      </xsd:simpleType>
      <xsd:simpleType name="EmailType">
        <xsd:annotation>
          <xsd:documentation>
						Member's Email id
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:pattern value="([\.a-zA-Z0-9_\-])+@([a-zA-Z0-9_\-])+(([a-zA-Z0-9_\-])*\.([a-zA-Z0-9_\-])+)+" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="LoyCardNumberType">
        <xsd:annotation>
          <xsd:documentation>
						Member's 16 digit payback card number.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:pattern value="[0-9]*" />
          <xsd:maxLength value="16" />
          <xsd:minLength value="16" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="CommunicationChannelType">
        <xsd:annotation>
          <xsd:documentation>This type describes the medium used by the
						customer to interact with PAYBACK.</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="types:LICBaseType" />
      </xsd:simpleType>
      <xsd:simpleType name="LICBaseType">
        <xsd:annotation>
          <xsd:documentation>
						Basic type for lic-based, customizable enumerations. All enumerations
						that are
						customizeable (e.g. salutations, channels etc.) are represented by
						non-negative integer based language independent codes internally. This
						type is meant to be *abstract*. It must not be used directly but only
						to
						derive other lic-based types.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:nonNegativeInteger">
          <xsd:totalDigits value="4" />
          <xsd:maxInclusive value="9999" />
          <xsd:minInclusive value="0" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="MemberAliasAuthenticationType">
        <xsd:annotation>
          <xsd:documentation>
						This data type is used to transfer an
						authentication request to the
						system.
						It contains a Principal (and an
						optional PrincipalVariant) which is
						automatically mapped to system
						internal alias identifiers and a
						Credential.
						In special cases, the
						Credential may be left empty when authentication
						was already done via
						another way, e.g. manually (trusted by partner).
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Identification" type="types:MemberIdentificationType" />
          <xsd:element name="Security" type="types:MemberSecurityType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="MemberIdentificationType">
        <xsd:annotation>
          <xsd:documentation>Alias identify a member within the PAYBACK
						program.
						Alias
						type defines the classification and derived from this the usage of an
						alias.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Alias" type="types:PrincipalValueType">
            <xsd:annotation>
              <xsd:documentation>Alias identify a member within the PAYBACK
								program.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="AliasType" type="types:PrincipalVariantType">
            <xsd:annotation>
              <xsd:documentation>Alias type defines the classification and
								derived
								from this the usage of an alias.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="MemberAliasType">
        <xsd:annotation>
          <xsd:documentation>Alias identify a member within the PAYBACK
						program.
						Alias
						type defines the classification and derived from this the usage of an
						alias.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Alias" type="types:PrincipalValueType">
            <xsd:annotation>
              <xsd:documentation>Alias identify a member within the PAYBACK
								program.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="AliasType" type="types:AssignedPrincipalVariantType">
            <xsd:annotation>
              <xsd:documentation>Alias type defines the classification and
								derived
								from this the usage of an alias.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="MemberSecurityType">
        <xsd:sequence>
          <xsd:element name="SecretType" type="types:PrincipalSecretType">
            <xsd:annotation>
              <xsd:documentation>
								Principal secret type that is used (optionally used if
								applicable - don't use it if not necessary).
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="Secret" type="types:CredentialType">
            <xsd:annotation>
              <xsd:documentation>
								Credential of the member who wants to access a
								WebService method in case of a fire and forget call.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="PrincipalVariantType">
        <xsd:annotation>
          <xsd:documentation>
						String-based enumeration that defines the flavor of the Principal (e.g. Card
						Number, Phone
						Number, ...).
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:integer">
          <xsd:enumeration value="1" />
          <xsd:enumeration value="3" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="OTPType">
        <xsd:annotation>
          <xsd:documentation>
						Type for 'OTP'.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:pattern value="[0-9]*" />
          <xsd:minLength value="4" />
          <xsd:maxLength value="8" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="AssociationNumberType">
        <xsd:annotation>
          <xsd:documentation>
						Used for Association Number/Association 
						Account Number
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:maxLength value="100" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="AssociationsType1">
        <xsd:annotation>
          <xsd:documentation>
						String-based enumeration that defines the flavor of the Principal (e.g. Card
						Number, Phone Number, ...).
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string" />
      </xsd:simpleType>
      <xsd:simpleType name="PrincipalSecretType">
        <xsd:annotation>
          <xsd:documentation>
						Type for secret type LOV.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:integer">
          <xsd:enumeration value="0" />
          <xsd:enumeration value="2" />
          <xsd:enumeration value="4" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="PartialInfoRequestType">
        <xsd:annotation>
          <xsd:documentation>
						Type for GetAccountTransactionsByPartner - PartialInfoRequest LOV.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:integer">
          <xsd:enumeration value="0" />
          <xsd:enumeration value="1" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="ForgotPasswordFaultResponse">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="ForgotPasswordFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="OrderReportFilterType">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="PartnerShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
								Data used to identify the partner. Partner LMID should be sent in
								the request.
								Orders specific to this partner is returned by this service call.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="RedemptionChannel" type="types:ChannelClassifierType">
            <xsd:annotation>
              <xsd:documentation>Channel Classification where redemption is
								done(e.g. POS, PG, OTC, EDC etc.)
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="PartnerTerminalId" type="types:LoyaltyTerminalIdType">
            <xsd:annotation>
              <xsd:documentation>
								Optional element in the request. Data used to identify partner terminal.
								If terminal id is sent in the request, Orders specific to this
								partner terminal is returned.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="Authentication" type="types:AuthenticationType">
            <xsd:annotation>
              <xsd:documentation>
								Data used to identify the member.
								Either 16-digit loyalty card number OR 10-digit linked mobile number
								can be sent.
								If member identification is sent in the request, orders only
								specific to this member is returned.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="OrderPeriod" type="types:OrderPeriodType">
            <xsd:annotation>
              <xsd:documentation>
								From and To Dates are mandatory. Orders placed between this period
								will be fetched.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="OrderType">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="OrderId" type="types:OrderIdType">
            <xsd:annotation>
              <xsd:documentation>This element can be Order Id OR Activity Id
								Order Id for (PG, OTC, CC, WEB, KIOSK channels)
								Activity Id for POS redemptions
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="RedemptionChannel" type="types:ChannelClassifierType">
            <xsd:annotation>
              <xsd:documentation>channel used by member to redeem points - CC,
								WEB, PG, OTC, KIOSK, POS etc.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="OrderPeriodType">
        <xsd:sequence>
          <xsd:element name="FromDate" type="types:CalendarDayType">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="ToDate" type="types:CalendarDayType">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="ResultOffset" type="types:ResultOffsetType">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="ResultOffsetType">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Offset" type="types:OffsetType">
            <xsd:annotation>
              <xsd:documentation>Number of result records that will be skipped
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="NoOfRecords" type="types:MaxLimitType">
            <xsd:annotation>
              <xsd:documentation>Number of result records to be returned.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="CalendarDayType">
        <xsd:annotation>
          <xsd:documentation>
						Type to identify a single day in the calendar.
						It can be used as a boundary value to specify calendar periods.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:date" />
      </xsd:simpleType>
      <xsd:simpleType name="MaxLimitType">
        <xsd:restriction base="xsd:integer">
          <xsd:minInclusive value="1" />
          <xsd:maxInclusive value="9999" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="OffsetType">
        <xsd:restriction base="xsd:nonNegativeInteger" />
      </xsd:simpleType>
      <xsd:complexType name="PaginationType">
        <xsd:annotation>
          <xsd:documentation>Type for pagination </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Offset" type="types:OffsetType">
            <xsd:annotation>
              <xsd:documentation>Number of result records that  will be skipped</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="PageSize" type="types:PageSizeType">
            <xsd:annotation>
              <xsd:documentation>Number of result records to be returned</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="SortOptions" type="types:SortType">
            <xsd:annotation>
              <xsd:documentation>Pre-sorting conditions. The full result set will be sorted using this sorting condition. Using this sort result the paging will be executed. </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="AccountEventDetailType">
        <xsd:annotation>
          <xsd:documentation>
                Type used to transfer detailled event information about a single event assigned to
                dedicated account.</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Partner" type="types:PartnerDisplayContextType">
            <xsd:annotation>
              <xsd:documentation>
                        Unique short name of the partner, the partner's business unit
                        and the partner's branch where the event was created
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="ActivityDate" type="types:EffectiveDateType">
            <xsd:annotation>
              <xsd:documentation>
                        Effective date. Date of event creation at partner
                        (including time zone information)
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="ReceiptNumber" type="types:ExternalIdType">
            <xsd:annotation>
              <xsd:documentation>
                        Key number of a the event
                        Must be unique for a certain partner.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="Alias" type="types:MemberIdentificationType">
            <xsd:annotation>
              <xsd:documentation>Alias that triggered the event creation
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="EventCategory" type="types:EventCategoryType">
            <xsd:annotation>
              <xsd:documentation> Returns the apropriate eventtype for the current event.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="unbounded" name="AccountTransactionDetails" type="types:AccountTransactionDetailType">
            <xsd:annotation>
              <xsd:documentation>
                                    AccountTransactionDetail record assigned to the event
                        </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="ItemName">
            <xsd:annotation>
              <xsd:documentation>Product Name</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:minLength value="1" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="CashAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
							Cash component of the order
						   </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="PartnerDisplayContextType">
        <xsd:annotation>
          <xsd:documentation>
                This type allows to transfer a description of the partner
                organization and the partner system that participated in the PAYBACK program.
                Hierarchy to follow is: Partner --&gt; BusinessUnit --&gt; Branch
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="PartnerShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
                        Short name that identifies the partner organization.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="PartnerDisplayName" type="types:OrganizationLongNameType">
            <xsd:annotation>
              <xsd:documentation>Partner display name that identifies the partner organization.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="BusinessUnitShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
                        Short name that identifies the partner's business unit.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="BusinessUnitDisplayName" type="types:OrganizationLongNameType">
            <xsd:annotation>
              <xsd:documentation>Business unit display name that identifies the partner's business unit.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="BranchShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
                        Short name that identifies the partner's branch.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="BranchDisplayName" type="types:OrganizationLongNameType">
            <xsd:annotation>
              <xsd:documentation>Branch display name that identifies the partner's branch.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="AccountTransactionDetailType">
        <xsd:annotation>
          <xsd:documentation>
                Type used to transfer detailled information about a single transaction
                which is booked into an account
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Description" type="types:TransactionDescriptionType">
            <xsd:annotation>
              <xsd:documentation>
                        A short descriptive text explaining the transaction. Actual value
                        may be a simple transaction classifier (like e.g. 'Purchase' or
                        'Retrocredit') or a
                        marketing text that is derived from the marketing
                        code that was created by the partner.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="Value" type="types:LoyaltyUnitType">
            <xsd:annotation>
              <xsd:documentation>
                        The transactions value, i.e. the number of point in loyalty currency
                        that were added to or removed from the account.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="AddDate" type="types:IsoDateTimeType" />
          <xsd:element minOccurs="0" name="BlockedUntil" type="types:IsoDateTimeType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="LoyaltyUnitType">
        <xsd:annotation>
          <xsd:documentation>
                Amount of loyalty currency together with its unit of measurement.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="LoyaltyAmount" type="types:LoyaltyAmountType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="TransactionDescriptionType">
        <xsd:annotation>
          <xsd:documentation>
                Type to transfer a descriptive text for a transaction.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:maxLength value="255" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="OrganizationLongNameType">
        <xsd:annotation>
          <xsd:documentation>
                A human readable, descriptive identifier that names
                organizations in user interfaces.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:maxLength value="60" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="EventCategoryType">
        <xsd:annotation>
          <xsd:documentation>Denotes the superset of all event types of either
			 categories (collect event and  redemption events). </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="types:LICBaseType" />
      </xsd:simpleType>
      <xsd:simpleType name="PageSizeType">
        <xsd:annotation>
          <xsd:documentation>Type for pagination page size definition </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:nonNegativeInteger" />
      </xsd:simpleType>
      <xsd:complexType name="SortType">
        <xsd:annotation>
          <xsd:documentation>Type for pagination sort options </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Criteria" type="types:SortCriteria" />
          <xsd:element name="Direction" type="types:SortDirection" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="SortCriteria">
        <xsd:annotation>
          <xsd:documentation>Type for pagination sort criteria (LOV tbd.) </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string" />
      </xsd:simpleType>
      <xsd:simpleType name="SortDirection">
        <xsd:annotation>
          <xsd:documentation>Type for pagination sort direction (LOV 0=asc/1=desc) </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:integer">
          <xsd:enumeration value="0" />
          <xsd:enumeration value="1" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="MatchLimitType">
        <xsd:restriction base="xsd:integer">
          <xsd:minInclusive value="1" />
          <xsd:maxInclusive value="9999" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="OrderStatusEnquiryFaultResponse">
        <xsd:annotation>
          <xsd:documentation>Standard response base type with fault message object.
						Fault data sent for the OrderStatusEnquiry service call
						LMS_00001=Invalid request, XML validation failed.
						LMS_00002=Unknown failure, please contact PAYBACK support.
						LMS_00003=Member Not found. Invalid Loyalty card number OR Mobile
						number.
						LMS_00006=Invalid request, PartnerShortName or BusinessUnitShortName is invalid.
						LMS_00008=Invalid request, Redemption Channel is invalid.
						LMS_00012=Wrong communication protocol used. The protocol should
						be either HTTP or HTTPS. Please check with PAYBACK if both HTTP
						and HTTPS are allowed.
						LMS_00013=Invalid request, PrincipalClassifier is invalid
						LMS_00015=Unknown terminal, please contact PAYBACK support.</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="OrderStatusEnquiryFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="GetAccountTransactionsByPartnerFaultResponse">
        <xsd:annotation>
          <xsd:documentation>Error codes</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="GetAccountTransactionsByPartnerFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="GetMemberTransactionsByPartnerFaultResponse">
        <xsd:annotation>
          <xsd:documentation>Error codes</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="GetMemberTransactionsByPartnerFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="ReverseVoucherRedemptionFaultResponse">
        <xsd:annotation>
          <xsd:documentation>Error codes</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="ReverseVoucherRedemptionFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="ResultSize">
        <xsd:annotation>
          <xsd:documentation>Type for search result size</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:nonNegativeInteger" />
      </xsd:simpleType>
      <xsd:complexType name="OrderDetailsType">
        <xsd:annotation>
          <xsd:documentation>
						Type used to transfer detailed order information.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="OrderId" type="types:OrderIdType">
            <xsd:annotation>
              <xsd:documentation>This can be Order Id for PG/OTC orders OR
								activity id for POS redemptions.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="OrderDate">
            <xsd:annotation>
              <xsd:documentation>Date of event creation at partner.
							</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:dateTime" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="OrderStatus" type="types:OrderStatusType">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="LoyaltyCardNumber" type="types:LoyCardNumberType">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="PartnerCommercialName" type="types:PartnerCommercialNameType">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="PartnerShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="PartnerTerminalId" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="RedemptionChannel" type="types:ChannelClassifierType">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="ReceiptNumber" type="types:ExternalIdType">
            <xsd:annotation>
              <xsd:documentation>
								Invoice number or Receipt number.
								Key number of a receipt issued at a partner. Must be unique for a
								certain partner.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="PointsRedeemed" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>Number of points in loyalty currency redeemed
								from this account.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="unbounded" name="OrderRefundInfo" type="types:OrderRefundInfoType">
            <xsd:annotation>
              <xsd:documentation>Number of points in loyalty currency refunded
								from this account.
								if order refund was done multiple times, OrderRefundInfo is
								repeated.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="PartnerCommercialNameType">
        <xsd:restriction base="xsd:string" />
      </xsd:simpleType>
      <xsd:simpleType name="IsFinalOrderRefundType">
        <xsd:restriction base="xsd:boolean" />
      </xsd:simpleType>
      <xsd:complexType name="OrderStatusType">
        <xsd:sequence>
          <xsd:element name="OrderStatusCode">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="OrderStatusDesc">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="OrderRefundInfoType">
        <xsd:sequence>
          <xsd:element name="RefundPoints" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="RefundDate" type="xsd:dateTime">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="PartnerExtRefNumber" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="PartnerType">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="LMID">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:pattern value="[0-9]*" />
                <xsd:maxLength value="20" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="HasChild">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:integer">
                <xsd:enumeration value="1" />
                <xsd:enumeration value="0" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="MultiplePartnerType">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="LMID">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:token">
                <xsd:pattern value="[1-9][0-9]*(, ?[1-9][0-9]*)*" />
                <xsd:maxLength value="200" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="ActivityDetailsType">
        <xsd:annotation>
          <xsd:documentation>
						Details of the activity or transaction of a member.
						Type used to transfer detailed event information about a single event
						assigned to dedicated account.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="ActivityId">
            <xsd:annotation>
              <xsd:documentation>Transaction Id or event Id</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:pattern value="[0-9]*" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="LoyCardNumber">
            <xsd:annotation>
              <xsd:documentation>16-digit loyalty card number of a member
							</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:pattern value="[0-9]*" />
                <xsd:maxLength value="16" />
                <xsd:minLength value="16" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="ActivityDate">
            <xsd:annotation>
              <xsd:documentation>
								Transaction date(Date of event creation)
								Activity Date format('DD-MM-YYYY')
							</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:date" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="ActivityType">
            <xsd:annotation>
              <xsd:documentation>Identifies transaction type - EARN/BURN/EARN
								REVERSAL etc.
							</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="TerminalId">
            <xsd:annotation>
              <xsd:documentation>External Terminal Id</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:pattern value="[0-9]*" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="PartnerId">
            <xsd:annotation>
              <xsd:documentation>Partner Id</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:pattern value="[0-9]*" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="PartnerName">
            <xsd:annotation>
              <xsd:documentation>Partner Commercial Name</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="ActivityTxnDesc">
            <xsd:annotation>
              <xsd:documentation>Defines Transaction mode.
								Voucher Burn, Points Expiry, Goodwill Points, BONUS POINTS, Refund etc.
							</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="EnrollmentSource">
            <xsd:annotation>
              <xsd:documentation>enrollment source</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="ActivityTxnUnit">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="ActivityTxnValue">
            <xsd:annotation>
              <xsd:documentation>Transaction Value or amount
							</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="Points" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>Number of points in loyalty currency
								that were added to or removed from the account.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="ImeantId">
            <xsd:annotation>
              <xsd:documentation>Loyalty Terminal ID</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:pattern value="[0-9]*" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="OriginalActivityId">
            <xsd:annotation>
              <xsd:documentation>Referenced Activity Id</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="ActionCode">
            <xsd:annotation>
              <xsd:documentation>Activity action code. EARN, BURN, EARN
								REVERSAL etc.</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="TransactionCode">
            <xsd:annotation>
              <xsd:documentation>transaction type code. POINTS_EXPIRY,
								GDWILL_PTS, BONUS_POINTS, POINTS_BACK, REFUND etc.
							</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="SKUQuantity">
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="SKUName">
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="SKURemarks">
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="OrderId">
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="RejectReason">
            <xsd:annotation>
              <xsd:documentation>activity reject reason</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="MMTBookingId">
            <xsd:annotation>
              <xsd:documentation>Flex5</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="InvoiceAmount">
            <xsd:annotation>
              <xsd:documentation>Flex7</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="0" name="InvoiceNumber">
            <xsd:annotation>
              <xsd:documentation>unique_identification</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="AddDate">
            <xsd:annotation>
              <xsd:documentation>Date of creation of event</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:dateTime" />
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="BlockedUntil">
            <xsd:annotation>
              <xsd:documentation>blocked until date of blocked earns(date
								format - 'DD-MM-YYYY')</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:date" />
            </xsd:simpleType>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="MemberAuthenticationType">
        <xsd:annotation>
          <xsd:documentation>
				Alias identify a member within the PAYBACK program.
				Alias type defines the classification and derived from this the usage of an alias.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="AuthenticationNumber" type="types:AuthenticationNumberType">
            <xsd:annotation>
              <xsd:documentation>
						Authentication Number identify a member within the PAYBACK program.
					</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="AssociationType" type="types:AssociationsType">
            <xsd:annotation>
              <xsd:documentation>
						Association Type states the type of association
						LOY_CARD_NUMBER/MOBILE_ID/ICICI_CREDIT/ICICI_DEBIT etc.
					</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="AuthenticationNumberType">
        <xsd:annotation>
          <xsd:documentation>
				String-based value of the Principal that is passed
				for authentication.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:pattern value="[0-9]{10}|[0-9]{12}|[0-9]{15}|[0-9]{16}" />
          <xsd:whiteSpace value="collapse" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="AssociationsType">
        <xsd:annotation>
          <xsd:documentation>
				String-based enumeration that defines the flavor of the Principal (e.g. Card
				Number, Phone Number, ...).
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:enumeration value="ICICI_CREDIT" />
          <xsd:enumeration value="ICICI_DEBIT" />
          <xsd:enumeration value="MOBILE_ID" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="PartnerAuthorizationKeyType">
        <xsd:annotation>
          <xsd:documentation>
				This key identifies if the Partner is a valid partner and enabled for real time earns.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:minLength value="1" />
          <xsd:maxLength value="100" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="TxnClassifierType">
        <xsd:annotation>
          <xsd:documentation>
				This key identifies the type of transaction for real time earns.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:minLength value="1" />
          <xsd:maxLength value="25" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="PartnerUIdType">
        <xsd:annotation>
          <xsd:documentation>
				Type to define the Partner UId (Invoice no.) sent by the Partner for real time earn API's.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:minLength value="1" />
          <xsd:maxLength value="50" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="PaybackIdType">
        <xsd:annotation>
          <xsd:documentation>
				Member activity id OR transaction reference number
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:pattern value="[0-9]*" />
          <xsd:minLength value="1" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="InvoiceType">
        <xsd:annotation>
          <xsd:documentation>
				Type to define the Partner UId (Invoice no.) sent by the Partner for real time earn API's.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:minLength value="1" />
          <xsd:maxLength value="50" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="TxnDateType">
        <xsd:annotation>
          <xsd:documentation>
				Type to describe transaction dates (targeted precision
				and format is YYYY-MM-DD).
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:dateTime" />
      </xsd:simpleType>
      <xsd:complexType name="BaseEarnTxnIds">
        <xsd:annotation>
          <xsd:documentation>
				All the associated Base earn transaction Ids.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:choice>
            <xsd:element name="PartnerUId" type="types:PartnerUIdType">
              <xsd:annotation>
                <xsd:documentation>
							Invoice number of the base earn transaction sent by the partner.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="ZillionUId" type="types:ActivityIdType">
              <xsd:annotation>
                <xsd:documentation>If Partner is calculating points, 
							Payback Activity Id of the base earn transaction sent by the partner.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="BasketDataType">
        <xsd:annotation>
          <xsd:documentation>
				Basket data consists of basket or item Information specific to the transaction.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="unbounded" name="BasketInfo" type="types:BasketInfoType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="BasketInfoType">
        <xsd:annotation>
          <xsd:documentation>
				Each Line item consists of key and value pair.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Key">
            <xsd:annotation>
              <xsd:documentation>
						Key for the given line item.
					</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:whiteSpace value="collapse" />
                <xsd:minLength value="1" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="Value">
            <xsd:annotation>
              <xsd:documentation>
						Value for the given key for the particular line item.
					</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:whiteSpace value="collapse" />
                <xsd:minLength value="1" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="AdditionalDataType">
        <xsd:annotation>
          <xsd:documentation>
				Additional information sent by partner to be captured as Key Value pair.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="unbounded" name="AdditionalInfo" type="types:AdditionalInfoType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="AdditionalInfoType">
        <xsd:annotation>
          <xsd:documentation>
				Each Line item consists of key and value pair.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Key">
            <xsd:annotation>
              <xsd:documentation>
						Key for e.g. VAT Amount, PaymentType, TxnUnit
					</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:whiteSpace value="collapse" />
                <xsd:minLength value="1" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="Value">
            <xsd:annotation>
              <xsd:documentation>
						Value for the given key for the particular line item.
					</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:whiteSpace value="collapse" />
                <xsd:minLength value="1" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="RejectedDetailsType">
        <xsd:annotation>
          <xsd:documentation>
				It consists of Rejected Id and reject reason.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="RejectId">
            <xsd:annotation>
              <xsd:documentation>
						Reject Id for the transaction.
					</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:whiteSpace value="collapse" />
                <xsd:minLength value="1" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element name="RejectReason">
            <xsd:annotation>
              <xsd:documentation>
						Reject reason for the transaction.
					</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:whiteSpace value="collapse" />
                <xsd:minLength value="1" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="BlockPeriodType">
        <xsd:annotation>
          <xsd:documentation>
				1. "0" cannot cancel. Once blocked make it
				complete ,
				2. null - can cancel
				3. integer number - he can cancel till these many mins, after taking
				order.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:pattern value="[0-9]*" />
          <xsd:whiteSpace value="collapse" />
          <xsd:minLength value="1" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="CreateEarnTransactionResponseType">
        <xsd:annotation>
          <xsd:documentation>
			Standard response base type with fault message object.

			Fault data sent for the Real Time Earn service call
			
			Map all the Fault codes and Fault messages			
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="CreateEarnTransactionFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="ReverseEarnTransactionResponseType">
        <xsd:annotation>
          <xsd:documentation>
			Standard response base type with fault message object.

			Fault data sent for the Real Time Earn service call
			
			Map all the Fault codes and Fault messages			
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="ReverseEarnTransactionFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="ModifyEarnTransactionResponseType">
        <xsd:annotation>
          <xsd:documentation>
			Standard response base type with fault message object.

			Fault data sent for the Real Time Earn service call
			
			Map all the Fault codes and Fault messages			
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="ModifyEarnTransactionFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="BlockPointsForRedemptionResponseType">
        <xsd:annotation>
          <xsd:documentation>
			Standard response base type with fault message object.

			Fault data sent for the Real Time Earn service call
			
			Map all the Fault codes and Fault messages			
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="BlockPointsForRedemptionFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="AuthorisedRequest">
        <xsd:annotation>
          <xsd:documentation>
                This is the base type for all web service requests. Its only element
                is a data type that is used for partner authentication and subsequent
                authorisation. Concrete web service requests are supposed to extend this type by appending their own
                elements.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="ConsumerIdentification" type="types:ConsumerIdentificationType">
            <xsd:annotation>
              <xsd:documentation>
                        Data used to identify and authenticate the consumer that has submitted the request and
                        provide additional details on the consumer.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="EnrolmentDetailsType">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" name="PromotionalId">
            <xsd:simpleType>
              <xsd:restriction base="xsd:integer">
                <xsd:minInclusive value="1" />
                <xsd:maxInclusive value="4" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="1" name="SourcedAssociationId">
            <xsd:simpleType>
              <xsd:restriction base="xsd:integer">
                <xsd:minInclusive value="1" />
                <xsd:maxInclusive value="100000" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="1" name="PhysicalCardTypeId">
            <xsd:simpleType>
              <xsd:restriction base="xsd:integer">
                <xsd:minInclusive value="1" />
                <xsd:maxInclusive value="1000" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="1" name="MemberCardTypeId">
            <xsd:simpleType>
              <xsd:restriction base="xsd:integer">
                <xsd:minInclusive value="1" />
                <xsd:maxInclusive value="1000" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="1" name="MemberClassId">
            <xsd:simpleType>
              <xsd:restriction base="xsd:integer">
                <xsd:minInclusive value="1" />
                <xsd:maxInclusive value="1000" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="ConsumerIdentificationType">
        <xsd:annotation>
          <xsd:documentation>
                Type to indentiy a consumer in more detailed information on the concrete device.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="ConsumerAuthentication" type="types:ConsumerAuthenticationType">
            <xsd:annotation>
              <xsd:documentation>ConsumerAuthentication uniquely identifys and
                        authorises the consumer. Only proper consumer authentication
                        authorizes the consumer to access the PAYBACK system. Each
                        consumer requires an interface contract with PAYBACK to reveive
                        valid consumer authentication.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="Partner" type="types:ConsumerPartnerContextType">
            <xsd:annotation>
              <xsd:documentation>PAYBACK Partner that is responsible for the
                        interface contract with PAYBACK and that operates the consumer.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="DeviceID" type="types:DeviceIDType">
            <xsd:annotation>
              <xsd:documentation>Identifier for the individual device within the
                        consumer network. Examples are terminalIds IP address or the IMEI
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="Product" type="types:ConsumerProductType">
            <xsd:annotation>
              <xsd:documentation>Product relevant for the PAYBACK product stack (e.g.
                        Online Toolbar, iPhoneApp, BackberryApp, full-size terminal,
                        small-size terminal)</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="Version" type="types:VersionType">
            <xsd:annotation>
              <xsd:documentation>Version of the service used by the consumer
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="ConsumerAuthenticationType">
        <xsd:annotation>
          <xsd:documentation>
                This data type is used to transfer an authentication request of a interface consumer to
                the PAYBACK system</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Principal" type="types:PrincipalTypeTwo">
            <xsd:annotation>
              <xsd:documentation>
                        A valid principal of the consumer who wants to access a WebService method. This
                        principal is unique for the consumer and will be used to identify
                        the consumer uniquely within the PAYBACK system
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="Credential" type="types:CredentialType">
            <xsd:annotation>
              <xsd:documentation>
                        Credential of the consumer who wants to access a WebService method.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="DeviceIDType">
        <xsd:annotation>
          <xsd:documentation>
                ID of the technical device. For terminals this is known as terminalID for other devices
                this could be the IP address or the IMEI
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string" />
      </xsd:simpleType>
      <xsd:simpleType name="ConsumerProductType">
        <xsd:annotation>
          <xsd:documentation>
                Product from the PAYBACK product stack (Online Toolbar, iPhoneApp, BlackberryApp, full-size
                terminal, small-size terminal)
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string" />
      </xsd:simpleType>
      <xsd:simpleType name="VersionType">
        <xsd:annotation>
          <xsd:documentation>
                Type for api version used by consumer.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string" />
      </xsd:simpleType>
      <xsd:simpleType name="PrincipalTypeTwo">
        <xsd:annotation>
          <xsd:documentation>
                Type to transfer the string-based value of the Principal that is used for identification
                or authentication (e.g. a username, cardnumber etc.).
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="60" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="MessageResponse">
        <xsd:annotation>
          <xsd:documentation>
                Standard response base type with fault message object.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="FaultMessage" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="ConsumerPartnerContextType">
        <xsd:annotation>
          <xsd:documentation>
                This type allows to transfer a description of the partner
                organization and the partner system that participated in the PAYBACK program.
                Hierarchy to follow is: Partner --&gt; BusinessUnit --&gt; Branch
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="PartnerShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
                        Short name that identifies the partner organization.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="BusinessUnitShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
                        Short name that identifies the partner's business unit.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="BranchShortName" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation>
                        Short name that identifies the partner's branch.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="CaptchaAnswerType">
        <xsd:annotation>
          <xsd:documentation>
                Type for security CAPTCHA answer.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="CaptchaID" type="types:AuthorizationTokenType">
            <xsd:annotation>
              <xsd:documentation>Unique identifier for the CAPTCHA generated by a
                        separate service call. This ID is only valid for a single request.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="CaptchaAnswer" type="types:CaptchaAnswerTextType">
            <xsd:annotation>
              <xsd:documentation>The text that the user retrieved from the security
                        CAPTCHA and provides to PAYBACK system. </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="AuthorizationTokenType">
        <xsd:annotation>
          <xsd:documentation>
                Type used for business process specific authorisation tokens.         </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:maxLength value="255" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="CaptchaAnswerTextType">
        <xsd:annotation>
          <xsd:documentation>
                The plain text that was contained within the CAPTCHA
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:maxLength value="10" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="MemberMasterInfoType">
        <xsd:annotation>
          <xsd:documentation>
                Complex data type used to transfer the 'core' information about a
                member, i.e. the minimum information needed to handle him as a human
                beeing in case he contacts the call center: his name, gender etc.
                Further member related information is captured in other types</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Salutation" type="types:SalutationType">
            <xsd:annotation>
              <xsd:documentation>
                        The salutation used to greet the PAYBACK member.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="FirstName" type="types:FirstNameType">
            <xsd:annotation>
              <xsd:documentation>
                        The first name of the PAYBACK member.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="LastName" type="types:LastNameType">
            <xsd:annotation>
              <xsd:documentation>
                        The last name of the PAYBACK member.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="DateOfBirth" type="types:DateOfBirthType">
            <xsd:annotation>
              <xsd:documentation>
                        The date of birth of the PAYBACK member.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="SalutationType">
        <xsd:annotation>
          <xsd:documentation>
                Type for the salutations of the PAYBACK members (LICs only).
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="types:LICBaseType" />
      </xsd:simpleType>
      <xsd:simpleType name="FirstNameType">
        <xsd:annotation>
          <xsd:documentation>
                Type for the first name of a PAYBACK member.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="50" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="LastNameType">
        <xsd:annotation>
          <xsd:documentation>
                Type for the last name of a PAYBACK member.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="50" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="DateOfBirthType">
        <xsd:annotation>
          <xsd:documentation>
                Type for the date of birth of a PAYBACK member.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="types:CalendarDayType" />
      </xsd:simpleType>
      <xsd:complexType name="MemberPostalAddressType">
        <xsd:annotation>
          <xsd:documentation>
                Complex data type used to transfer the postal address information
                of a PAYBACK member. The data type is defined to support different
                ways of addressing (normal postal address or post box as well as
                more open classification schemes as they are used in less-developed
                countries e.g. free text to name cross-roads or nearby shops or
                monuments). The semantics of additional and extra fields is fully
                depending on the customizing context.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="ZipCode" type="types:ZipCodeType">
            <xsd:annotation>
              <xsd:documentation>
                        The zip code of the PAYBACK member's address.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="City" type="types:CityType">
            <xsd:annotation>
              <xsd:documentation>
                        The coty of the PAYBACK member's address.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="Region" type="types:RegionNameType">
            <xsd:annotation>
              <xsd:documentation>
                        The region or state of the PAYBACK member's address. Usage of
                        region/state names is depending on the country.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="AdditionalAddress1" type="types:AdditionalAddressInfoType">
            <xsd:annotation>
              <xsd:documentation>
                        Some additional information further describing the PAYBACK
                        member's address. Semantics is customizing-specific.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="AdditionalAddress2" type="types:AdditionalAddressInfoType">
            <xsd:annotation>
              <xsd:documentation>
                        Some more additional information further describing the PAYBACK
                        member's address. Semantics is customizing-specific.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="ExtraAddress1" type="types:ExtraAddressInfoType">
            <xsd:annotation>
              <xsd:documentation>
                        Some extra information further describing the PAYBACK
                        member's address. Semantics is customizing-specific.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="ZipCodeType">
        <xsd:annotation>
          <xsd:documentation>
                Type for 'zip code' part of an address of a PAYBACK member.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="12" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="CityType">
        <xsd:annotation>
          <xsd:documentation>
                Type for 'city' part of an address of a PAYBACK member.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="40" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="RegionNameType">
        <xsd:annotation>
          <xsd:documentation>
                Type for 'region' part of an address of a PAYBACK member.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="30" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="AdditionalAddressInfoType">
        <xsd:annotation>
          <xsd:documentation>
                Type for the additional info part of an address of a PAYBACK member.
                Interpretation is expected to be customizing-specific.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="40" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="ExtraAddressInfoType">
        <xsd:annotation>
          <xsd:documentation>
                Type for the extension info part of an address of a PAYBACK member.
                Interpretation is expected to be customizing-specific.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="100" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="EnrollMemberContactType">
        <xsd:annotation>
          <xsd:documentation>
                Complex data type used to transfer additional contact
                information about a PAYBACK member. It can contain landline and mobile
                phone number and email address information.</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="MobileNumber" type="types:PhoneNumberType">
            <xsd:annotation>
              <xsd:documentation>
                        The mobile phone number of the PAYBACK member.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="LinkMobile" type="types:AllStatusType">
            <xsd:annotation>
              <xsd:documentation>
								LinkMobile take boolean values
								YES - API should link/associate mobile number to the loycarnumber if the mobile number is not linked/associated 
								NO - API should not link/associate mobile number to the loycarnumber
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="EmailAddress" type="types:EmailAddressType">
            <xsd:annotation>
              <xsd:documentation>
                        The email address of the PAYBACK member.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="MemberContactType">
        <xsd:annotation>
          <xsd:documentation>
                Complex data type used to transfer additional contact
                information about a PAYBACK member. It can contain landline and mobile
                phone number and email address information.</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="MobileNumber" type="types:PhoneNumberType">
            <xsd:annotation>
              <xsd:documentation>
                        The mobile phone number of the PAYBACK member.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="EmailAddress" type="types:EmailAddressType">
            <xsd:annotation>
              <xsd:documentation>
                        The email address of the PAYBACK member.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="PhoneNumberType">
        <xsd:annotation>
          <xsd:documentation>
                This type combines an unprocessed phone number with its
                characteristics in order to allow proper processing.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Number" type="types:UnprocessedPhoneNumberType">
            <xsd:annotation>
              <xsd:documentation>
                        The actual raw phone number in unprocessed format.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="UnprocessedPhoneNumberType">
        <xsd:annotation>
          <xsd:documentation>
                Type for unprocessed phone numbers. Unprocessed means that the phone
                numbers are 'as written down by a member', e.g. 00 49 (0) 89 112344-55
                (i.e. containing braces, +, -, . and space characters). Further on,
                the international break-out codes (like 00 or 810) might be included
                or not. It is up to the backend to perform phone number validation,
                cleansing and reformatting.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="30" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="EmailAddressType">
        <xsd:annotation>
          <xsd:documentation>
                This type combines an unprocessed email address with its
                characteristics in order to allow proper processing.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Address" type="types:UnprocessedEmailAddressType">
            <xsd:annotation>
              <xsd:documentation>
                        The actual email address in unprocessed format.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="UnprocessedEmailAddressType">
        <xsd:annotation>
          <xsd:documentation>
                Type for raw unprocessed email adresses.
                It is up to the backend to perform email address validation,
                cleansing and reformatting if necessary.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="255" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="AddressCorrectnessSetType">
        <xsd:sequence>
          <xsd:element minOccurs="0" name="PostalAddressCorrectness" type="types:AddressCorrectnessType" />
          <xsd:element minOccurs="0" name="EmailAddressCorrectness" type="types:AddressCorrectnessType" />
          <xsd:element minOccurs="0" name="MobilePhoneCorrectness" type="types:AddressCorrectnessType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="AddressCorrectnessType">
        <xsd:restriction base="xsd:int" />
      </xsd:simpleType>
      <xsd:complexType name="MemberTokenAuthenticationType">
        <xsd:annotation>
          <xsd:documentation>
				This data type is used to transfer an authentication request
				to the system for conversational WebService usage. It requires
				a valid conversation identifier.</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Token" type="types:ConversationIdType">
            <xsd:annotation>
              <xsd:documentation>
								Token in the form of a hexadecimal string issued to
								grant access to data of a specific member. A token has an expiry
								period which might be infinit and a state (weak or strong) that
								determines whether usage of the token in subsequent services is
								provided or not.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="AdditionalDataTypeTwo">
        <xsd:sequence>
          <xsd:element name="AdditionalDataKey" type="types:AdditionalDataKeyType">
            <xsd:annotation>
              <xsd:documentation>Type that defines the keys/types used as
                        additionaldata collected from member. All content only valid with
                        respect to a customizing.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="AdditionalData" type="types:AdditionalDataValueType">
            <xsd:annotation>
              <xsd:documentation>Value of additional member data</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="AdditionalDataKeyType">
        <xsd:restriction base="types:LICBaseType" />
      </xsd:simpleType>
      <xsd:simpleType name="AdditionalDataValueType">
        <xsd:restriction base="xsd:string">
          <xsd:maxLength value="255" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="AssignedAliasType">
        <xsd:annotation>
          <xsd:documentation>Assigned alias represent as subset of Alias withint the PAYBACK program. The value for an alias of type Assigned Alias must be provided externally PB will not generate the value for alias of such type</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Alias" type="types:PrincipalTypeTwo">
            <xsd:annotation>
              <xsd:documentation>Alias identify a member within the PAYBACK program.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="AssignedAliasType" type="types:AssignedPrincipalVariantType">
            <xsd:annotation>
              <xsd:documentation>Alias type defines the classification and derived
                        from this the usage of an alias.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="AssignedPrincipalVariantType">
        <xsd:restriction base="xsd:string">
          <xsd:minLength value="1" />
          <xsd:maxLength value="50" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="AccountBalanceDetailType">
        <xsd:annotation>
          <xsd:documentation>
                Type used to transfer detailled information about an account
                balance. It comprises not only absolute points in loyalty currency but
                also information about available points and expired points.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="LoyaltyCurrency" type="types:LoyaltyCurrencyType">
            <xsd:annotation>
              <xsd:documentation>
                        The loyalty currency of all amounts in this account
                        balance record.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="TotalPointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
                        The total amount of points in this account.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="AvailablePointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
                        The amount of available points in this account.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="BlockedPointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
                        The amount of blocked points in this account.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="TotalCollectedPointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
                        The amount of total collected points in this account.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="TotalSpendPointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
                        The amount of total spend points in this account.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="ExpiryAnnouncement" type="types:ExpiryAnnouncementType">
            <xsd:annotation>
              <xsd:documentation>
                        An optional announcement to warn the member that
                        some of his points will expire soon.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="ExpiryStatistics" type="types:ExpiryStatisticsType">
            <xsd:annotation>
              <xsd:documentation>
                        An optional statistics information to inform the
                        member how many point already expired.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="MemberProfileInfoType">
        <xsd:annotation>
          <xsd:documentation>Type for profile information for the current member in case
                only anonymous member data is allowed to be used at the client side.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="Gender" type="types:GenderType" />
          <xsd:element name="Age" type="types:AgeType" />
          <xsd:element minOccurs="0" name="PreferredLanguage" type="types:IsoLanguageType">
            <xsd:annotation>
              <xsd:documentation>optional preferred language can be set by the member
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="PreferredCountrySettings" type="types:IsoCountryType">
            <xsd:annotation>
              <xsd:documentation>optional setting of country specific value format
                        (e.g. number, date)</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="Country" type="types:IsoCountryType">
            <xsd:annotation>
              <xsd:documentation>Country of residence of the member
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="SurroundingArea" type="types:SurroundingAreaType">
            <xsd:annotation>
              <xsd:documentation>The area that the member's addess belongs to.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="GenderType">
        <xsd:annotation>
          <xsd:documentation>
                Type for the genders of the PAYBACK members (LICs only).
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="types:LICBaseType" />
      </xsd:simpleType>
      <xsd:simpleType name="AgeType">
        <xsd:restriction base="xsd:nonNegativeInteger">
          <xsd:minInclusive value="0" />
          <xsd:maxInclusive value="200" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="IsoLanguageType">
        <xsd:annotation>
          <xsd:documentation>
                Type for language codes according to the ISO 639-1:2002 standard. Only two letter lower
                case ASCII character strings are allowed.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:token">
          <xsd:whiteSpace value="collapse" />
          <xsd:pattern value="[a-z]{2}" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="IsoCountryType">
        <xsd:annotation>
          <xsd:documentation>
                Type for country codes according to the ISO 3166-1 ALPHA-2 standard. Only two letter upper
                case ASCII character strings are allowed.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:token">
          <xsd:whiteSpace value="collapse" />
          <xsd:pattern value="[A-Z]{2}" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="SurroundingAreaType">
        <xsd:annotation>
          <xsd:documentation>Type for surrounding area.       </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="AreaKey" type="types:SurroundingAreaKeyType">
            <xsd:annotation>
              <xsd:documentation>Part of the address data information that can be
                        used to determine the surrounding area of the member (e.g. ZIP
                        Code, city, region)</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="AreaValue" type="types:SurroundingAreaValueType">
            <xsd:annotation>
              <xsd:documentation>The concrete information derived from the address
                        data of the member that can be used to determine the sur-rounding
                        area</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="SurroundingAreaKeyType">
        <xsd:annotation>
          <xsd:documentation>
                Type forsurrounding area identifier.
                1 - ZIP
                2 - CITY
                3 - DISTRICT
                4 - PROVINCE
                5 - REGION
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:integer">
          <xsd:enumeration value="1" />
          <xsd:enumeration value="2" />
          <xsd:enumeration value="3" />
          <xsd:enumeration value="4" />
          <xsd:enumeration value="5" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="SurroundingAreaValueType">
        <xsd:annotation>
          <xsd:documentation>
                Type for surrounding area value.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:maxLength value="40" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="MemberSubscriptionsWithOrderDateType">
        <xsd:sequence>
          <xsd:element name="MarketingPermission" type="types:SubscriptionWithOrderDateType">
            <xsd:annotation>
              <xsd:documentation>
                        The general marketing and research agreement with the PAYBACK member.
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="NewsletterAgreement" type="types:SubscriptionWithOrderDateType">
            <xsd:annotation>
              <xsd:documentation>
                        The email newsletter marketing agreement with the PAYBACK member.
                        </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="SmsAgreement" type="types:SubscriptionWithOrderDateType">
            <xsd:annotation>
              <xsd:documentation>
                        The SMS marketing agreement with the PAYBACK member.
                        </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="SubscriptionWithOrderDateType">
        <xsd:sequence>
          <xsd:element name="Subscription" type="types:SubscriptionType">
            <xsd:annotation>
              <xsd:documentation>Type that holds the consent to subscriptions
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="OrderDate" type="types:IsoDateTimeType">
            <xsd:annotation>
              <xsd:documentation>Type that holds information about the order date of
                        a subscription for a
                        PAYBACK member.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" name="SubscriptionVersion" type="types:LICBaseType">
            <xsd:annotation>
              <xsd:documentation>Denotes the versions of a subscription in order to differentiate between legal terms and conditions with respect to the PAYBACK program that the members has agreed on. This might influence program behaviour towards the member.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="SubscriptionType">
        <xsd:annotation>
          <xsd:documentation>
                Type that holds the consent to subscriptions for marketing, research,
                email service, sms service and customizing specific generic services.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:int">
          <xsd:enumeration value="1" />
          <xsd:enumeration value="2" />
          <xsd:enumeration value="3" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="FurtherSubscriptionWithOrderDateType">
        <xsd:annotation>
          <xsd:documentation>Type that holds information about the additional
                subscriptions of a PAYBACK member. All content only valid with respect to
                a customizing.</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="FurtherSubscriptionKey" type="types:FurtherSubscriptionKeyType">
            <xsd:annotation>
              <xsd:documentation>Type that defines the keys/types used as additional
                        subscription. All content only valid with respect to a
                        customizing.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="FurtherSubscription" type="types:SubscriptionWithOrderDateType">
            <xsd:annotation>
              <xsd:documentation>Value of the addtional subscription
                    </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="FurtherSubscriptionKeyType">
        <xsd:restriction base="types:LICBaseType" />
      </xsd:simpleType>
      <xsd:complexType name="AssociatedLoyaltyCardListType">
        <xsd:annotation>
          <xsd:documentation>
				List of member card details for request mobile number
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element maxOccurs="unbounded" name="AssociatedLoyaltyCardDetails" type="types:AssociatedLoyaltyCardDetailsTypes" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="AssociatedLoyaltyCardDetailsTypes">
        <xsd:annotation>
          <xsd:documentation>
				Single member card details for request mobile number
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element name="LoyCardNumber" type="types:LoyCardNumberType">
            <xsd:annotation>
              <xsd:documentation>
						This element represents the loyalty card number
					</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="EnrollmentSource" type="types:EnrollmentSourceType">
            <xsd:annotation>
              <xsd:documentation>
						Member's Enrollment source.
					</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="PromoCode" type="types:PromoCodeType">
            <xsd:annotation>
              <xsd:documentation>
						Member's Pomo Code(Enrolled Partner promocode)
					</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="LogoCode" type="types:LogoCodeType">
            <xsd:annotation>
              <xsd:documentation>
						Member's Logo Code(Membership TYPE).
					</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="LinkedMobile" type="types:MobileNumberType">
            <xsd:annotation>
              <xsd:documentation>
						Mobile number is used to identify MI(MOBILE_ID) association or associated profile numbers
					</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="AccountBalanceDetails" type="types:AccountBalanceDetailsType">
            <xsd:annotation>
              <xsd:documentation>When GetAccountBalanced method completed successfully, a list containing 1 AccountBalanceDetail records is returned. There's exactly 1 record for each loyalty currency that was found when no currency was selected. In the case that a currency was selected, a single record is returned.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="EnrollmentSourceType">
        <xsd:annotation>
          <xsd:documentation>
				Member's Enrollment source.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:maxLength value="1" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="PromoCodeType">
        <xsd:annotation>
          <xsd:documentation>
				Member's Pomo Code(Enrolled Partner promocode)
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:maxLength value="1" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:simpleType name="LogoCodeType">
        <xsd:annotation>
          <xsd:documentation>
				Member's Logo Code(Membership TYPE).
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:maxLength value="1" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="GetMemberCardDetailsByMobileResponseType">
        <xsd:annotation>
          <xsd:documentation>
						Response message for GetMemberCardDetailsByMobile API
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="GetMemberCardDetailsByMobileFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="MemberDetailsType">
        <xsd:annotation>
          <xsd:documentation>
				MemberDetails Type has following three member details
				1. Loyalty card number
				2. Mobile Number
				3. EmailId
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" maxOccurs="1" name="LoyCardnumber" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
						16 Digit Loyalty card Number
					</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="MobileNumber" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
						Mobile number is used to identify MI(MOBILE_ID) association or associated profile numbers
					</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="Email" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
						Customer Email ID to retrive payback cards
					</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="ConfirmBurnPointsResponseType">
        <xsd:annotation>
          <xsd:documentation>
			Standard response base type with fault message object.

			Fault data sent for the Confirm burn points service call
			
			Map all the Fault codes and Fault messages			
			</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="0" name="ConfirmBurnPointsFault" type="types:FaultDescriptorType" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="RedemptionChannelType">
        <xsd:annotation>
          <xsd:documentation>
				Classification of the Redemption channel used for a
				certain activity (e.g. POS, Kiosk,...)
			</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
          <xsd:whiteSpace value="collapse" />
          <xsd:pattern value="[a-zA-Z]*" />
          <xsd:minLength value="1" />
        </xsd:restriction>
      </xsd:simpleType>
      <xsd:complexType name="PrepaidAccountBalanceDetailsType">
        <xsd:annotation>
          <xsd:documentation>
						Type used to transfer detailed information about an
						account balance. It comprises not only absolute points
						in loyalty currency but also information about available
						points and expired points.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="LoyaltyCurrency" type="types:LoyaltyCurrencyType">
            <xsd:annotation>
              <xsd:documentation>
								The loyalty currency of all amounts in this
								account balance record.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="PartnerLmid" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation> LMID (loyalty Merchant Id) </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="TotalPrepaidEarns" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
						  			Prepaid account balance with the no. of points available after the transaction for the given Partner.
						  		</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="TotalPrepaidBurns" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
						  			Prepaid account balance with the no. of points available after the transaction for the given Partner.
						  		</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="ThresholdAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
						  			Threshold Amount.
						  		</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="TotalPrepaidBalance" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
						  			Prepaid account balance with the no. of points available after the transaction for the given Partner.
						  		</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="ValidTillDate" type="types:ExpiryDateType">
            <xsd:annotation>
              <xsd:documentation>
								The expected date of expiration.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="PrepaidAccountBalanceDetailsBurnType">
        <xsd:annotation>
          <xsd:documentation>
						Type used to transfer detailed information about an
						account balance. It comprises not only absolute points
						in loyalty currency but also information about available
						points and expired points.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="LoyaltyCurrency" type="types:LoyaltyCurrencyType">
            <xsd:annotation>
              <xsd:documentation>
								The loyalty currency of all amounts in this
								account balance record.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="PartnerLmid" type="types:OrganizationShortNameType">
            <xsd:annotation>
              <xsd:documentation> LMID (loyalty Merchant Id) </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="TotalPrepaidPointsAmount" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
								The total amount of points in this account.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="PrepaidOrderId" type="types:ActivityIdType">
            <xsd:annotation>
              <xsd:documentation>
								Order id or transaction reference
								number
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="TxnPrepaidPointsBlocked" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
								The amount of blocked points in this transaction
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="CampaignId" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation>
						  			Campaign Id provided by the partner
						  		</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="AvailablePrepaidBalance" type="types:LoyaltyAmountType">
            <xsd:annotation>
              <xsd:documentation>
						  			Prepaid account balance with the no. of points available after the transaction for the given Partner.
						  		</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element minOccurs="0" maxOccurs="1" name="ValidTillDate" type="types:ExpiryDateType">
            <xsd:annotation>
              <xsd:documentation>
								The expected date of expiration.
							</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
    </xsd:schema>
    <xsd:schema xmlns:types="http://www.zillionrewards.in/lmsglobal/xsd/v1/types" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.zillionrewards.in/lmsglobal/ws/v1/extint/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <xsd:element name="GetAccountBalanceRequest">
        <xsd:annotation>
          <xsd:documentation>
						Identifies the member and his account based on the given
						alias and then returns the actual balance of the
						account. As an account can be setup to cover more than
						one loyalty currency, the caller of this method should
						indicate in which loyalty currency he is interested. If
						no selection is made, the method will return a list
						comprising all balances for all currencies applicable to
						the account in question.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="Authentication" type="types:AuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
									Data used to identify and authenticate the
									member requesting the redemption.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="LoyaltyCurrency" type="types:LoyaltyCurrencyType">
              <xsd:annotation>
                <xsd:documentation>
									Optional field to select the loyalty
									currency in multi-currency systems. If not
									specified, all balances in all currencies
									will be returned.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="SendLoyCardNo" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
									Optional field which specifies whether to send OR not to send loyalty
									card number in the response.
									If not specified, or if this field value is 'NO', loyalty card no
									element will not be returned in the response.
									If this field value is 'YES', Loyalty Card Number is returned in
									the response.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="IsPrepaid" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
										Decides if the point is prepaid
										YES -Point is prepaid
										No- Point is not prepaid
									</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="Lmid" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation> LMID (loyalty Merchant Id) </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetAccountBalanceResponse">
        <xsd:annotation>
          <xsd:documentation>
						When GetAccountBalanced method completed successfully, a
						list containing 1 to n AccountBalanceDetail records is
						returned. There's exactly 1 record for each loyalty
						currency that was found when no currency was selected.
						In the case that a currency was selected, a single
						record is returned.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:GetAccountBalanceFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element name="AccountBalanceDetails" type="types:AccountBalanceDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
											AccountBalanceDetail record filled by the
											backend according to the loyalty currency
											selected.
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="unbounded" name="PrepaidAccountBalanceDetails" type="types:PrepaidAccountBalanceDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
											Summary of account balance with the no. of points available before and after the transaction.
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="LoyaltyCardNumber" type="types:LoyCardNumberType">
                  <xsd:annotation>
                    <xsd:documentation>
											Member 16 digit Payback Card Number.
											Optional field, returned only if specified in the request element
											'SendLoyCardNo'.
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="CreateVoucherRedemptionRequest">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="Authentication" type="types:AuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
									Data used to identify and authenticate the
									member requesting the redemption.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="PartnerContext" type="types:PartnerContextType">
              <xsd:annotation>
                <xsd:documentation>
									Data used to identify the partner
									organization of this redemption as precise
									as possible (including the business unit,
									branch and maybe the terminal).
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="LoyaltyCurrency" type="types:LoyaltyCurrencyType">
              <xsd:annotation>
                <xsd:documentation>
									Optional field to select the loyalty
									currency in multi-currency systems. It can
									be left out when the inquiry goes to a
									single-currency system.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="RedemptionPointsAmount" type="types:LoyaltyAmountType">
              <xsd:annotation>
                <xsd:documentation>
									The amount of points of this redemption.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="RedemptionDateTime" type="types:IsoDateTimeType">
              <xsd:annotation>
                <xsd:documentation>
									The point in time when this redemption
									happened.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="RedemptionReceiptCode" type="types:ExternalIdType">
              <xsd:annotation>
                <xsd:documentation>
									The receipt id identifying the transaction
									made in the POS.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="VoucherCode" type="types:ExternalIdType">
              <xsd:annotation>
                <xsd:documentation>
									An optional field to transfer the voucher
									number. If no voucher number is given, it
									may be assumed that the ReceiptCode can be
									interpreted as a voucher number.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="ChannelClassifier" type="types:ChannelClassifierType">
              <xsd:annotation>
                <xsd:documentation>
									Field that identifies the channel that was
									used to submit this redemption request.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="GetMobileAndEmail" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
								GetMobileAndEmail take boolean values
								YES - API should return loyalty card, mobile and email in case of error
								NO - API should not return any member details
							</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="CreateVoucherRedemptionResponse">
        <xsd:annotation>
          <xsd:documentation>
						When GetAccountBalanced method completed successfully, a
						list containing 1 to n AccountBalanceDetail records is
						returned. There's exactly 1 record for each loyalty
						currency that was found when no currency was selected.
						In the case that a currency was selected, a single
						record is returned.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:VoucherRedemptionFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element name="AccountBalanceDetails" type="types:AccountBalanceDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
											AccountBalanceDetail record filled by the
											backend according to the loyalty currency
											selected.
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="ActivityId" type="types:ActivityIdType">
                  <xsd:annotation>
                    <xsd:documentation>
											Member activity id or transaction reference
											number
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="MemberDetails" type="types:MemberDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
											MemberDetails type is having following three member details
											Loyalty card number
											Mobile Number
											Email Id
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="IsMobileLinkedRequest">
        <xsd:annotation>
          <xsd:documentation>
						Identifies if the mobile number is linked to PAYBACK card.
						if PAYBACK member wants to use his mobile number at POS instead of
						LOYALTY card number, this service verifies if the account is
						linked to mobile number
						Returns 'YES' or 'NO'

						Below Additional information sent in the response.
						Member's full name, email id, and card number will be sent as optional
						infromation.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="MobileNumber" type="types:MobileNumberType">
              <xsd:annotation>
                <xsd:documentation>
									10 digit mobile number
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="IsMobileLinkedResponse">
        <xsd:annotation>
          <xsd:documentation>
						IsMobileLinkedResponse returns status as 'YES' or 'NO' based on mobile is linked with
						any PAYBACK member or not.
						If mobile is linked then other infromation like full name, email and
						card
						number will be returned in the response as optional fields.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:IsMobileLinkedFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="1" maxOccurs="1" name="Status" type="types:StatusType">
                  <xsd:annotation>
                    <xsd:documentation>
											Mobile linked status(Yes/No)
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="FullName" type="types:FullNameType">
                  <xsd:annotation>
                    <xsd:documentation>
											Member's full name
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="Email" type="types:EmailType">
                  <xsd:annotation>
                    <xsd:documentation>
											Member's Email id
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="LoyCardNumber" type="types:LoyCardNumberType">
                  <xsd:annotation>
                    <xsd:documentation>
											Member's Loy Card Number
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="EnforcePinStatusRequest">
        <xsd:annotation>
          <xsd:documentation>
						This service checks the PIN status of a PAYBACK member.
						If member is having PIN = DDMM(same as DOB), this service generates
						new PIN and triggers Email, and sms to linked mobile with PIN
						details.

						PAYBACK member is identified based on 16-digit loyalty card no OR
						10-digit linked mobile number.
						This service validates member and card state.
						For valid cards, checks if PIN already exists for this member.
						If Pin exists, sends response as 'PIN Already Set'

						If Pin is NULL or PIN == DDMM(same as DOB) and if either registered
						email OR linked mobile exists,
						New PIN is generated and sent to:
						1. EMail and sms, if both email and linked mobile exists
						2. EMail, only if registered email is available
						3. SMS, only if linked mobile exists

						ERROR response is sent to contact Call center for the below scenarios:
						1. If both linked mobile and email doesnot exists
						2. If member is dummy
						3. If member is having default DOB('11/11/1911')

						If member OR card validation fails, appropriate ERROR code and
						message is sent in the response
						If valid PIN exists or new PIN is generated and PIN is sent to email
						or sms, appropriate success code and message is sent in the
						response
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="Authentication" type="types:AuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
									Data used to identify and authenticate the member.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="EnforcePinStatusResponse">
        <xsd:annotation>
          <xsd:documentation>
						Success Response codes:
						LMS_SCS_0001=Pin Already Set
						LMS_SCS_0002=New PIN sent to Email and Linked mobile
						LMS_SCS_0003=New PIN sent to Email
						LMS_SCS_0004=New PIN sent to Linked mobile

						Fault Response codes:
						Fault data sent for the EnforcePinStatus service call

						LMS_00001=Invalid request, XML validation failed
						LMS_00002=Unknown failure, please contact PAYBACK support
						LMS_00003=Member not found, Either loyalty card no is not valid OR mobile not
						linked OR member/Card state is not valid
						LMS_00012=Wrong communication protocol used. The protocol should be either HTTP
						or HTTPS. Please check with PAYBACK if both HTTP and HTTPS are
						allowed.
						LMS_00013=Invalid request, PrincipalClassifier is invalid
						LMS_00018=Both Email and linked mobile not available to send PIN details, please
						contact Call center to update profile information.
						LMS_00019=PIN generation failed, please contact call center. Member is dummy OR
						DOB not updated(DOB is default)

					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:EnforcePinStatusFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element name="EnforcePinStatusSuccess" type="types:SuccessResponseType">
                  <xsd:annotation>
                    <xsd:documentation />
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="VerifyMembershipRequest">
        <xsd:annotation>
          <xsd:documentation>
						This API is for Checking whether member belongs to particular
						PromoCodes mapped to the partner.
						Partner will send member Card# or MI and additionally pass LMID in the
						request.

						LMS will maintain LMID mapping to Promocodes
						For Example: Phantaloon LMID is 65555 and Promocodes - PTL, PTT, PTF,
						PTS, PTO

						If No Mapping is done, api will return ‘No’ in the response
						If member promocode matches with LMID-Promocode map, api will return
						‘Yes’ in the VerifyMembership api response
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="Authentication" type="types:AuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
									Data used to identify and authenticate the member requesting for
									membership verification
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="PartnerShortName" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation>
									Short name that identifies the partner organization - Partner LMID
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="VerifyMembershipResponse">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:VerifyMembershipFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="1" maxOccurs="1" name="Status" type="types:StatusType">
                  <xsd:annotation>
                    <xsd:documentation>
											verify membership status(Yes/No)
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberCardsByEmailIdRequest">
        <xsd:annotation>
          <xsd:documentation>
						This api is called by partner who want to retrieve customer PAYBACK
						information by 'email-id' of the customer.
						Partner will send lmid(loyalty merchant id) and email-id of the customer
						in the request.
						In response, this api returns below PAYBACK information of the
						customer
						1. 'PAYBACK card number' - 16 digit loyalty card no
						2. 'Total available points' for redemption in member's Payback
						account
						3. 'latest transaction date' and 'partner lmid' of the latest
						transaction
						4. 'latest transaction date with partner' and 'lmid of partner' sent
						in the request
						5. 'enrollment source' of the member's payback card
						6. 'promocode' of the member's payback card

						Members are searched by email-id (exact search and case insensitive)
						All the active Payback cards found are returned in the response.
						There is no specific sorting of the cards retreived.

						If LMID passed in the request is the PARENT PARTNER lmid, 'LAST
						TRANSACTION DATE WITH PARTNER' will be -
						member's latest transaction date with the parent partner OR with any of
						the child partners, whichever is the latest.

						If LMID passed in the request is the CHILD PARTNER lmid, 'LAST
						TRANSACTION DATE WITH PARTNER' will be -
						member's latest transaction date with the child partner
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="Email" type="types:EmailType">
              <xsd:annotation>
                <xsd:documentation>
									Customer Email ID to retrive payback cards
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="PartnerShortName" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation>
									Short name that identifies the partner organization - Partner LMID
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="FilterResult" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
									Filter out the member based on following filters
									Takes following values
									YES - filter should be applied in following sequence
									1 - Members with Linked mobile
									2 - Members with recently used(Earn, Burn and profile update)
									3 - Member with highest points
									4 - Member with recent registration(signedup date)
									No- No filter should be applied
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberCardsByEmailIdResponse">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:GetMemberCardsByEmailIdFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="1" maxOccurs="unbounded" name="MemberCardDetails" type="types:MemberCardDetailsType">
                  <xsd:annotation>
                    <xsd:documentation />
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetSegmentedDataRequest">
        <xsd:annotation>
          <xsd:documentation>
						To fetch user details based on the LMID.
						</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="Identification" type="types:MemberIdentificationType">
              <xsd:annotation>
                <xsd:documentation>Data used to identify and authenticate the
									member</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="LMID" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation>
									Short name that identifies the partner organization - Partner LMID
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="PartnerAuthorizationKey" type="types:PartnerAuthorizationKeyType">
              <xsd:annotation>
                <xsd:documentation>
	                            Partner authorization key to check, if the partner is provisioned.
	                    	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="StroreID" type="xsd:string">
              <xsd:annotation>
                <xsd:documentation>
								StorID
							</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="TillID" type="xsd:string">
              <xsd:annotation>
                <xsd:documentation>
								TillID
							</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="StoreManager1MobileNo" type="types:MobileNumberType">
              <xsd:annotation>
                <xsd:documentation> The mobile number of the Store Manager.
										</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="StoreManager2MobileNo" type="types:MobileNumberType">
              <xsd:annotation>
                <xsd:documentation> The mobile number of the Store Manager.
										</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetSegmentedDataResponse">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:GetSegmentedDataFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="1" maxOccurs="1" name="LMID" type="types:OrganizationShortNameType">
                  <xsd:annotation>
                    <xsd:documentation>
									Short name that identifies the partner organization - Partner LMID
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="LoyCardNumber" type="types:LoyCardNumberType">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents the loyalty card number
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="FirstName" type="types:FirstNameType">
                  <xsd:annotation>
                    <xsd:documentation>
										The first name of the PAYBACK member.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="LastName" type="types:LastNameType">
                  <xsd:annotation>
                    <xsd:documentation>
									The last name of the PAYBACK member.
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="CurrentTier" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Central PremiumTier.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="CurrentTierStartDate" type="xsd:date">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Central PremiumTier dateTime.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="LTMSpends" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents LTM Spends.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="NewStatus" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents New Status.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="ReviewMonth" type="xsd:date">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Review Month.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="SpendsFromTierStartDateTillToday" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Spends Till dateTime.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="BalSpendsCurrenTierRetention" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Balance Spends Current Tier Retention.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="SpendsInNineMonth" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Balance Spends In Nine Month.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="SpendsInElevenMonth" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Balance Spends In Eleven Month.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="BalSpendTierUpgradeInOneMonth" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Balance Tier Upgrade In One Month.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="BalSpendTierUpgradeInThreeMonth" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Balance Tier Upgrade In Three Month.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="CampaignFormat" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Campaign Format.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="CampaignStartDate" type="xsd:date">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Campaign Start dateTime.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="EndDateOfOffer" type="xsd:date">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Campaign End dateTime.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="SpendTargetAtCurrentFormat" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Campaign Spends.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="FrequencyTargetAtCurrentFormat" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Spends Frequency Achieved.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="SpendsAchievedAtCurrentFormat" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Spends Achieved.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="FrequencyAchievedCurrentFormat" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											Frequency Achieved at current format Under 1x1 during campaign..
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="BalSpendsRequiredCurrentFormat" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Spends At Current Format.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="BalFrequencyReqdCurrentFormat" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Spend Frequency.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="MemberEligibleCrossFormatOffer" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
											This element represents Cross Format.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ForgotPasswordRequest">
        <xsd:annotation>
          <xsd:documentation>INTF:ForgotPassword - Execute generation of new
						password (assigned
						alias) and send this to member using via preferred channel and contact
						data of the member.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="Authentication" type="types:MemberAliasAuthenticationType">
              <xsd:annotation>
                <xsd:documentation>Data used to identify and authenticate the
									member</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="CommunicationChannel" type="types:CommunicationChannelType">
              <xsd:annotation>
                <xsd:documentation>The communication channel describes the
									medium used by the member to interact with PAYBACK
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="SendMobileAndEmail" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>The SendMobileAndEmail is an optional element in the request to decide whether to send masked mobile and emial id in the response. 
								It takes two values
								"YES" - returns masked mobile and email
								"NO" - mobile and email ids will not be returned
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="DateOfBirth" type="types:DateOfBirthType">
              <xsd:annotation>
                <xsd:documentation>
                       					 The date of birth of the PAYBACK member.
                   					 </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ForgotPasswordResponse">
        <xsd:annotation>
          <xsd:documentation>For errors see separate error code document.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:ForgotPasswordFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element name="MobileNumber" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation />
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="EmailId" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation />
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="OrderStatusEnquiryRequest">
        <xsd:annotation>
          <xsd:documentation> INTF:OrderStatusEnquiryRequest
					Retrieve order details by passing - 'order id' and 'redemption channel' in the request.
					Retrieve list of orders of a specific 'partner' and 'redemption channel' for a period by passing - 
						(partner lmid, redemption channel, date range - From and To dates) in the request
					Retrieve list of orders of a 'member with specific partner and redemption channel' by passing – 
						(partner lmid, loyalty card no OR linked mobile, redemption channel, date range - From and To dates) in the request
					There is also an option to filter for specific partner terminal. 
					Order list is sorted by Order Date - descending order </xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:choice>
              <xsd:element name="Order" type="types:OrderType">
                <xsd:annotation>
                  <xsd:documentation>
										Retrieve order details by passing order id and redemption channel in
										the request
									</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="OrderReportFilter" type="types:OrderReportFilterType">
                <xsd:annotation>
                  <xsd:documentation>Retrieve List of Orders
										Reports can be fetched for the below filters - [LMID, Redemption Channel, FROM Date, TO Date] Mandatory
										1. LMID, Redeem channel, From Date and To Date
										2. LMID, LTID, Redeem channel, From Date and To Date
										3. LMID, Redeem Channel, Authentication(loy card no OR mobile no), From Date and To Date
										4. LMID, LTID, Redeem Channel, Authentication(loy card no OR mobile no), From Date and To Date</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
            </xsd:choice>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="OrderStatusEnquiryResponse">
        <xsd:annotation>
          <xsd:documentation>
						order details are returned in the response. Order list is sorted by
						Order Date in descending order.
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:OrderStatusEnquiryFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="0" maxOccurs="unbounded" name="OrderDetails" type="types:OrderDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
											Order Details filled by the backend.
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="TotalResultSize" type="types:ResultSize">
                  <xsd:annotation>
                    <xsd:documentation>
											returns number of available records found for this service call.
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ReverseVoucherRedemptionRequest">
        <xsd:annotation>
          <xsd:documentation>INTF# ReverseVoucherRedemption:
						allows both 'partial' and 'complete' refund of points
						allows refund for specific channels – PG, OTC, POS etc.(configurable at Payback)
						Order Refund is not allowed for 'WEB' and 'CC' (ofbiz orders)
						allows Refund for both 'Pending' and 'Completed' Orders
						Refund is allowed only within REFUND period (REFUND days configurable at Payback)</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:choice>
              <xsd:element name="OrderId" type="types:InvoiceType">
                <xsd:annotation>
                  <xsd:documentation />
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="ActivityId" type="types:InvoiceType">
                <xsd:annotation>
                  <xsd:documentation />
                </xsd:annotation>
              </xsd:element>
            </xsd:choice>
            <xsd:element name="RedemptionChannel" type="types:InvoiceType">
              <xsd:annotation>
                <xsd:documentation />
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="RefundPoints" type="types:LoyaltyAmountType">
              <xsd:annotation>
                <xsd:documentation />
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="PartnerExtReferenceNumber" type="types:ExternalIdType">
              <xsd:annotation>
                <xsd:documentation />
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="IsFinalOrderRefund" type="types:IsFinalOrderRefundType">
              <xsd:annotation>
                <xsd:documentation>
									FALSE, if refund is allowed again.
									TRUE, if refund is final and no further refunds allowed.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="RefundRemarks">
              <xsd:annotation>
                <xsd:documentation />
              </xsd:annotation>
              <xsd:simpleType>
                <xsd:restriction base="xsd:string" />
              </xsd:simpleType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ReverseVoucherRedemptionResponse">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:ReverseVoucherRedemptionFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element name="ReferenceTransactionId" type="types:ActivityIdType">
                  <xsd:annotation>
                    <xsd:documentation />
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="LoyaltyCardNumber" type="types:LoyCardNumberType">
                  <xsd:annotation>
                    <xsd:documentation>
											16 digit Payback Card Number
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetAccountTransactionsByPartnerRequest">
        <xsd:annotation>
          <xsd:documentation>INTF# GetAccountTransactionsByPartner :
						API based (Real time retrieval) of  Point summary 
						and transactions of a member with specific partner.
						
						Partner can send either payback card number OR linked mobile no of the customer, and LMID of the partner.
						By default, last 10 transactions are returned.
						For transaction history, Partner has to send 'start date' and 'end date'</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="Authentication" type="types:AuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
									payback card number OR linked mobile no of the customer.
									Transactions of a member with this payback card number is returned.
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="IsPrepaid" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
									Decides if the point is prepaid
									YES -Point is prepaid
									No- Point is not prepaid
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="FromDate" type="types:CalendarDayType">
              <xsd:annotation>
                <xsd:documentation>Transactions from this date is returned
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="ToDate" type="types:CalendarDayType">
              <xsd:annotation>
                <xsd:documentation>Transactions till this date is returned
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="Partner" type="types:PartnerType">
              <xsd:annotation>
                <xsd:documentation>LMID of the partner. Complex Type having LMID(mandatory), hasChild(optional)
									HasChild - when set to 1,
										- Return member transactions with all child partners of the partner as well
									Haschild - when set to 0,
										- Return only transactions of a member with the partner LMID sent in the request</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="PartialInfoRequest" type="types:PartialInfoRequestType">
              <xsd:annotation>
                <xsd:documentation>Type which decides if, only partial
									transaction details Or Complete transaction details has to be
									returned</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetAccountTransactionsByPartnerResponse">
        <xsd:annotation>
          <xsd:documentation>Scope of the GetAccountTransactionsByPartner API:
						Real time retrieval of Point summary and transactions of a member with
						specific partner, using PAYBACK card number or mobile number of the customer.

						Partner has to send customer's PAYBACK Card number Or linked Mobile no.
						and LMID
						By default, last 10 transactions are returned.

						Start Date and End Dates are optional.
						For transaction history, partner has to send 'start date' and 'end
						date'.
						Fetch 1000 transactions that falls within the 'start date' and 'end
						date'(max limit configurable at PAYBACK)</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:GetAccountTransactionsByPartnerFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="0" maxOccurs="unbounded" name="Activity" type="types:ActivityDetailsType">
                  <xsd:annotation>
                    <xsd:documentation />
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="AccountBalanceDetails" type="types:AccountBalanceDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>Below Customer point details is returned by Payback.
											- Total Point Balance
											- Total Available points for redemption
											- Total points blocked (blocked earn points)
											- Points going to expire next month</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="PrepaidAccountBalanceDetails" type="types:PrepaidAccountBalanceDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
											Summary of account balance with the no. of points available before and after the transaction.
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="LoyaltyCardNumber" type="types:LoyCardNumberType">
                  <xsd:annotation>
                    <xsd:documentation>16 digit payback card number
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="TotalResultSize" type="types:ResultSize">
                  <xsd:annotation>
                    <xsd:documentation>
											Returns number of available records found for this service call.
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberTransactionsByPartnerRequest">
        <xsd:annotation>
          <xsd:documentation>INTF# GetAccountTransactionsByPartner :
					API based (Real time retrieval) of  Point summary 
					and transactions of a member with specific partner.
					
					Partner can send either payback card number OR linked mobile no of the customer, and LMID of the partner.
					By default, last 10 transactions are returned.
					For transaction history, Partner has to send 'start date' and 'end date'</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="Authentication" type="types:AuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
								payback card number OR linked mobile no of the customer.
								Transactions of a member with this payback card number is returned.
							</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="PartnerAuthorizationKey" type="types:PartnerAuthorizationKeyType">
              <xsd:annotation>
                <xsd:documentation>
											Partner authorization key to check, if the partner is provisioned and to 
											verify, if the partner is enabled for the real time earns or not.
										</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnMerchantId" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation>
										   Loyalty Merchant ID(LMID) of the merchant where the transaction took place.
										   Must be a valid LMID provided by Payback.
										</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnTerminalId" type="types:LoyaltyTerminalIdType">
              <xsd:annotation>
                <xsd:documentation>
											Loyalty Terminal ID(LTID) of the partner outlet where the transaction took place.
											Must be a valid LTID provided by Payback.
										   </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="PartnerUId" type="types:PartnerUIdType">
              <xsd:annotation>
                <xsd:documentation>
											Invoice number of this earn transaction sent by the partner.
											Unique identifictaion number which cannot be duplicated for a specific partner.
										   </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="IsPrepaid" type="xsd:string">
              <xsd:annotation>
                <xsd:documentation>
	                            Partner authorization key to check, if the partner is provisioned and to 
	                            verify, if the partner is enabled for the real time earns or not.
	                    	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="FromDate" type="types:CalendarDayType">
              <xsd:annotation>
                <xsd:documentation>Transactions from this date is returned
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="ToDate" type="types:CalendarDayType">
              <xsd:annotation>
                <xsd:documentation>Transactions till this date is returned
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="Partner" type="types:MultiplePartnerType">
              <xsd:annotation>
                <xsd:documentation>LMID of the partner. Complex Type having LMID(mandatory), hasChild(optional)
									HasChild - when set to 1,
										- Return member transactions with all child partners of the partner as well
									Haschild - when set to 0,
										- Return only transactions of a member with the partner LMID sent in the request</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="PartialInfoRequest" type="types:PartialInfoRequestType">
              <xsd:annotation>
                <xsd:documentation>Type which decides if, only partial
									transaction details Or Complete transaction details has to be
									returned</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberTransactionsByPartnerResponse">
        <xsd:annotation>
          <xsd:documentation>Scope of the GetAccountTransactionsByPartner API:
						Real time retrieval of Point summary and transactions of a member with
						specific partner, using PAYBACK card number or mobile number of the customer.

						Partner has to send customer's PAYBACK Card number Or linked Mobile no.
						and LMID
						By default, last 10 transactions are returned.

						Start Date and End Dates are optional.
						For transaction history, partner has to send 'start date' and 'end
						date'.
						Fetch 1000 transactions that falls within the 'start date' and 'end
						date'(max limit configurable at PAYBACK)</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:GetAccountTransactionsByPartnerFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="0" maxOccurs="unbounded" name="Activity" type="types:ActivityDetailsType">
                  <xsd:annotation>
                    <xsd:documentation />
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="AccountBalanceDetails" type="types:AccountBalanceDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>Below Customer point details is returned by Payback.
											- Total Point Balance
											- Total Available points for redemption
											- Total points blocked (blocked earn points)
											- Points going to expire next month</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="LoyaltyCardNumber" type="types:LoyCardNumberType">
                  <xsd:annotation>
                    <xsd:documentation>16 digit payback card number
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="TotalResultSize" type="types:ResultSize">
                  <xsd:annotation>
                    <xsd:documentation>
											Returns number of available records found for this service call.
										</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetAccountTransactionsRequest">
        <xsd:annotation>
          <xsd:documentation>INTF#010: Returns list of bookings within the account ordered by 
				effective date (date of occurrence of the event that triggered the booking) in descending
				or-der, optionally restricted by time-interval or number of records (start with latest).If a
				loyalty currency was included within the request, only the transactions details for the single
				currency will be returned. Otherwise, PAYBACK system returns transaction for all currencies.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:AuthorisedRequest">
              <xsd:sequence>
                <xsd:element name="Authentication" type="types:MemberTokenAuthenticationType">
                  <xsd:annotation>
                    <xsd:documentation>
									Data used to identify and authenticate the member requesting his account's transactions.
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="NoOfTransactionRecords" type="types:MatchLimitType">
                  <xsd:annotation>
                    <xsd:documentation>
									Defines the number of transaction records (regardless of the number of 
									events where the transactions are assigned to) which shound be returned.
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="Pagination" type="types:PaginationType">
                  <xsd:annotation>
                    <xsd:documentation>
									Parameters required if paging of resultset shoud be executed within the PAYBACK system (server-side paging)
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="SendExtData" type="types:StatusType">
                  <xsd:annotation>
                    <xsd:documentation>
									Flag to Send extended details
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetAccountTransactionsResponse">
        <xsd:annotation>
          <xsd:documentation>
  				For errors see separate error code document.
  			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:MessageResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="0" maxOccurs="unbounded" name="AccountTransactionEvent" type="types:AccountEventDetailType">
                  <xsd:annotation>
                    <xsd:documentation>
  									Event Data of events assigned to the accout via the chain Account -&gt; Membership -&gt; Alias -&gt; Event.
  								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="TotalResultSize" type="types:ResultSize">
                  <xsd:annotation>
                    <xsd:documentation>
  									returns number of available records found for this service call. Only returned if paging is used
  								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="CreateEarnTransactionRequest">
        <xsd:annotation>
          <xsd:documentation>
				Request to process points to the customer account
				near real time and customer should be able to view the same real time 
				across all PB channels.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="MemberAuthentication" type="types:MemberAuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
                                  	Data used to identify and authenticate the member.
                              	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="PartnerAuthorizationKey" type="types:PartnerAuthorizationKeyType">
              <xsd:annotation>
                <xsd:documentation>
	                            Partner authorization key to check, if the partner is provisioned and to 
	                            verify, if the partner is enabled for the real time earns or not.
	                    	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnMerchantId" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation>
	                           Loyalty Merchant ID(LMID) of the merchant where the transaction took place.
	                           Must be a valid LMID provided by Payback.
	                    	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnTerminalId" type="types:LoyaltyTerminalIdType">
              <xsd:annotation>
                <xsd:documentation>
								Loyalty Terminal ID(LTID) of the partner outlet where the transaction took place.
								Must be a valid LTID provided by Payback.
                               </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="PartnerUId" type="types:PartnerUIdType">
              <xsd:annotation>
                <xsd:documentation>
								Invoice number of this earn transaction sent by the partner.
								Unique identifictaion number which cannot be duplicated for a specific partner.
                               </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnInvoiceNumber" type="types:InvoiceType">
              <xsd:annotation>
                <xsd:documentation>
								Additional UID used by some Partners.
								Should be captured in Unique_identification
                               </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnAmount" type="types:LoyaltyAmountType">
              <xsd:annotation>
                <xsd:documentation>
						If Payback is calculating points, Partner has to send 
						transaction amount for Earns
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnPoints" type="types:LoyaltyAmountType">
              <xsd:annotation>
                <xsd:documentation>
							If Partner is calculating points, Partner has to send preallocated points 
							with this earn transaction that has to be credited to member's account.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnClassificationCode" type="types:TxnClassifierType">
              <xsd:annotation>
                <xsd:documentation>
								A code of length 15 identifying the type of transaction, which is displayed in the 
								transaction list and also used for analytics puposes; the value will be provided by 
								PAYBACK to the partner at the time of sign-up/partner on-boarding. Typical values:
									* CASH_CASH
									* BONUS_POINTS
									* GDWILL_PTS
									* RETRO
									* RECONCILIATION
                           	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnChannel" type="types:ChannelClassifierType">
              <xsd:annotation>
                <xsd:documentation>
								Channel Classification from where request has been sent e.g. POS, Kiosk, Web, etc.
								Communication Channel of the request.
                           	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnDateTime" type="types:TxnDateType">
              <xsd:annotation>
                <xsd:documentation>
								Txn Date &amp; Time for this earn transaction
                            </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnSettlementDate" type="types:TxnDateType">
              <xsd:annotation>
                <xsd:documentation>
								Partner settlement date for this earn transaction.
								Must be between the Txn Date and current date (both inclusive)
                            </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="AdditionalInfoForDisplay">
              <xsd:annotation>
                <xsd:documentation>
								Flex1 - Additional Info sent by the Partner used for the display purpose.
                            </xsd:documentation>
              </xsd:annotation>
              <xsd:simpleType>
                <xsd:restriction base="xsd:string">
                  <xsd:whiteSpace value="collapse" />
                  <xsd:minLength value="1" />
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnBatchNo">
              <xsd:annotation>
                <xsd:documentation>
								Activity_batch_number - Transaction Batch No to be sent by the Partner.
                               </xsd:documentation>
              </xsd:annotation>
              <xsd:simpleType>
                <xsd:restriction base="xsd:string">
                  <xsd:whiteSpace value="collapse" />
                  <xsd:pattern value="[0-9]*" />
                  <xsd:minLength value="1" />
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="0" name="BranchId">
              <xsd:annotation>
                <xsd:documentation>
								Flex8 - Transaction branch Id of Partner.
                               </xsd:documentation>
              </xsd:annotation>
              <xsd:simpleType>
                <xsd:restriction base="xsd:string">
                  <xsd:whiteSpace value="collapse" />
                  <xsd:minLength value="1" />
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="0" name="ActualTxnValue">
              <xsd:annotation>
                <xsd:documentation>
								Flex7 - Actual transaction value sent by the Partner.
								This is the actual transaction value and points will not 
								be earned on this amount.
                               </xsd:documentation>
              </xsd:annotation>
              <xsd:simpleType>
                <xsd:restriction base="xsd:string">
                  <xsd:whiteSpace value="collapse" />
                  <xsd:pattern value="[0-9]*" />
                  <xsd:minLength value="1" />
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="0" name="CampaignId">
              <xsd:annotation>
                <xsd:documentation>
								Campaign Id sent by the Partner.
                               </xsd:documentation>
              </xsd:annotation>
              <xsd:simpleType>
                <xsd:restriction base="xsd:string">
                  <xsd:whiteSpace value="collapse" />
                  <xsd:pattern value="[0-9]*" />
                  <xsd:minLength value="1" />
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="IsPrepaid" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
									Decides if the point is prepaid
									YES -Point is prepaid
									No- Point is not prepaid
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="BaseEarnTxn" type="types:BaseEarnTxnIds">
              <xsd:annotation>
                <xsd:documentation>
								Optional field to define the reference id of the base transaction. 
								This transaction is considered as a base transaction if this is empty or null
							</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="AdditionalData" type="types:AdditionalDataType">
              <xsd:annotation>
                <xsd:documentation>
								Key for the given line item. Key can be categorized into two:
								Fixed - Fields that we are already capturing, for e.g. VAT Amount, PaymentType, TxnUnit
								Variable Fields - For all other fields. This will be stored under a new table as key value pair
							</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="BasketData" type="types:BasketDataType">
              <xsd:annotation>
                <xsd:documentation>
								Basket data sent along with each earn request.
                            </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="CreateEarnTransactionResponse">
        <xsd:annotation>
          <xsd:documentation>For errors see separate error code document.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:CreateEarnTransactionResponseType">
              <xsd:sequence>
                <xsd:element minOccurs="0" maxOccurs="1" name="ZillionUId" type="types:PaybackIdType">
                  <xsd:annotation>
                    <xsd:documentation>
									If Earn Transaction is successful, Payback UID (activity id) is returned to the partner
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="PartnerUId" type="types:PartnerUIdType">
                  <xsd:annotation>
                    <xsd:documentation>
									If Earn Transaction is successful, Partner UID (Invoice No) is returned to the partner
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="LoyCardNumber" type="types:LoyCardNumberType">
                  <xsd:annotation>
                    <xsd:documentation>
									If Earn Transaction is successful, Loyalty Card Number is returned to the partner
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="AllocatedPoints" type="types:LoyaltyAmountType">
                  <xsd:annotation>
                    <xsd:documentation>
									If Earn Transaction is successful, the no of points earned with this request is returned
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="PrepaidAccountBalanceDetails" type="types:PrepaidAccountBalanceDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
						  			Summary of account balance with the no. of points available before and after the transaction.
						  		</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="AccountBalanceDetails" type="types:AccountBalanceDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
						  			Summary of account balance with the no. of points available before and after the transaction.
						  		</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="RejectedDetails" type="types:RejectedDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
									Rejected Code (RejectID) and reject reason is returned
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ReverseEarnTransactionRequest">
        <xsd:annotation>
          <xsd:documentation>
				Request to process reversal of points from the customer account
				near real time and customer should be able to view the same real time 
				across all PB channels.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="MemberAuthentication" type="types:MemberAuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
                                  	Data used to identify and authenticate the member.
                              	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="PartnerAuthorizationKey" type="types:PartnerAuthorizationKeyType">
              <xsd:annotation>
                <xsd:documentation>
	                            Partner authorization key to check, if the partner is provisioned and to 
	                            verify, if the partner is enabled for the real time earn reversals or not.
	                    	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnMerchantId" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation>
	                           Loyalty Merchant ID(LMID) of the merchant where the transaction took place.
	                           Must be a valid LMID provided by Payback.
	                    	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnTerminalId" type="types:LoyaltyTerminalIdType">
              <xsd:annotation>
                <xsd:documentation>
								Loyalty Terminal ID(LTID) of the partner outlet where the transaction took place.
								Must be a valid LTID provided by Payback.
                               </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="OldTxnId">
              <xsd:annotation>
                <xsd:documentation>
					 			Unique transaction UId of the original earn activity.
					 		</xsd:documentation>
              </xsd:annotation>
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:choice>
                    <xsd:element name="OldPartnerUId" type="types:PartnerUIdType">
                      <xsd:annotation>
                        <xsd:documentation>
											 Old Partner UId of the original Earn transaction.
										</xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="OldZillionUId" type="types:PaybackIdType">
                      <xsd:annotation>
                        <xsd:documentation> 
											Old Payback UId of the original Earn transaction.
										</xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                  </xsd:choice>
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
            <xsd:element minOccurs="0" name="NewPartnerUId" type="types:PartnerUIdType">
              <xsd:annotation>
                <xsd:documentation>
								Partner to send the new invoice number for this transaction.
								This is mandatory field if the earn reversal request is for partial earn reversal.
                               </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnDateTime" type="types:TxnDateType">
              <xsd:annotation>
                <xsd:documentation>
								Txn Date &amp; Time for this earn reversal transaction
                            </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnAmount" type="types:LoyaltyAmountType">
              <xsd:annotation>
                <xsd:documentation>
						If Payback is calculating points, Partner has to send 
						transaction amount for Earns
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnPoints" type="types:LoyaltyAmountType">
              <xsd:annotation>
                <xsd:documentation>
							If Partner is calculating points, Partner has to send preallocated points 
							with this earn transaction that has to be credited to member's account.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnChannel" type="types:ChannelClassifierType">
              <xsd:annotation>
                <xsd:documentation>
								Channel Classification from where request has been sent e.g. POS, Kiosk, Web, ...
								Communication Channel of the request.
                           	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="IsFinalEarnReversal" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
							NO, by default, if subsequent reversals allowed for the base transaction.
							YSE, if this reversal request is final and no further reversal allowed 
							for the base transaction.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ReverseEarnTransactionResponse">
        <xsd:annotation>
          <xsd:documentation>For errors see separate error code document.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:ReverseEarnTransactionResponseType">
              <xsd:sequence>
                <xsd:element minOccurs="0" maxOccurs="1" name="ZillionUId" type="types:PaybackIdType">
                  <xsd:annotation>
                    <xsd:documentation>
									If transaction is successful, Payback UID (activity id) is returned to the partner
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="PartnerUId" type="types:PartnerUIdType">
                  <xsd:annotation>
                    <xsd:documentation>
									If transaction is successful, Partner UID (Invoice No) is returned to the partner
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="LoyCardNumber" type="types:LoyCardNumberType">
                  <xsd:annotation>
                    <xsd:documentation>
									If transaction is successful, Loyalty Card Number is  is returned to the partner
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="ReversedPoints" type="types:LoyaltyAmountType">
                  <xsd:annotation>
                    <xsd:documentation>
									If Earn Reversal Transaction is successful, points reversed for this transaction
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="AccountBalanceDetails" type="types:AccountBalanceDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
									If Earn Reversal Transaction is successful, total available points in the account
									before and after this transaction
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="RejectedDetails" type="types:RejectedDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
									Rejected Code (RejectID) and reject reason
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ModifyEarnTransactionRequest">
        <xsd:annotation>
          <xsd:documentation>
				 This request is to cater the modification of points or amount or 
				 modification or cancellation of blocking period of the base earn transaction.
				 Customer should be able to view the same real time across all PB channels.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="MemberAuthentication" type="types:MemberAuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
                                  	Data used to identify and authenticate the member.
                              	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="PartnerAuthorizationKey" type="types:PartnerAuthorizationKeyType">
              <xsd:annotation>
                <xsd:documentation>
	                            Partner authorization key to check, if the partner is provisioned and to 
	                            verify, if the partner is enabled for the real time earn modifications or not.
	                    	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnMerchantId" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation>
	                           Loyalty Merchant Id(LMID) of the merchant where the transaction took place.
	                           Must be a valid LMID provided by Payback.
	                    	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnTerminalId" type="types:LoyaltyTerminalIdType">
              <xsd:annotation>
                <xsd:documentation>
								Loyalty Terminal Id(LTID) of the partner outlet where the transaction took place.
								Must be a valid LTID provided by Payback.
                               </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="OldTxnId">
              <xsd:annotation>
                <xsd:documentation>
					 			Unique transaction UId of the original earn activity.
					 			Partner has a choice to send either Partner UId or Payback UId
					 			that was sent in the response of original earn transaction
					 		</xsd:documentation>
              </xsd:annotation>
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:choice>
                    <xsd:element name="OldPartnerUId" type="types:PartnerUIdType">
                      <xsd:annotation>
                        <xsd:documentation>
											 Old Partner UId of the original Earn transaction.
										</xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="OldZillionUId" type="types:PaybackIdType">
                      <xsd:annotation>
                        <xsd:documentation> 
											Old Payback UId of the original Earn transaction.
										</xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                  </xsd:choice>
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
            <xsd:element minOccurs="0" name="NewPartnerUId" type="types:PartnerUIdType">
              <xsd:annotation>
                <xsd:documentation>
								Partner to send the new invoice number for this transaction.
                               </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnDateTime" type="types:TxnDateType">
              <xsd:annotation>
                <xsd:documentation>
								Txn Date &amp; Time of this modification request for the original earn transaction
                            </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnAmount" type="types:LoyaltyAmountType">
              <xsd:annotation>
                <xsd:documentation>
						If Payback is calculating points, Partner has to send 
						transaction amount for Earns
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnPoints" type="types:LoyaltyAmountType">
              <xsd:annotation>
                <xsd:documentation>
							If Partner is calculating points, Partner has to send preallocated points 
							with this earn transaction that has to be credited to member's account.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnChannel" type="types:ChannelClassifierType">
              <xsd:annotation>
                <xsd:documentation>
								Channel Classification from where request has been sent e.g. POS, Kiosk, Web, ...
								Communication Channel of the request.
                           	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="NewBlockedUntil" type="types:CalendarDayType">
              <xsd:annotation>
                <xsd:documentation>
							New blocking period to be updated against the original earn activity.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ModifyEarnTransactionResponse">
        <xsd:annotation>
          <xsd:documentation>For errors see separate error code document.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:ModifyEarnTransactionResponseType">
              <xsd:sequence>
                <xsd:element minOccurs="0" maxOccurs="1" name="ZillionUId" type="types:PaybackIdType">
                  <xsd:annotation>
                    <xsd:documentation>
									If transaction is successful, Payback UID (activity id) is returned to the partner
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="PartnerUId" type="types:PartnerUIdType">
                  <xsd:annotation>
                    <xsd:documentation>
									If transaction is successful, partner UID (Invoice No) is returned to the partner
									if partner sends new partner UId in request same will be captured and return in this element 
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="LoyCardNumber" type="types:LoyCardNumberType">
                  <xsd:annotation>
                    <xsd:documentation>
									If transaction is successful, Loyalty Card Number is returned to the partner
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="ModifiedPoints" type="types:LoyaltyAmountType">
                  <xsd:annotation>
                    <xsd:documentation>
									If transaction is successful and request was sent for points modification 
									then points modified for this transaction is returned
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="AccountBalanceDetails" type="types:AccountBalanceDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
									If transaction is successful, total available points in the account
									before and after this transaction
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="NewBlockedUntil" type="types:CalendarDayType">
                  <xsd:annotation>
                    <xsd:documentation>
										New blocking period till which the points will be blocked. 
		                            </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="1" name="RejectedDetails" type="types:RejectedDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
									Rejected Code (RejectID) and reject reason
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="BlockPointsForRedemptionRequest">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="MemberAuthentication" type="types:AuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
                                  	Data used to identify and authenticate the member.
                              	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="Lmid" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation> LMID (loyalty Merchant Id) </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="Ltid" type="types:LoyaltyTerminalIdType">
              <xsd:annotation>
                <xsd:documentation> LTID (loyalty Terminal Id) </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="BranchId" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation>Branch short name(branch Id) </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="InvoiceNum" type="types:InvoiceType">
              <xsd:annotation>
                <xsd:documentation> Unique invoice number sent by the Partner </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="ReceiptCode" type="types:ExternalIdType">
              <xsd:annotation>
                <xsd:documentation>
							The receipt code identifying the transaction made in the POS.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="TxnAmount" type="types:LoyaltyAmountType">
              <xsd:annotation>
                <xsd:documentation>
						If Payback is calculating points, Partner has to send 
						transaction amount for Earns
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="PointsToBlock" type="types:LoyaltyAmountType">
              <xsd:annotation>
                <xsd:documentation> These many points to be blocked for that member
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="BlockingPeriod" type="types:BlockPeriodType">
              <xsd:annotation>
                <xsd:documentation> This is the blocking period, means its
							threshold time for unblocking
							1. "0" --&gt; Order cannot be canceled.
							2. The null(no tag in the request) - Order cannot be canceled.
							3. Signed integer nnumber- Order can be canceled till these many minutes after creation
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TxnChannel" type="types:ChannelClassifierType">
              <xsd:annotation>
                <xsd:documentation>
								Channel Classification from where request has been sent e.g. POS, Kiosk, Web, etc.
								Communication Channel of the request.
                           	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="sendSMS" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
							Used by PG to send SMS for the successful order
							completion.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="GetMobileAndEmail" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
						GetMobileAndEmail take boolean values
						YES - API should return loyalty card, mobile and email in case of error
						NO - API should not return any member details
                    </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="IsPrepaid" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
									Decides if the point is prepaid
									YES -Point is prepaid
									No- Point is not prepaid
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="OTP" type="types:OTPType">
              <xsd:annotation>
                <xsd:documentation>
							One Time PIN sent to linked mobile number to process redemption 
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="BlockPointsForRedemptionResponse">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:BlockPointsForRedemptionResponseType">
              <xsd:sequence>
                <xsd:element minOccurs="0" maxOccurs="1" name="LoyCardnumber" type="types:LoyCardNumberType">
                  <xsd:annotation>
                    <xsd:documentation>
									16 Digit Loyalty card Number
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:sequence minOccurs="0">
                  <xsd:element name="AccountBalanceDetails" type="types:AccountBalanceDetailsType">
                    <xsd:annotation>
                      <xsd:documentation>
										AccountBalanceDetail record filled by the
										back-end according to the loyalty currency
										selected.
									</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element name="OrderId" type="types:ActivityIdType">
                    <xsd:annotation>
                      <xsd:documentation>
										Order id or transaction reference
										number
									</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element name="TxnPointsBlocked" type="types:LoyaltyAmountType">
                    <xsd:annotation>
                      <xsd:documentation>
										The amount of blocked points in this transaction
									</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="PrepaidAccountBalanceDetails" type="types:PrepaidAccountBalanceDetailsBurnType">
                    <xsd:annotation>
                      <xsd:documentation>
										Summary of account balance with the no. of points available before and after the transaction.
									</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                </xsd:sequence>
                <xsd:element minOccurs="0" name="MemberDetails" type="types:MemberDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
									MemberDetails type is having following three member details
									Loyalty card number
									Mobile Number
									Email Id
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="AuthenticateRequest">
        <xsd:annotation>
          <xsd:documentation>INT#050:
                This command is used to log in a member. It takes the alias and a secret and checks if it
                is a valid combination of aliastype and secrettype and re-turns a token
                granting the member access to his/hers PAYBACK account and data. This
                token must later be used to identify that user in subsequent com-mands
                requiring prior authentication.
                If no secret is passed, then the authentication also returns a token but with a
                different set of permissions. The permission assigned to the token
                determines the authorization for subsequent service-calls for that token.
                The authorization is checked by the PAYBACK system for each service call.
                Moreover, the token expires in the server after a (possibly infinit)
                period. It also checked by the PAYBACK system.
                After entering invalid secrets several times for the same alias (the no of times is
                determined by the PAYBACK system) then the user can be forced to incorporate a
                CAPTCHA within the subsequent authentication retry (only in case such functionality is configured 
                for the current PAYBACK system). When the CAPTCHA has
                not been solved correctly, no login will be attempted, avoiding e.g. the
                possibil-ity of an automated script locking many accounts. Therefore the
                Authenticate command returns an error that indicates to call the service
                createCaptcha() which returns a CaptchaID and a CaptchaURL that references
                CAPTCHA. The text (answer) from this CAPTACH must be provided in the
                subsequent Authentica-tion-call for the same alias together with the
                original CaptchaID to secure the answer. The CaptchaID is valid for only a
                single Authentication attempt</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:AuthorisedRequest">
              <xsd:sequence>
                <xsd:element name="Authentication" type="types:MemberAliasAuthenticationType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    Data used to identify and authenticate the
                                    member requesting his account's balance(s).
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="CommunicationChannel" type="types:CommunicationChannelType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    Data used to identify and authenticate the
                                    member requesting his account's balance(s).
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="GetMobileAndEmail" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation>
						GetMobileAndEmail take boolean values
						YES - API should return loyalty card, mobile and email in case of error
						NO - API should not return any member details
                    </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="AuthenticateResponse">
        <xsd:annotation>
          <xsd:documentation>For errors see separate error code document.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:MessageResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element name="Token" type="types:ConversationIdType">
                  <xsd:annotation>
                    <xsd:documentation>Token in the form of a hexadecimal
                                    string issued to grant access to data of a specific
                                    member. A token has an expiry period which might be
                                    infinit and a state (weak or strong) that determines
                                    whether usage of the token in subsequent services is
                                    provided or not.</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="MemberDetails" type="types:MemberDetailsType">
                  <xsd:annotation>
                    <xsd:documentation>
							MemberDetails type is having following three member details
							Loyalty card number
							Mobile Number
							Email Id
						</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="EnrollMemberRequest">
        <xsd:annotation>
          <xsd:documentation>INTF#008.
                This command allows to create a new membership (to do an enrollment). If no card number is
                given as parameter, a new PAYBACK account will be created for the
                membership. If a cardnumber is passed then this cardnumber will be
                assigned to the newly created member. The memberdata will be stored an the
                member will grant access to the account determined by the cardnumber
                (E-Kit). All alias that are assigned to the member will be returned.
                Additionally, the command returns a token granting access to the PAYBACK
                account. This token must later be used to identifity the user in other
                commands requiring prior authentication.
                Depending on the correctness of the address data provided , completion of the creation process may
                require two consequitive calls:
                In the first call the addressvalidation flags should be set to "on". As a result the
                address data and contact data will be validated. If this check fails, the
                "Adress-Correctness" values in the response will be set to provide the
                reason why. Additionally the address data and contact data output
                parameters may contain up-dated values, if applicable for the particular
                code value.
                Note that in case of an invalid address or contact data provided and  adressvalidation  set to "on", 
                execution of the service will not create a new member nor any data will be persisted within the PAYBACK system.
                This state of service execution  is indicated by a error message returned in the FaultMessage element
                of the service response. 
                In the second call the addressvalidation flag should be set to "off"  to allow the users
                overwrite so that no check is done this time and the enrolment will be executed.
                The third addressvalidation-option "On/Save" validates address data and contact data provided but always enroles the 
                member regardless of the validation result. This validation result will be store with the address and contact data.  
                For security reasons it should be avoided to execute an enrollment without CAPTCHA, hence
                parameters secret and answer are required in case the current PAYBACK system is configured for usage of CAPTCHA. 
            </xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:AuthorisedRequest">
              <xsd:sequence>
                <xsd:element minOccurs="0" name="CaptchaAnswer" type="types:CaptchaAnswerType">
                  <xsd:annotation>
                    <xsd:documentation>Optional result of a security CAPTCHA
                                    usage in conjuction with this request.
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:choice>
                  <xsd:element name="CardNumber" type="types:CredentialType">
                    <xsd:annotation>
                      <xsd:documentation>
								PAYBACK cardnumber provided. The cardnumber must always be a "generated alias" . 
								Provision of this parameter executes "enrollment with card" process.
							</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" name="EnrolmentDetails" type="types:EnrolmentDetailsType">
                    <xsd:annotation>
                      <xsd:documentation />
                    </xsd:annotation>
                  </xsd:element>
                </xsd:choice>
                <xsd:element minOccurs="0" name="AssignedSecret" type="types:MemberSecurityType">
                  <xsd:annotation>
                    <xsd:documentation>A member is allowed to assign at least
                                    one secret (e.g. password)</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="MasterInfo" type="types:MemberMasterInfoType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    The most important data to identify a member,
                                    including his name, date of birth etc.
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="PostalAddress" type="types:MemberPostalAddressType" />
                <xsd:element minOccurs="0" name="ContactInfo" type="types:EnrollMemberContactType" />
                <xsd:element name="CommunicationChannel" type="types:CommunicationChannelType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    Data used to identify and authenticate the
                                    member requesting his account's balance(s).
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="EnrollMemberResponse">
        <xsd:annotation>
          <xsd:documentation> For errors see separate error code document.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:MessageResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="0" name="Token" type="types:ConversationIdType">
                  <xsd:annotation>
                    <xsd:documentation>Token in the form of a hexadecimal
                                    string issued to grant access to data of a specific
                                    member. A token has an expiry period which might be
                                    infinit and a state (weak or strong) that determines
                                    whether usage of the token in subsequent services is
                                    provided or not.</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="GeneratedMemberAlias" type="types:PrincipalType">
                  <xsd:annotation>
                    <xsd:documentation>Generated alias (cardnumber) that is
                                    as-signed to the member as "first generated alias".
                                    This alias is bound to the member-ship enrolled and
                                    cannot be assigned to a further membership
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="unbounded" name="AdditionalGeneratedMemberAlias" type="types:PrincipalType">
                  <xsd:annotation>
                    <xsd:documentation>List of further generated alias
                                    (cardnumbers) that are initially assigned to the
                                    membership after enrolment. These alias can
                                    subsequently be used to enrole further members to the
                                    account</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="AddressCorrectness" type="types:AddressCorrectnessSetType">
                  <xsd:annotation>
                    <xsd:documentation>Returns the Validata status of the
                                    validated addresses (Postal, Email, Mobile)
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="AdjustedPostalAddress" type="types:MemberPostalAddressType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    The member's postal address is returned if the address has been adjusted by the
                                    PAYBACK system during
                                    enrollment.
                        </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="AdjustedContactInfo" type="types:MemberContactType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    The member's contact addresses are returned if at lease on of the contact addresses
                                    has been adjusted by the PAYBACK system during
                                    enrollment.                
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="LoyCardNumber" type="types:CredentialType">
                  <xsd:annotation>
                    <xsd:documentation>
 							PAYBACK cardnumber provided. The cardnumber must always be a "generated alias" . 
 							Provision of this parameter executes "enrollment with card" process.
 						</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="UpdateMemberRequest">
        <xsd:annotation>
          <xsd:documentation>INTF#15:
                Provide member data that should be updated. For all updated member data except additional
                data the PAYBACK system will keep track of data history. In case address
                or contact data will be provided note the following:
				Depending on the correctness of the address data provided, completion of theupdate process may
                require two consequitive calls:
                In the first call the addressvalidation flags should be set to &amp;quot;on&amp;quot;. As a result the
                address data and contact data will be validated. If this check fails, the
                &amp;quot;Adress-Correctness&amp;quot; values in the response will be set to provide the
                reason why. Additionally the address data and contact data output
                parameters may contain up-dated values, if applicable for the particular
                code value.
                Note that in case of an invalid address or contact data provided and  adressvalidation  set to &amp;quot;on&amp;quot;, 
                execution of the service will not update the memberdata nor any data will be persisted within the PAYBACK system.
                This state of service execution  is indicated by an error warning message returned in the FaultMessage element
                of the service response. 
                In the second call the addressvalidation flag should be set to &amp;quot;off&amp;quot;  to allow the users
                overwrite so that no check is done this time and the update will be executed.
                The third addressvalidation-option &amp;quot;On/Save&amp;quot; validates address data and contact data provided but always update the 
                member data regardless of the validation result. This validation result will be store with the address and contact data.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:AuthorisedRequest">
              <xsd:sequence>
                <xsd:element name="Authentication" type="types:MemberTokenAuthenticationType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    Data used to identify and authenticate the
                                    member requesting his/her data updation.
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="MasterInfo" type="types:MemberMasterInfoType" />
                <xsd:element name="PostalAddress" type="types:MemberPostalAddressType" />
                <xsd:element name="ContactInfo" type="types:MemberContactType" />
                <xsd:element name="CommunicationChannel" type="types:CommunicationChannelType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    Data used to identify and authenticate the
                                    member requesting his account's balance(s).
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="UpdateMemberResponse">
        <xsd:annotation>
          <xsd:documentation>IFor errors see separate error code document.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:MessageResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="0" name="AddressCorrectness" type="types:AddressCorrectnessSetType">
                  <xsd:annotation>
                    <xsd:documentation>Returns the Validata status of the
                                    validated addresses (Postal, Email, Mobile)
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="AdjustedPostalAddress" type="types:MemberPostalAddressType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    The member's postal address is returned if the address has been adjusted by the
                                    PAYBACK system during
                                    enrollment.
                        </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="AdjustedContactInfo" type="types:MemberContactType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    The member's contact addresses are returned if at lease on of the contact addresses
                                    has been adjusted by the PAYBACK system during
                                    enrollment.                
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberRequest">
        <xsd:annotation>
          <xsd:documentation>INTF#029:
                returns the complete customer information</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:AuthorisedRequest">
              <xsd:sequence>
                <xsd:element name="Authentication" type="types:MemberTokenAuthenticationType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    Data used to identify and authenticate the
                                    member
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="CommunicationChannel" type="types:CommunicationChannelType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    Data used to identify and authenticate the
                                    member requesting his account's balance(s).
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberResponse">
        <xsd:annotation>
          <xsd:documentation>For errors see separate error code document.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:MessageResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element name="MasterInfo" type="types:MemberMasterInfoType" />
                <xsd:element name="PostalAddress" type="types:MemberPostalAddressType" />
                <xsd:element minOccurs="0" name="ContactInfo" type="types:MemberContactType" />
                <xsd:element minOccurs="0" name="AddressCorrectness" type="types:AddressCorrectnessSetType">
                  <xsd:annotation>
                    <xsd:documentation>Returns the Validata status of the
                                    validated addresses (Postal, Email, Mobile)
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="unbounded" name="AdditionalData" type="types:AdditionalDataTypeTwo" />
                <xsd:element minOccurs="0" maxOccurs="unbounded" name="AssignedAlias" type="types:AssignedAliasType">
                  <xsd:annotation>
                    <xsd:documentation>Contains the set of assigned alias which
                                    is a subset of all alias for the member.
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberDashboardRequest">
        <xsd:annotation>
          <xsd:documentation>INTF#059:
                This service provides a reduced set of member data to populate the initial dashboard
                presented to the member right after authentication of this member or
                startup of a client application. Depending on the token permissions the
                consumer, only a subset of information may be returned</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:AuthorisedRequest">
              <xsd:sequence>
                <xsd:element name="Authentication" type="types:MemberTokenAuthenticationType">
                  <xsd:annotation>
                    <xsd:documentation>Data used to identify and authenticate
                                    the
                                    member.</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="CommunicationChannel" type="types:CommunicationChannelType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    Data used to identify and authenticate the
                                    member requesting his account's balance(s).
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberDashboardResponse">
        <xsd:annotation>
          <xsd:documentation>For errors see separate error code document.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:MessageResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element maxOccurs="unbounded" name="AccountBalance" type="types:AccountBalanceDetailType">
                  <xsd:annotation>
                    <xsd:documentation>All information on the balances of the
                                    account for each loyalty currency</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="ProfileInfo" type="types:MemberProfileInfoType">
                  <xsd:annotation>
                    <xsd:documentation>Contains profile information of the
                                    current member. Can be used on case only anonymous
                                    memher data is required on consumer side.
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element maxOccurs="unbounded" name="AliasInfo" type="types:MemberAliasType">
                  <xsd:annotation>
                    <xsd:documentation>The list of alias of the assigned to the
                                    member</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="Subscriptions" type="types:MemberSubscriptionsWithOrderDateType">
                  <xsd:annotation>
                    <xsd:documentation>Standard PAYBACK program subscriptions
                                    set by member</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="ForcePasswordUpdate" type="xsd:boolean">
                  <xsd:annotation>
                    <xsd:documentation>If true member has recently received a
                                    new password/PIN must be forced by client to update
                                    his password within the current client session.
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="MasterInfo" type="types:MemberMasterInfoType">
                  <xsd:annotation>
                    <xsd:documentation>Members master data</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="ContactInfo" type="types:MemberContactType">
                  <xsd:annotation>
                    <xsd:documentation>Digital contact channels of the member.
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" maxOccurs="unbounded" name="FutherSubscriptions" type="types:FurtherSubscriptionWithOrderDateType">
                  <xsd:annotation>
                    <xsd:documentation>List of the additional subscriptions of
                                    a PAYBACK member. All content only valid with respect
                                    to a customizing.</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberCardDetailsByMobileRequest">
        <xsd:annotation>
          <xsd:documentation>
				This API is to retrieve Member card details by Mobile number(MI or Profile Mobile)
			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="MobileNumber" type="types:MobileNumberType">
              <xsd:annotation>
                <xsd:documentation>
							Mobile number is used to identify MI(MOBILE_ID) association or associated profile numbers
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="GetAccountBalanceDetails" type="types:StatusType">
              <xsd:annotation>
                <xsd:documentation>
							This element is an enumaration of YES/NO - Used to check whether to return account balance in response. Default is NO i.e if element is not present in request
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberCardDetailsByMobileResponse">
        <xsd:annotation>
          <xsd:documentation>
  				Associated member card details of requerst mobile number
  			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:GetMemberCardDetailsByMobileResponseType">
              <xsd:sequence minOccurs="0">
                <xsd:element name="AssociatedLoyaltyCardList" type="types:AssociatedLoyaltyCardListType">
                  <xsd:annotation>
                    <xsd:documentation>
								List of member card details for request mobile number
							</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ConfirmBurnPointsRequest">
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:AuthorisedRequest">
              <xsd:sequence>
                <xsd:choice>
                  <xsd:element minOccurs="1" maxOccurs="1" name="OrderId" type="types:OrderIdType">
                    <xsd:annotation>
                      <xsd:documentation>
												Data used to identify the order.
											</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:sequence>
                    <xsd:element minOccurs="1" maxOccurs="1" name="InvoiceNumber" type="types:InvoiceType">
                      <xsd:annotation>
                        <xsd:documentation> Unique invoice number sent by the Partner 
										</xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                    <xsd:element minOccurs="1" maxOccurs="1" name="Lmid" type="types:OrganizationShortNameType">
                      <xsd:annotation>
                        <xsd:documentation> LMID (loyalty Merchant Id) </xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                  </xsd:sequence>
                </xsd:choice>
                <xsd:element name="TxnChannel" type="types:RedemptionChannelType">
                  <xsd:annotation>
                    <xsd:documentation>
										Channel Classification from where request has been sent e.g. POS, Kiosk, etc.
										Redemption Channel of the request.
									</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="sendSMS" type="types:StatusType">
                  <xsd:annotation>
                    <xsd:documentation>
									This flag take YES/NO value.
									If YES, system should send SMS for confirmation of order.
									If NO, system should not send SMS for confirmation
									completion. </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ConfirmBurnPointsResponse">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:ConfirmBurnPointsResponseType">
              <xsd:sequence>
                <xsd:element minOccurs="0" name="OrderId" type="types:OrderIdType">
                  <xsd:annotation>
                    <xsd:documentation>Order number which is being confirmed</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="InvoiceNumber" type="types:InvoiceType">
                  <xsd:annotation>
                    <xsd:documentation> Unique invoice number which is being confirmed. </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="OrderStatus" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation> Order status after processing (Confirmed) </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberCardDetailsByMobileOrEmailRequest">
        <xsd:annotation>
          <xsd:documentation>
						This api is called by partner who want to retrieve customer PAYBACK
						information by 'email-id' of the customer.
						Partner will send lmid(loyalty merchant id) and email-id of the customer
						in the request.
						In response, this api returns below PAYBACK information of the
						customer
						1. 'PAYBACK card number' - 16 digit loyalty card no
						2. 'Total available points' for redemption in member's Payback
						account
						3. 'latest transaction date' and 'partner lmid' of the latest
						transaction
						4. 'latest transaction date with partner' and 'lmid of partner' sent
						in the request
						5. 'enrollment source' of the member's payback card
						6. 'promocode' of the member's payback card

						Members are searched by email-id (exact search and case insensitive)
						All the active Payback cards found are returned in the response.
						There is no specific sorting of the cards retreived.

						If LMID passed in the request is the PARENT PARTNER lmid, 'LAST
						TRANSACTION DATE WITH PARTNER' will be -
						member's latest transaction date with the parent partner OR with any of
						the child partners, whichever is the latest.

						If LMID passed in the request is the CHILD PARTNER lmid, 'LAST
						TRANSACTION DATE WITH PARTNER' will be -
						member's latest transaction date with the child partner
					</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="0" name="MobileNo" type="types:MobileNumberType">
              <xsd:annotation>
                <xsd:documentation> The mobile number of the PAYBACK member.
										</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="Email" type="types:EmailType">
              <xsd:annotation>
                <xsd:documentation>
									Customer Email ID to retrive payback cards
								</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="PartnerShortName" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation>
											Short name that identifies the partner
											organization - Partner LMID
										</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="DateOfBirth" type="types:DateOfBirthType">
              <xsd:annotation>
                <xsd:documentation>
                       					 The date of birth of the PAYBACK member.
                   					 </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="FilterResult" type="types:StatusType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GetMemberCardDetailsByMobileOrEmailResponse">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:GetMemberCardDetailsByMobileOrEmailFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="1" maxOccurs="unbounded" name="MemberCardDetailsWithIdentifier" type="types:MemberCardDetailsWithIdentifierType">
                  <xsd:annotation>
                    <xsd:documentation />
                  </xsd:annotation>
                </xsd:element>
                <xsd:element name="AssociatedLoyaltyCardList" type="types:AssociatedLoyaltyCardListType">
                  <xsd:annotation>
                    <xsd:documentation />
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="StitchAssociationRequest">
        <xsd:annotation>
          <xsd:documentation>INT#050:
                This command is used to log in a member. It takes the alias and a secret and checks if it
                is a valid combination of aliastype and secrettype and re-turns a token
                granting the member access to his/hers PAYBACK account and data. This
                token must later be used to identify that user in subsequent com-mands
                requiring prior authentication.
                If no secret is passed, then the authentication also returns a token but with a
                different set of permissions. The permission assigned to the token
                determines the authorization for subsequent service-calls for that token.
                The authorization is checked by the PAYBACK system for each service call.
                Moreover, the token expires in the server after a (possibly infinit)
                period. It also checked by the PAYBACK system.
                After entering invalid secrets several times for the same alias (the no of times is
                determined by the PAYBACK system) then the user can be forced to incorporate a
                CAPTCHA within the subsequent authentication retry (only in case such functionality is configured 
                for the current PAYBACK system). When the CAPTCHA has
                not been solved correctly, no login will be attempted, avoiding e.g. the
                possibil-ity of an automated script locking many accounts. Therefore the
                Authenticate command returns an error that indicates to call the service
                createCaptcha() which returns a CaptchaID and a CaptchaURL that references
                CAPTCHA. The text (answer) from this CAPTACH must be provided in the
                subsequent Authentica-tion-call for the same alias together with the
                original CaptchaID to secure the answer. The CaptchaID is valid for only a
                single Authentication attempt</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" name="Authentication" type="types:MemberTokenAuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
						Data used to identify and authenticate the
						member requesting his account's balance(s).
					</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="PartnerShortName" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation>
							Short name that identifies the partner organization - Partner LMID
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="OTP" type="types:OTPType">
              <xsd:annotation>
                <xsd:documentation>
							One Time PIN sent for mobile linking through WEB/PORTAL
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" name="AssociationNumber" type="types:AssociationNumberType">
              <xsd:annotation>
                <xsd:documentation>
							Association Number identify a member within the PAYBACK program.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" name="AssociationAccountNumber" type="types:AssociationNumberType">
              <xsd:annotation>
                <xsd:documentation>
							Association Account Number identify a member within the PAYBACK program.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" name="AssociationType" type="types:AssociationsType1">
              <xsd:annotation>
                <xsd:documentation>
							Association Type states the type of association
							LOY_CARD_NUMBER/MOBILE_ID/ICICI_CREDIT/ICICI_DEBIT etc.
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="validFrom" type="types:CalendarDayType">
              <xsd:annotation>
                <xsd:documentation>
								Valid From Date &amp; Time for association
                            </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="validTo" type="types:CalendarDayType">
              <xsd:annotation>
                <xsd:documentation>
								Valid To Date &amp; Time for association
                            </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" name="CommunicationChannel" type="types:CommunicationChannelType">
              <xsd:annotation>
                <xsd:documentation>
						Data used to identify and authenticate the
						member requesting his account's balance(s).
					</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="StitchAssociationResponse">
        <xsd:annotation>
          <xsd:documentation>For errors see separate error code document.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:StitchAssociationFaultResponse" />
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="UpdateMemberDemogRequest">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="MemberAuthentication" type="types:AuthenticationType">
              <xsd:annotation>
                <xsd:documentation>
                                  	Data used to identify and authenticate the member.
                              	</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="ContactInfo" type="types:MemberContactType" />
            <xsd:element name="DateOfBirth" type="types:DateOfBirthType">
              <xsd:annotation>
                <xsd:documentation>
								The date of birth of the PAYBACK member.
							</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" name="PostalAddress" type="types:MemberPostalAddressType" />
            <xsd:element name="CommunicationChannel" type="types:CommunicationChannelType">
              <xsd:annotation>
                <xsd:documentation>
                                    Data used to identify and authenticate the
                                    member requesting his account's balance(s).
                        </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="UpdateMemberDemogResponse">
        <xsd:annotation>
          <xsd:documentation>IFor errors see separate error code document.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:MessageResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element minOccurs="0" name="AddressCorrectness" type="types:AddressCorrectnessSetType">
                  <xsd:annotation>
                    <xsd:documentation>Returns the Validata status of the
												validated addresses (Postal, Email, Mobile)
								</xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="AdjustedPostalAddress" type="types:MemberPostalAddressType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    The member's postal address is returned if the address has been adjusted by the
                                    PAYBACK system during
                                    enrollment.
                        </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
                <xsd:element minOccurs="0" name="AdjustedContactInfo" type="types:MemberContactType">
                  <xsd:annotation>
                    <xsd:documentation>
                                    The member's contact addresses are returned if at lease on of the contact addresses
                                    has been adjusted by the PAYBACK system during
                                    enrollment.                
                                </xsd:documentation>
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GenerateOTPRequest">
        <xsd:annotation>
          <xsd:documentation>
				Generates OTP to send to the linked mobile number.
			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="MobileNumber" type="types:MobileNumberType">
              <xsd:annotation>
                <xsd:documentation>
							10 digit mobile number
						</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="Lmid" type="types:OrganizationShortNameType">
              <xsd:annotation>
                <xsd:documentation> LMID (loyalty Merchant Id) </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="CommunicationChannel" type="types:CommunicationChannelType">
              <xsd:annotation>
                <xsd:documentation>
						Data used to identify and authenticate the
						member requesting his account's balance(s).
					</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="GenerateOTPResponse">
        <xsd:annotation>
          <xsd:documentation>
				Send the response back whether OTP is generated and sent to linked mobile number or failed due to some validation
			</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:complexContent mixed="false">
            <xsd:extension base="types:GenerateOTPFaultResponse">
              <xsd:sequence minOccurs="0">
                <xsd:element name="GenerateOTPSuccess" type="types:SuccessResponseType">
                  <xsd:annotation>
                    <xsd:documentation />
                  </xsd:annotation>
                </xsd:element>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>
  </types>
  <message name="VoucherRedemptionRequestMessage">
    <part name="body" element="extint:CreateVoucherRedemptionRequest" />
  </message>
  <message name="AuthenticateResponseMessage">
    <part name="body" element="extint:AuthenticateResponse" />
  </message>
  <message name="ModifyEarnTransactionRequestMessage">
    <part name="body" element="extint:ModifyEarnTransactionRequest" />
  </message>
  <message name="GetAccountBalanceResponseMessage">
    <part name="body" element="extint:GetAccountBalanceResponse" />
  </message>
  <message name="BlockPointsForRedemptionResponseMessage">
    <part name="body" element="extint:BlockPointsForRedemptionResponse" />
  </message>
  <message name="EnforcePinStatusRequestMessage">
    <part name="body" element="extint:EnforcePinStatusRequest" />
  </message>
  <message name="VoucherRedemptionResponseMessage">
    <part name="body" element="extint:CreateVoucherRedemptionResponse" />
  </message>
  <message name="UpdateMemberDemogRequestMessage">
    <part name="body" element="extint:UpdateMemberDemogRequest" />
  </message>
  <message name="EnrollMemberRequestMessage">
    <part name="body" element="extint:EnrollMemberRequest" />
  </message>
  <message name="ReverseEarnTransactionRequestMessage">
    <part name="body" element="extint:ReverseEarnTransactionRequest" />
  </message>
  <message name="UpdateMemberDemogResponseMessage">
    <part name="body" element="extint:UpdateMemberDemogResponse" />
  </message>
  <message name="GetMemberCardDetailsByMobileResponseMessage">
    <part name="body" element="extint:GetMemberCardDetailsByMobileResponse" />
  </message>
  <message name="StitchAssociationRequestMessage">
    <part name="body" element="extint:StitchAssociationRequest" />
  </message>
  <message name="UpdateMemberResponseMessage">
    <part name="body" element="extint:UpdateMemberResponse" />
  </message>
  <message name="GetMemberRequestMessage">
    <part name="body" element="extint:GetMemberRequest" />
  </message>
  <message name="OrderStatusEnquiryRequestMessage">
    <part name="body" element="extint:OrderStatusEnquiryRequest" />
  </message>
  <message name="GetMemberCardsByEmailIdResponseMessage">
    <part name="body" element="extint:GetMemberCardsByEmailIdResponse" />
  </message>
  <message name="ForgotPasswordRequestMessage">
    <part name="body" element="extint:ForgotPasswordRequest" />
  </message>
  <message name="ReverseVoucherRedemptionRequestMessage">
    <part name="body" element="extint:ReverseVoucherRedemptionRequest" />
  </message>
  <message name="GetAccountTransactionsByPartnerResponseMessage">
    <part name="body" element="extint:GetAccountTransactionsByPartnerResponse" />
  </message>
  <message name="BlockPointsForRedemptionRequestMessage">
    <part name="body" element="extint:BlockPointsForRedemptionRequest" />
  </message>
  <message name="ConfirmBurnPointsRequestMessage">
    <part name="body" element="extint:ConfirmBurnPointsRequest" />
  </message>
  <message name="GetSegmentedDataResponseMessage">
    <part name="body" element="extint:GetSegmentedDataResponse" />
  </message>
  <message name="ReverseVoucherRedemptionResponseMessage">
    <part name="body" element="extint:ReverseVoucherRedemptionResponse" />
  </message>
  <message name="GenerateOTPResponseMessage">
    <part name="body" element="extint:GenerateOTPResponse" />
  </message>
  <message name="UpdateMemberRequestMessage">
    <part name="body" element="extint:UpdateMemberRequest" />
  </message>
  <message name="VerifyMembershipRequestMessage">
    <part name="body" element="extint:VerifyMembershipRequest" />
  </message>
  <message name="EnforcePinStatusResponseMessage">
    <part name="body" element="extint:EnforcePinStatusResponse" />
  </message>
  <message name="GetMemberDashboardRequestMessage">
    <part name="body" element="extint:GetMemberDashboardRequest" />
  </message>
  <message name="GetAccountTransactionsByPartnerRequestMessage">
    <part name="body" element="extint:GetAccountTransactionsByPartnerRequest" />
  </message>
  <message name="EnrollMemberResponseMessage">
    <part name="body" element="extint:EnrollMemberResponse" />
  </message>
  <message name="GetMemberCardsByEmailIdRequestMessage">
    <part name="body" element="extint:GetMemberCardsByEmailIdRequest" />
  </message>
  <message name="GetMemberTransactionsByPartnerResponseMessage">
    <part name="body" element="extint:GetMemberTransactionsByPartnerResponse" />
  </message>
  <message name="StitchAssociationResponseMessage">
    <part name="body" element="extint:StitchAssociationResponse" />
  </message>
  <message name="VerifyMembershipResponseMessage">
    <part name="body" element="extint:VerifyMembershipResponse" />
  </message>
  <message name="OrderStatusEnquiryResponseMessage">
    <part name="body" element="extint:OrderStatusEnquiryResponse" />
  </message>
  <message name="GetMemberResponseMessage">
    <part name="body" element="extint:GetMemberResponse" />
  </message>
  <message name="GetMemberCardDetailsByMobileOrEmailResponseMessage">
    <part name="body" element="extint:GetMemberCardDetailsByMobileOrEmailResponse" />
  </message>
  <message name="GetMemberTransactionsByPartnerRequestMessage">
    <part name="body" element="extint:GetMemberTransactionsByPartnerRequest" />
  </message>
  <message name="GetAccountTransactionsRequestMessage">
    <part name="body" element="extint:GetAccountTransactionsRequest" />
  </message>
  <message name="GetAccountBalanceRequestMessage">
    <part name="body" element="extint:GetAccountBalanceRequest" />
  </message>
  <message name="GenerateOTPRequestMessage">
    <part name="body" element="extint:GenerateOTPRequest" />
  </message>
  <message name="CreateEarnTransactionRequestMessage">
    <part name="body" element="extint:CreateEarnTransactionRequest" />
  </message>
  <message name="ReverseEarnTransactionResponseMessage">
    <part name="body" element="extint:ReverseEarnTransactionResponse" />
  </message>
  <message name="ForgotPasswordResponseMessage">
    <part name="body" element="extint:ForgotPasswordResponse" />
  </message>
  <message name="GetMemberCardDetailsByMobileRequestMessage">
    <part name="body" element="extint:GetMemberCardDetailsByMobileRequest" />
  </message>
  <message name="GetMemberDashboardResponseMessage">
    <part name="body" element="extint:GetMemberDashboardResponse" />
  </message>
  <message name="IsMobileLinkedResponseMessage">
    <part name="body" element="extint:IsMobileLinkedResponse" />
  </message>
  <message name="ModifyEarnTransactionResponseMessage">
    <part name="body" element="extint:ModifyEarnTransactionResponse" />
  </message>
  <message name="GetSegmentedDataRequestMessage">
    <part name="body" element="extint:GetSegmentedDataRequest" />
  </message>
  <message name="IsMobileLinkedRequestMessage">
    <part name="body" element="extint:IsMobileLinkedRequest" />
  </message>
  <message name="GetAccountTransactionsResponseMessage">
    <part name="body" element="extint:GetAccountTransactionsResponse" />
  </message>
  <message name="GetMemberCardDetailsByMobileOrEmailRequestMessage">
    <part name="body" element="extint:GetMemberCardDetailsByMobileOrEmailRequest" />
  </message>
  <message name="AuthenticateRequestMessage">
    <part name="body" element="extint:AuthenticateRequest" />
  </message>
  <message name="CreateEarnTransactionResponseMessage">
    <part name="body" element="extint:CreateEarnTransactionResponse" />
  </message>
  <message name="ConfirmBurnPointsResponseMessage">
    <part name="body" element="extint:ConfirmBurnPointsResponse" />
  </message>
  <portType name="ExtintPortType">
    <operation name="GetAccountBalance">
      <input message="tns:GetAccountBalanceRequestMessage" />
      <output message="tns:GetAccountBalanceResponseMessage" />
    </operation>
    <operation name="GetAccountTransactions">
      <input message="tns:GetAccountTransactionsRequestMessage" />
      <output message="tns:GetAccountTransactionsResponseMessage" />
    </operation>
    <operation name="VoucherRedemption">
      <input message="tns:VoucherRedemptionRequestMessage" />
      <output message="tns:VoucherRedemptionResponseMessage" />
    </operation>
    <operation name="IsMobileLinked">
      <input message="tns:IsMobileLinkedRequestMessage" />
      <output message="tns:IsMobileLinkedResponseMessage" />
    </operation>
    <operation name="EnforcePinStatus">
      <input message="tns:EnforcePinStatusRequestMessage" />
      <output message="tns:EnforcePinStatusResponseMessage" />
    </operation>
    <operation name="VerifyMembership">
      <input message="tns:VerifyMembershipRequestMessage" />
      <output message="tns:VerifyMembershipResponseMessage" />
    </operation>
    <operation name="GetMemberCardsByEmailId">
      <input message="tns:GetMemberCardsByEmailIdRequestMessage" />
      <output message="tns:GetMemberCardsByEmailIdResponseMessage" />
    </operation>
    <operation name="GetSegmentedData">
      <input message="tns:GetSegmentedDataRequestMessage" />
      <output message="tns:GetSegmentedDataResponseMessage" />
    </operation>
    <operation name="ForgotPassword">
      <input message="tns:ForgotPasswordRequestMessage" />
      <output message="tns:ForgotPasswordResponseMessage" />
    </operation>
    <operation name="OrderStatusEnquiry">
      <input message="tns:OrderStatusEnquiryRequestMessage" />
      <output message="tns:OrderStatusEnquiryResponseMessage" />
    </operation>
    <operation name="ReverseVoucherRedemption">
      <input message="tns:ReverseVoucherRedemptionRequestMessage" />
      <output message="tns:ReverseVoucherRedemptionResponseMessage" />
    </operation>
    <operation name="GetAccountTransactionsByPartner">
      <input message="tns:GetAccountTransactionsByPartnerRequestMessage" />
      <output message="tns:GetAccountTransactionsByPartnerResponseMessage" />
    </operation>
    <operation name="GetMemberTransactionsByPartner">
      <input message="tns:GetMemberTransactionsByPartnerRequestMessage" />
      <output message="tns:GetMemberTransactionsByPartnerResponseMessage" />
    </operation>
    <operation name="CreateEarnTransaction">
      <input message="tns:CreateEarnTransactionRequestMessage" />
      <output message="tns:CreateEarnTransactionResponseMessage" />
    </operation>
    <operation name="ReverseEarnTransaction">
      <input message="tns:ReverseEarnTransactionRequestMessage" />
      <output message="tns:ReverseEarnTransactionResponseMessage" />
    </operation>
    <operation name="ModifyEarnTransaction">
      <input message="tns:ModifyEarnTransactionRequestMessage" />
      <output message="tns:ModifyEarnTransactionResponseMessage" />
    </operation>
    <operation name="BlockPointsForRedemption">
      <input message="tns:BlockPointsForRedemptionRequestMessage" />
      <output message="tns:BlockPointsForRedemptionResponseMessage" />
    </operation>
    <operation name="Authenticate">
      <input message="tns:AuthenticateRequestMessage" />
      <output message="tns:AuthenticateResponseMessage" />
    </operation>
    <operation name="EnrollMember">
      <input message="tns:EnrollMemberRequestMessage" />
      <output message="tns:EnrollMemberResponseMessage" />
    </operation>
    <operation name="UpdateMember">
      <input message="tns:UpdateMemberRequestMessage" />
      <output message="tns:UpdateMemberResponseMessage" />
    </operation>
    <operation name="StitchAssociation">
      <input message="tns:StitchAssociationRequestMessage" />
      <output message="tns:StitchAssociationResponseMessage" />
    </operation>
    <operation name="GetMember">
      <input message="tns:GetMemberRequestMessage" />
      <output message="tns:GetMemberResponseMessage" />
    </operation>
    <operation name="GetMemberDashboard">
      <input message="tns:GetMemberDashboardRequestMessage" />
      <output message="tns:GetMemberDashboardResponseMessage" />
    </operation>
    <operation name="GetMemberCardDetailsByMobile">
      <input message="tns:GetMemberCardDetailsByMobileRequestMessage" />
      <output message="tns:GetMemberCardDetailsByMobileResponseMessage" />
    </operation>
    <operation name="GetMemberCardDetailsByMobileOrEmail">
      <input message="tns:GetMemberCardDetailsByMobileOrEmailRequestMessage" />
      <output message="tns:GetMemberCardDetailsByMobileOrEmailResponseMessage" />
    </operation>
    <operation name="ConfirmBurnPoints">
      <input message="tns:ConfirmBurnPointsRequestMessage" />
      <output message="tns:ConfirmBurnPointsResponseMessage" />
    </operation>
    <operation name="UpdateMemberDemog">
      <input message="tns:UpdateMemberDemogRequestMessage" />
      <output message="tns:UpdateMemberDemogResponseMessage" />
    </operation>
    <operation name="GenerateOTP">
      <input message="tns:GenerateOTPRequestMessage" />
      <output message="tns:GenerateOTPResponseMessage" />
    </operation>
  </portType>
  <binding name="ExtintSoapBinding" type="tns:ExtintPortType">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="GetAccountBalance">
      <soap:operation soapAction="GetAccountBalance" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="GetAccountTransactions">
      <soap:operation soapAction="GetAccountTransactions" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="VoucherRedemption">
      <soap:operation soapAction="VoucherRedemption" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="IsMobileLinked">
      <soap:operation soapAction="IsMobileLinked" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="EnforcePinStatus">
      <soap:operation soapAction="EnforcePinStatus" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="VerifyMembership">
      <soap:operation soapAction="VerifyMembership" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="GetMemberCardsByEmailId">
      <soap:operation soapAction="GetMemberCardsByEmailId" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="GetSegmentedData">
      <soap:operation soapAction="GetSegmentedData" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="ForgotPassword">
      <soap:operation soapAction="ForgotPassword" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="OrderStatusEnquiry">
      <soap:operation soapAction="OrderStatusEnquiry" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="ReverseVoucherRedemption">
      <soap:operation soapAction="ReverseVoucherRedemption" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="GetAccountTransactionsByPartner">
      <soap:operation soapAction="GetAccountTransactionsByPartner" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="GetMemberTransactionsByPartner">
      <soap:operation soapAction="GetMemberTransactionsByPartner" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="CreateEarnTransaction">
      <soap:operation soapAction="CreateEarnTransaction" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="ReverseEarnTransaction">
      <soap:operation soapAction="ReverseEarnTransaction" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="ModifyEarnTransaction">
      <soap:operation soapAction="ModifyEarnTransaction" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="BlockPointsForRedemption">
      <soap:operation soapAction="BlockPointsForRedemption" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="Authenticate">
      <soap:operation soapAction="Authenticate" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="EnrollMember">
      <soap:operation soapAction="EnrollMember" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="StitchAssociation">
      <soap:operation soapAction="StitchAssociation" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="UpdateMember">
      <soap:operation soapAction="UpdateMember" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="GetMember">
      <soap:operation soapAction="GetMember" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="GetMemberDashboard">
      <soap:operation soapAction="GetMemberDashboard" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="GetMemberCardDetailsByMobile">
      <soap:operation soapAction="GetMemberCardDetailsByMobile" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="GetMemberCardDetailsByMobileOrEmail">
      <soap:operation soapAction="GetMemberCardDetailsByMobileOrEmail" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="ConfirmBurnPoints">
      <soap:operation soapAction="ConfirmBurnPoints" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="UpdateMemberDemog">
      <soap:operation soapAction="UpdateMemberDemog" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
    <operation name="GenerateOTP">
      <soap:operation soapAction="GenerateOTP" />
      <input>
        <soap:body use="literal" parts="body" />
      </input>
      <output>
        <soap:body use="literal" parts="body" />
      </output>
    </operation>
  </binding>
  <service name="soap">
    <port name="ExtintPort" binding="tns:ExtintSoapBinding">
      <soap:address location="{endpoint address}" />
    </port>
  </service>
</definitions>