<wsdl:definitions targetNamespace="http://www.ebay.com/marketplace/services" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:ns0="http://www.ebay.com/marketplace/services" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xs="http://www.w3.org/2001/XMLSchema">

	<wsdl:types>
		<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.ebay.com/marketplace/services" xmlns:Q1="http://www.ebay.com/marketplace/services" xmlns:Q2="http://www.ebay.com/marketplace/services" xmlns:tns="http://www.ebay.com/marketplace/services">

<xs:element name="addSubscriberRequest" nillable="true" type="tns:OpeneBayAddSubscriberRequestType"/>
<xs:element name="addSubscriberResponse" nillable="true" type="tns:OpeneBayAddSubscriberResponseType"/>
<xs:element name="updateSubscriberRequest" nillable="true" type="tns:OpeneBayUpdateSubscriberRequestType"/>
<xs:element name="updateSubscriberResponse" nillable="true" type="tns:OpeneBayUpdateSubscriberResponseType"/>
<xs:element name="removeSubscriberRequest" nillable="true" type="tns:OpeneBayRemoveSubscriberRequestType"/>
<xs:element name="removeSubscriberResponse" nillable="true" type="tns:OpeneBayRemoveSubscriberResponseType"/>
<xs:element name="changeSubscriptionPlanRequest" nillable="true" type="tns:OpeneBayChangeSubscriptionPlanRequestType"/>
<xs:element name="changeSubscriptionPlanResponse" nillable="true" type="tns:OpeneBayChangeSubscriptionPlanResponseType"/>
<xs:element name="updateSubscriberCredentialsRequest" nillable="true" type="tns:OpeneBayUpdateSubscriberCredentialsRequestType"/>
<xs:element name="updateSubscriberCredentialsResponse" nillable="true" type="tns:OpeneBayUpdateSubscriberCredentialsResponseType"/>
<xs:element name="updateSubscriberPaymentMethodRequest" nillable="true" type="tns:OpeneBayUpdateSubscriberPaymentMethodRequestType"/>
<xs:element name="updateSubscriberPaymentMethodResponse" nillable="true" type="tns:OpeneBayUpdateSubscriberPaymentMethodResponseType"/>


<!-- Common TYPES start -->
<xs:complexType name="OpeneBayPrincipalIdentifierType">
	<xs:attribute name="appId" type="xs:string">
		<xs:annotation>
			<xs:documentation>
				The AppID of the receiving application.
				When you upload a deployment descriptor for your application,
				you provide a value (as myapp.mycompany.com) that becomes your AppID in the keys
				that are issued for your application.
				For information about uploading a deployment descriptor, see
				the Users Guide.
			</xs:documentation>
			<xs:appinfo>
				<MaxLength>128</MaxLength>
				<CallInfo>
					<CallName>addSubscriber</CallName>
					<CallName>changeSubscriptionPlan</CallName>
					<CallName>removeSubscriber</CallName>
					<CallName>updateSubscriber</CallName>
					<CallName>updateSubscriberCredentials</CallName>
					<CallName>updateSubscriberPaymentMethod</CallName>
					<RequiredInput>Yes</RequiredInput>
				</CallInfo>
			</xs:appinfo>
		</xs:annotation>
	</xs:attribute>
</xs:complexType>


<xs:complexType name="OpeneBayRequestCredentialsType">
	<xs:complexContent>
		<xs:extension base="tns:OpeneBayPrincipalIdentifierType">
			<xs:sequence>
					<xs:element name="token" type="tns:OpeneBaySecurityTokenType">
					<xs:annotation>
						<xs:documentation>
							Container for signature and tokenValue.
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>1000</MaxLength>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<CallName>updateSubscriberPaymentMethod</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>


<xs:simpleType name="OpeneBayTokenType">
	<xs:annotation>
		<xs:documentation>
			Used to specify whether a token is passed by value or by reference.
			Applications should expect it to be passed by value.
		</xs:documentation>
	</xs:annotation>
	<xs:restriction base="xs:string">
		<xs:enumeration value="Reference">
			<xs:annotation>
				<xs:documentation>
					The token is passed by reference; reserved for future use.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="Value">
			<xs:annotation>
				<xs:documentation>
					The token is passed by value.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
	</xs:restriction>
</xs:simpleType>


<xs:complexType name="OpeneBaySecurityTokenType">
	<xs:complexContent>
		<xs:extension base="tns:OpeneBayBaseSecurityTokenType">
			<xs:sequence>
				<xs:element name="tokenValue" type="xs:string">
					<xs:annotation>
						<xs:documentation>
							A base64-encoded string that you must decrypt before
							extracting values. In the case of addSubscriber, the values that you
							extract include the following for
							the user to be added as a subscriber to your application: the user name and
							the user Auth token (that is, the Auth and Auth token used in the
							Trading API). In the case of removeSubscriber, values that you
							extract (for the user to remove) include the user name.
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>2000</MaxLength>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<CallName>updateSubscriberPaymentMethod</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
							<SeeLink>
								<URL>../../open-ebay-apps/Concepts/UsersGuideLandingPage.html</URL>
								<Title>User Guide</Title>
								<For>values contained in tokenValue, and instructions on decrypting and parsing tokenValue</For>
							</SeeLink>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element name="signature" type="xs:string">
					<xs:annotation>
						<xs:documentation>
							An RSA-encrypted string by which you can verify that the
							request is from eBay. You decrypt this string with the public eBay key.
							For more information, and the location of the public key, see the link below.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<CallName>updateSubscriberPaymentMethod</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
							<SeeLink>
								<URL>../../open-ebay-apps/Concepts/UsersGuideLandingPage.html</URL>
								<Title>User Guide</Title>
								<For>instructions on using this field</For>
							</SeeLink>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>


<xs:complexType name="OpeneBayBaseSecurityTokenType">
	<xs:attribute name="type" type="tns:OpeneBayTokenType">
		<xs:annotation>
			<xs:documentation>
				The base type for tokens.
			</xs:documentation>
			<xs:appinfo>
				<MaxLength>1000</MaxLength>
				<CallInfo>
					<CallName>addSubscriber</CallName>
					<CallName>changeSubscriptionPlan</CallName>
					<CallName>removeSubscriber</CallName>
					<CallName>updateSubscriber</CallName>
					<CallName>updateSubscriberCredentials</CallName>
					<CallName>updateSubscriberPaymentMethod</CallName>
					<RequiredInput>Yes</RequiredInput>
				</CallInfo>
			</xs:appinfo>
		</xs:annotation>
	</xs:attribute>
</xs:complexType>


<!-- Base Request Types -->
<xs:complexType abstract="true" name="BaseOpeneBayParticipantInterfaceRequestType">
	<xs:annotation>
		<xs:documentation>
			Base type for the request container for service operations.
		</xs:documentation>
	</xs:annotation>
	<xs:sequence>
		<xs:element name="credentials" type="tns:OpeneBayRequestCredentialsType">
			<xs:annotation>
				<xs:documentation>
					Container for signature and tokenValue.
				</xs:documentation>
				<xs:appinfo>
					<CallInfo>
						<CallName>addSubscriber</CallName>
						<CallName>changeSubscriptionPlan</CallName>
						<CallName>removeSubscriber</CallName>
						<CallName>updateSubscriber</CallName>
						<CallName>updateSubscriberCredentials</CallName>
						<CallName>updateSubscriberPaymentMethod</CallName>
						<RequiredInput>Yes</RequiredInput>
					</CallInfo>
				</xs:appinfo>
			</xs:annotation>
		</xs:element>
	</xs:sequence>
</xs:complexType>


<!-- Base Response Types -->
<xs:complexType abstract="true" name="BaseOpeneBayParticipantInterfaceResponseType">
	<xs:annotation>
		<xs:documentation>
			Base response container for service operations.
		</xs:documentation>
	</xs:annotation>
	<xs:sequence>
		<xs:element name="ack" type="tns:AckValueType">
			<xs:annotation>
				<xs:documentation>
					Indicates whether there are any errors or warnings associated with the
					processing of the request.
				</xs:documentation>
				<xs:appinfo>
					<CallInfo>
						<AllCalls/>
						<Returned>Always</Returned>
					</CallInfo>
				</xs:appinfo>
			</xs:annotation>
		</xs:element>
		<xs:element minOccurs="0" name="errorMessage" type="xs:string">
			<xs:annotation>
				<xs:documentation>
					After you decide how your implementation of this service
					will define errors, you can decide whether to use this container.
					eBay does not inspect the value of this errorMessage field.
				</xs:documentation>
				<xs:appinfo>
					<CallInfo>
						<AllCalls/>
						<Returned>Conditionally</Returned>
					</CallInfo>
				</xs:appinfo>
			</xs:annotation>
		</xs:element>
		<xs:element minOccurs="0" name="errorSeverity" type="tns:ErrorSeverityType">
			<xs:annotation>
				<xs:documentation>
					Indicates whether the error is a severe error
					(causing the request to fail) or an informational error
					(a warning) that should be communicated to the user.
				</xs:documentation>
				<xs:appinfo>
					<CallInfo>
						<AllCalls/>
						<Returned>Conditionally</Returned>
					</CallInfo>
				</xs:appinfo>
			</xs:annotation>
		</xs:element>
		<xs:element name="timestamp" type="xs:dateTime">
			<xs:annotation>
				<xs:documentation>
					The date and time the request was processed. The time zone of this value
					is GMT and the format is the ISO 8601 date and time format (YYYY-MM-
					DDTHH:MM:SS.SSSZ). See Time Values in the eBay Web Services guide for
					information about this time format and converting to and from the GMT time zone.
				</xs:documentation>
				<xs:appinfo>
					<CallInfo>
						<AllCalls/>
						<Returned>Always</Returned>
					</CallInfo>
				</xs:appinfo>
			</xs:annotation>
		</xs:element>
	</xs:sequence>
</xs:complexType>


<xs:simpleType name="AckValueType">
	<xs:annotation>
		<xs:documentation>
			Indicates whether the issue is an error (causing the request to fail)
			or a warning.
		</xs:documentation>
	</xs:annotation>
	<xs:restriction base="xs:string">
		<xs:enumeration value="Success">
			<xs:annotation>
				<xs:documentation>
					The request was processed successfully, but something occurred that may
					affect your application or the user.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="Failure">
			<xs:annotation>
				<xs:documentation>
					The request that triggered the error was not processed successfully.
					When a serious application-level error occurs, an error is returned
					instead of business data.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="Warning">
			<xs:annotation>
				<xs:documentation>
					The request that triggered the error was processed successfully but with
					some warnings.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="PartialFailure">
			<xs:annotation>
				<xs:documentation>
					The request that triggered the error was processed successfully but with
					some warnings.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
	</xs:restriction>
</xs:simpleType>


<xs:simpleType name="ErrorSeverityType">
	<xs:annotation>
		<xs:documentation>
			Indicates whether the error is a severe error
			(causing the request to fail) or an informational error
			(a warning) that should be communicated to the user.
		</xs:documentation>
	</xs:annotation>
	<xs:restriction base="xs:string">
		<xs:enumeration value="Error">
			<xs:annotation>
				<xs:documentation>
					The request that triggered the error was not processed successfully.
					When a serious application-level error occurs, the error is returned
					instead of the business data.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="Warning">
			<xs:annotation>
				<xs:documentation>
					The request was processed successfully, but something occurred that may
					affect your application or the user. For example, eBay may have changed a
					value the user sent in. In this case, eBay returns a normal, successful
					response and also returns the warning.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
	</xs:restriction>
</xs:simpleType>

<xs:simpleType name="OpeneBaySubscriptionReasonCode">
	<xs:annotation>
		<xs:documentation/>
	</xs:annotation>
	<xs:restriction base="xs:token">
		<xs:enumeration value="EPIPending">
			<xs:annotation>
				<xs:documentation>
					Subscription is pending an OEPI response. eBay has made
					the corresponding OEPI call to your application's listener
					but has not received a response, or has received a response with
					a Pending status. Or eBay has not yet made the OEPI call.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="BillingPending">
			<xs:annotation>
				<xs:documentation>

				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="AccountPastDue">
			<xs:annotation>
				<xs:documentation>
					Subscription is pending on eBay internal billing processing.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="SuspendedByDeveloper">
			<xs:annotation>
				<xs:documentation>
					User has been billed, and a payment failure has occurred. The subscription
					is still active. User will be suspended by eBay if the account balance is
					greater than one dollar and more than 18 days have elapsed since the last
					billing statement. eBay will cancel the subscription at 22 days after the
					last billing statement.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="SuspendedByEbay">
			<xs:annotation>
				<xs:documentation>
					Developer has suspended the subscription.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="AccountNotPaidInTime">
			<xs:annotation>
				<xs:documentation>
					Following the suspension of a past due subscription, if the account remains
					unpaid, eBay will put the subscription in the AccountNotPaidInTime state and
					cancel the the subscription.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="CancelledByDeveloper">
			<xs:annotation>
				<xs:documentation>
					The subscription has been cancelled by the developer.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="CancelledBySubscriber">
			<xs:annotation>
				<xs:documentation>
					User has cancelled the subscription. If this occurs during the free trial
					period, the subscription is cancelled immediately. If the user requests
					immediate cancellation from a paid subscription, see Cancel Immediately in
					the Managed Billing Platform Guide for steps you should take.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="CancelledByEbay">
			<xs:annotation>
				<xs:documentation>
					eBay has cancelled the subscription, possibly because the account remained
					unpaid for 22 days following a billing statement.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="RejectedByDeveloper">
			<xs:annotation>
				<xs:documentation>
					Developer has declined to accept the subscription.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="RejectedByEbay">
			<xs:annotation>
				<xs:documentation>
					eBay has declined to accept the subscription.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
	</xs:restriction>
</xs:simpleType>

<xs:complexType name="OpeneBaySubscriberInfoType">
	<xs:annotation>
		<xs:documentation>
			Container for the user name of an eBay member. Provided in
			the call request for convenience.
			Instead using the value in this container, use the value in tokenValue.
		</xs:documentation>
	</xs:annotation>
	<xs:sequence>
		<xs:element minOccurs="0" name="userName" type="xs:string">
			<xs:annotation>
				<xs:documentation>
					The user name of an eBay user, provided for convenience.
					Instead of using this value for the user name, use the value in tokenValue.
				</xs:documentation>
				<xs:appinfo>
					<MaxLength>64</MaxLength>
					<CallInfo>
						<CallName>addSubscriber</CallName>
						<CallName>changeSubscriptionPlan</CallName>
						<CallName>removeSubscriber</CallName>
						<CallName>updateSubscriber</CallName>
						<CallName>updateSubscriberCredentials</CallName>
						<RequiredInput>Yes</RequiredInput>
					</CallInfo>
				</xs:appinfo>
			</xs:annotation>
		</xs:element>
	</xs:sequence>
</xs:complexType>

<xs:complexType name="OpeneBaySubscriptionStateChangeInfoType">
	<xs:annotation>
		<xs:documentation>
			Container for information about a change in the state of a subscription.
		</xs:documentation>
	</xs:annotation>
	<xs:sequence>
		<xs:element minOccurs="0" name="previousState" type="tns:OpeneBaySubscriptionStateType">
			<xs:annotation>
				<xs:documentation>
					The state that the subscription was in, before eBay detected that a change
					occurred.
				</xs:documentation>
				<xs:appinfo>
					<CallInfo>
						<CallName>updateSubscriber</CallName>
						<RequiredInput>Yes</RequiredInput>
					</CallInfo>
				</xs:appinfo>
			</xs:annotation>
		</xs:element>
		<xs:element minOccurs="0" name="newState" type="tns:OpeneBaySubscriptionStateType">
			<xs:annotation>
				<xs:documentation>
					The new state of a subscription.
					This value is sent by eBay;
					eBay sends an updateSubscriber request to your application when
					a change in a user's subscription state is detected.
					For example, eBay sends an updateSubscriber request
					to your application if, due to a payment failure,
					a user's subscription goes into a suspended state.
				</xs:documentation>
				<xs:appinfo>
					<CallInfo>
						<CallName>updateSubscriber</CallName>
						<RequiredInput>Yes</RequiredInput>
					</CallInfo>
				</xs:appinfo>
			</xs:annotation>
		</xs:element>
		<xs:element minOccurs="0" name="reasonCode" type="tns:OpeneBaySubscriptionReasonCode">
			<xs:annotation>
				<xs:documentation>
					A message about the reason for the change in state of the subscription.
					Depending on how the subscription state was changed,
					this message may have been manually entered (as part of the
					change) or may have been auto-generated.
				</xs:documentation>
				<xs:appinfo>
					<CallInfo>
						<CallName>updateSubscriber</CallName>
						<RequiredInput>Yes</RequiredInput>
					</CallInfo>
				</xs:appinfo>
			</xs:annotation>
		</xs:element>
		<xs:element minOccurs="0" name="note" type="xs:string">
			<xs:annotation>
				<xs:documentation>
					A message about the reason for the change in state of the subscription.
					Depending on how the subscription state was changed,
					this message may have been manually entered (as part of the
					change) or may have been auto-generated.
					If a user unsubscribed themselves, this field contains a
					statement that the user unsubscribed using the Manage Applications page.
				</xs:documentation>
				<xs:appinfo>
					<CallInfo>
						<CallName>updateSubscriber</CallName>
						<RequiredInput>Yes</RequiredInput>
					</CallInfo>
				</xs:appinfo>
			</xs:annotation>
		</xs:element>
	</xs:sequence>
</xs:complexType>

<xs:simpleType name="OpeneBaySubscriptionStatusType">
	<xs:annotation>
		<xs:documentation>
			The subscription status of an eBay user.
		</xs:documentation>
	</xs:annotation>
	<xs:restriction base="xs:string">
		<xs:enumeration value="Approved">
			<xs:annotation>
				<xs:documentation>
					Subscription status is approved, according to your application.
					If you specify this value, eBay sets the user's
					subscription to Active.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="Pending">
			<xs:annotation>
				<xs:documentation>
					Subscription status is pending, according to your application.
					If you specify this value, eBay takes no action.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
		<xs:enumeration value="Rejected">
			<xs:annotation>
				<xs:documentation>
					Subscription status is rejected, according to your application.
					If you specify this value in an addSubscriber response,
					it means that, for whatever reason, your application is not
					accepting the subscription specified by eBay in the addSubscriber request.
					If eBay receives an addSubscriber response with
					a status of Rejected, eBay will set the user's subscription status to Rejected.
				</xs:documentation>
			</xs:annotation>
		</xs:enumeration>
	</xs:restriction>
</xs:simpleType>

<xs:simpleType name="OpeneBaySubscriptionStateType">
	<xs:annotation>
		<xs:documentation>
			The subscription state of an eBay user.
		</xs:documentation>
	</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="Created">
				<xs:annotation>
					<xs:documentation>
						Reserved for future use.
					</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="Pending">
				<xs:annotation>
					<xs:documentation>
						Pending state. The subscription is not yet in the Active state.
					</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="Active">
				<xs:annotation>
					<xs:documentation>
						Active state, i.e. actively subscribed to an application.
					</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="Suspended">
				<xs:annotation>
					<xs:documentation>
						Suspended state, e.g. due to a payment failure or past due account.
						There is a block (that can be removed)
						on the user's access to the application.
						That is, the user cannot start the application.
					</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="Cancelled">
				<xs:annotation>
					<xs:documentation>
						Cancelled state, i.e. unsubscribed from an application.
						When a user clicks the "unsubscribe" link to unsubscribe from your non-prorated
						plan, eBay sends an updateSubscriber call to your application with the the
						subscription end date in the note field. The
						subscriptionStateChangeInfo.newState field may still be Active, but the user's
						status in in your Active Subscribers list will be CancelledPending. If you want
						to cancel the user's subscription immediately, use the control in the embedded
						applications tab in your My Account page as follows. In the embedded
						applications tab, select Active Users, and search for the user. Pull down the
						Status selection list, select Cancel Immediately, and then click Submit.
					</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="Rejected">
				<xs:annotation>
					<xs:documentation>
						Rejected state. One of the following
						has occurred: your application
						rejected the subscription (after receiving an addSubscriber call),
						or the subscription was manually changed (by the third-party
						application developer) to the rejected state.
					</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="CancelledPending">
				<xs:annotation>
					<xs:documentation>
						When a user clicks the "unsubscribe" link to unsubscribe from your non-prorated
						plan, eBay sends an updateSubscriber call to your application with the the
						subscription end date in the note field. The
						subscriptionStateChangeInfo.newState field may still be Active, but the user's
						status in in your Active Subscribers list will be CancelledPending. If you want
						to cancel the user's subscription immediately, use the control in the embedded
						applications tab in your My Account page as follows. In the embedded
						applications tab, select Active Users, and search for the user. Pull down the
						Status selection list, select Cancel Immediately, and then click Submit.
					</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="Expired">
				<xs:annotation>
					<xs:documentation>
						Expired state.
					</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
</xs:simpleType>


<xs:complexType name="OpeneBaySubscriptionInfoType">
	<xs:annotation>
		<xs:documentation>
			Container for subscription-related information.
		</xs:documentation>
	</xs:annotation>
	<xs:sequence>
			<xs:element minOccurs="1" name="subscriptionId" type="xs:string">
					<xs:annotation>
						<xs:documentation>
							For a particular application, the subscriptionId
							uniquely identifies a user's subscription.
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>38</MaxLength>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="1" name="planId" type="xs:string">
					<xs:annotation>
						<xs:documentation>
							A planId is assigned by eBay to each subscription plan.
							Your application often uses this value in calls
							to the Open eBay Application Integration Service.
							Note that the planId is diffrent from the externalPlanId.
							In contrast to the planId, the externalPlanId is the
							value that you provide,
							as a "Developer Plan ID," when you create a subscription plan.
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>38</MaxLength>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="1" name="planName" type="xs:string">
					<xs:annotation>
						<xs:documentation>
							The plan name that you provided for your subscription plan when you created the plan.
							This plan name is provided in the call request to help
							you read log files, during debugging.
							Instead of using this value for programmatically
							identifying the subscription plan, use value in the externalPlanId field.
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>128</MaxLength>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="externalPlanId" type="xs:string">
					<xs:annotation>
						<xs:documentation>
							When you create a subscription plan, you provide a Developer Plan ID.
							That Developer Plan ID is contained in this externalPlanId field.
							(For users to subscribe to your application,
							you must create at least one subscription plan.)
							In this call, the externalPlanId identifies the plan to which a user has subscribed.
							Note that if you are running an application in the sandbox,
							a subscription plan, and an associated value for the Developer Plan ID,
							are created for you. You can create others plans, if desired, with
							different Developer Plan IDs.
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>128</MaxLength>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="note" type="xs:string">
					<xs:annotation>
						<xs:documentation>
							Reserved for future use.
						</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="1" name="subscriptionState" type="tns:OpeneBaySubscriptionStateType">
					<xs:annotation>
						<xs:documentation>
							The state of an eBay member's subscription.
							The following are examples: The user may be in an active state,
							i.e. actively subscribed to your application.
							The user may be in a suspended state, as in the case of
							a payment failure, so
							the user cannot start your application. The
							user may be in a cancelled state, i.e. the user may no
							longer have access to your application.
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>128</MaxLength>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>No</RequiredInput>
							</CallInfo>
							<CallInfo>
								<CallName>changeSubscriptionPlan</CallName>
								<Context>previousSubscriptionInfo</Context>
								<OnlyTheseValues>Cancelled, Expired</OnlyTheseValues>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
							<CallInfo>
								<CallName>changeSubscriptionPlan</CallName>
								<Context>subscriptionInfo</Context>
								<OnlyTheseValues>Active, Pending, Rejected</OnlyTheseValues>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="startDate" type="xs:date">
					<xs:annotation>
						<xs:documentation>
							The date when the user subscribed to the plan, e.g. the start of the free trial.
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>128</MaxLength>
							<CallInfo>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>No</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="billStartDate" type="xs:date">
					<xs:annotation>
						<xs:documentation>
							Start date of the user's term for purposes of billing.
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>128</MaxLength>
							<CallInfo>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>No</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="cancelDate" type="xs:date">
					<xs:annotation>
						<xs:documentation>
							The date on which the user or developer
							requested cancellation of the subscription.
							For example, in the case of a prorated-at-end plan, the cancelDate can be the
							date of when the third party
							changed the subscription state to "Canceled" or to "Cancel Immediately."
							For a nonprorated-at-end plan, the cancelDate can be the
							the date of when the third party changed the state to "Cancel Immediately."
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>128</MaxLength>
							<CallInfo>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>No</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="endDate" type="xs:date">
					<xs:annotation>
						<xs:documentation>
							End date of the user's subscription.
							Specifically, the endDate is the date on which the
							subscription actually ends.
							That is, for a prorated-at-end plan, it is the date when the user unsubscribed.
							(For prorated-at-end plans, the cancel and end dates are the same.)
							For a nonprorated-at-end plan, it is the date of the term end.
						</xs:documentation>
						<xs:appinfo>
							<MaxLength>128</MaxLength>
							<CallInfo>
								<CallName>changeSubscriptionPlan</CallName>
								<CallName>removeSubscriber</CallName>
								<CallName>updateSubscriber</CallName>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>No</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
	</xs:sequence>
</xs:complexType>


<xs:complexType name="OpeneBayAddSubscriberRequestType">
	<xs:annotation>
		<xs:documentation>
			Sent by eBay to request that you add an eBay member to
			your subscription database. eBay sends this request
			after the member completes the subscription flow.
			&lt;br&gt;
			&lt;br&gt;
			Your application must use a subscription listener
			to receive addSubscriber requests from eBay.
			When your application receives an addSubscriber request, your application
			must respond with a status value indicating the
			subscription status in your database.
			Specifically, your application must respond with a status of approved, pending, or rejected,
			so eBay can set the state accordingly.
			&lt;br&gt;
			&lt;br&gt;
			Note that if a subscriber changes from one of your plans to another,
			a changeSubscriptionPlan request is sent, rather than an addSubscriber request.
			&lt;br&gt;
			&lt;br&gt;
			If your application doesn't respond after eBay has sent 6 retries (across a day),
			then after 24 hours, the retries are stopped and the subscription is
			put in a cancelled state.
		</xs:documentation>
		<xs:appinfo>
			<Summary>
				Sent by eBay to request that you add an eBay member to
				your subscription database.
			</Summary>
			<SeeLink>
				<URL>../../open-ebay-apps/Concepts/UsersGuideLandingPage.html</URL>
				<Title>User Guide</Title>
				<For>information about a subscription listener</For>
			</SeeLink>
			<TempInfo>samples</TempInfo>
		</xs:appinfo>
	</xs:annotation>
	<xs:complexContent>
		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceRequestType">
			<xs:sequence>
				<xs:element minOccurs="0" name="userInfo" type="tns:OpeneBaySubscriberInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for a field that indicates the user name of an eBay user.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="subscriptionInfo" type="tns:OpeneBaySubscriptionInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for subscription-related information.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>


<xs:complexType name="OpeneBayAddSubscriberResponseType">
	<xs:annotation>
		<xs:documentation>
			Contains a response to an addSubscriber call.
		</xs:documentation>
	</xs:annotation>
	<xs:complexContent>
 		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceResponseType">
			<xs:sequence>
				<xs:element minOccurs="0" name="subscriptionId" type="xs:string">
					<xs:annotation>
						<xs:documentation>
							For a particular application, the subscriptionId
							uniquely identifies a user's subscription.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<Returned>Conditionally</Returned>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="1" name="status" type="tns:OpeneBaySubscriptionStatusType">
					<xs:annotation>
						<xs:documentation>
							The status of the subscription, according to
							your application (if ack is success).
							For example, when you receive an addSubscriber request,
							your application's response includes this field to indicate the
							latest subscription status of the user, according to your database.
							This status value initially is
							set by your application, unlike the
							subscriptionStateChangeInfo.newState
							value, which is set by eBay. When eBay receives this status value from
							your application, eBay sets the subscription to Active, Pending,
							or Rejected, depending on the status value you send in the response.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<Returned>Always</Returned>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="message" type="xs:string">
					<xs:annotation>
						<xs:documentation>
							Message about the subscription status.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>addSubscriber</CallName>
								<Returned>Always</Returned>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>



<xs:complexType name="OpeneBayUpdateSubscriberRequestType">
	<xs:annotation>
		<xs:documentation>
				Sent by eBay to request that you update information about an eBay member in
				your subscription database. This call always applies to an existing subscription.
				&lt;br&gt;
				&lt;br&gt;
				eBay sends an updateSubscriber call to your application when
				eBay detects a change in a subscription state for a user.
				For example, if an SM Apps developer changes a user's subscription state
				using the Embedded Applications tab (at the Developers Program website),
				eBay sends an updateSubscriber call to your application.
		</xs:documentation>
		<xs:appinfo>
			<Summary>
				Sent by eBay to request that you update information about an eBay member in
				your subscription database.
			</Summary>
			<SeeLink>
				<URL>../../open-ebay-apps/Concepts/UsersGuideLandingPage.html</URL>
				<Title>User Guide</Title>
				<For>information about this call and setting up a subscription listener</For>
			</SeeLink>
			<TempInfo>samples</TempInfo>
		</xs:appinfo>
	</xs:annotation>
	<xs:complexContent>
		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceRequestType">
			<xs:sequence>
				<xs:element minOccurs="0" name="userInfo" type="tns:OpeneBaySubscriberInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for a field that indicates the user name of an eBay user.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>updateSubscriber</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="subscriptionInfo" type="tns:OpeneBaySubscriptionInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for subscription-related information.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>updateSubscriber</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="subscriptionStateChangeInfo" type="tns:OpeneBaySubscriptionStateChangeInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for subscription-related information.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>updateSubscriber</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>


<xs:complexType name="OpeneBayUpdateSubscriberResponseType">
	<xs:annotation>
		<xs:documentation>
			Contains a response to an updateSubscriber call.
		</xs:documentation>
	</xs:annotation>
	<xs:complexContent>
 		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceResponseType">
		</xs:extension>
	</xs:complexContent>
</xs:complexType>


<xs:complexType name="OpeneBayRemoveSubscriberRequestType">
	<xs:annotation>
		<xs:documentation>
			Sent by eBay to request that you remove an eBay member from
			your subscription database. eBay sends the request
			when a user clicks the Unsubscribe button in My eBay.
			&lt;br&gt;
			&lt;br&gt;
			Your application must use a subscription listener
			to receive removeSubscriber requests from eBay.
			&lt;br&gt;
			&lt;br&gt;
			Decrypt the data in credentials.token.tokenValue
			in order to obtain the user name of the
			eBay member to remove from your subscription database.
			You must use the user name from credentials.token.tokenValue,
			not the auth token, because in a removeSubscriber request, the
			credentials.token.tokenValue field
			does not contain a token.
			&lt;br&gt;
			&lt;br&gt;
			Note that if a subscriber changes from one of your plans to another,
			a changeSubscriptionPlan request is sent instead of a removeSubscriber request.
		</xs:documentation>
		<xs:appinfo>
			<Summary>
				Sent by eBay to request that you remove an eBay member from
				your subscription database.
			</Summary>
			<SeeLink>
				<URL>../../open-ebay-apps/Concepts/UsersGuideLandingPage.html</URL>
				<Title>User Guide</Title>
				<For>information about a subscription listener</For>
			</SeeLink>
			<TempInfo>samples</TempInfo>
		</xs:appinfo>
	</xs:annotation>
	<xs:complexContent>
		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceRequestType">
			<xs:sequence>
				<xs:element minOccurs="0" name="userInfo" type="tns:OpeneBaySubscriberInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for a field that indicates the user name of an eBay user.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>removeSubscriber</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="subscriptionInfo" type="tns:OpeneBaySubscriptionInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for subscription-related information.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>removeSubscriber</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>


<xs:complexType name="OpeneBayRemoveSubscriberResponseType">
	<xs:annotation>
		<xs:documentation>
			Contains a response to a removeSubscriber call.
		</xs:documentation>
	</xs:annotation>
	<xs:complexContent>
		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceResponseType">
		</xs:extension>
	</xs:complexContent>
</xs:complexType>

<xs:complexType name="OpeneBayChangeSubscriptionPlanRequestType">
	<xs:annotation>
		<xs:documentation>
				Sent by eBay when a subscriber has chosen the option of changing
				from one of your subscription plans to another, on the
				Applications tab in My eBay. For example, a user may upgrade
				from a free plan to a paid plan.
				&lt;br&gt;
				&lt;br&gt;
				The changeSubscriptionPlan request contains
				the new external plan ID, subscription ID, and related values.
				&lt;br&gt;
				&lt;br&gt;
				This functionality is available for an application in sandbox or production
				only if a third party
				notified eBay that they are opting in for this functionality.
				The third party can opt in after initial testing in the sandbox.
				&lt;br&gt;
				&lt;br&gt;
				In the case of a changed plan, the original plan is prorated-at-end.
				The following changes are supported: changing from free to paid
				(prorated or non-prorated); changing from paid to paid
				(prorated or non-prorated); and changing from paid to free
				(if paid plan is prorated).
				The following change is not supported: changing from a non-prorated
				plan to a free plan. In that case, the user would need to cancel the
				non-prorated plan and then wait until the plan ends before
				subscribing to the free plan.
		</xs:documentation>
		<xs:appinfo>
			<Summary>
				Sent by eBay when a subscriber has changed their subscription plan, e.g. upgraded or
				downgraded their plan.
			</Summary>
			<TempInfo>samples</TempInfo>
		</xs:appinfo>
	</xs:annotation>
	<xs:complexContent>
		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceRequestType">
			<xs:sequence>
				<xs:element minOccurs="0" name="userInfo" type="tns:OpeneBaySubscriberInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for a field that indicates the user name of an eBay user.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>changeSubscriptionPlan</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="subscriptionInfo" type="tns:OpeneBaySubscriptionInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for subscription-related information.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>changeSubscriptionPlan</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="previousSubscriptionInfo" type="tns:OpeneBaySubscriptionInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for subscription-related information.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>changeSubscriptionPlan</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>


<xs:complexType name="OpeneBayChangeSubscriptionPlanResponseType">
	<xs:annotation>
		<xs:documentation>
			Contains a response to a changeSubscriptionPlan call.
		</xs:documentation>
	</xs:annotation>
	<xs:complexContent>
		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceResponseType">
		</xs:extension>
	</xs:complexContent>
</xs:complexType>

<xs:complexType name="OpeneBayUpdateSubscriberPaymentMethodRequestType">
	<xs:annotation>
		<xs:documentation>
			Sent by eBay when a subscriber's payment method has changed.
			&lt;br&gt;
			&lt;br&gt;
			A payment method is either manual or automatic.
			If the payment method is manual, the subscriber doesn't have a recurring
			payment method set up.
			If the payment method is automatic, the subscriber has a recurring
			payment method set up (currently, only PayPal is available).
			&lt;br&gt;
			&lt;br&gt;
			For example, a payment method can become
			manual upon cancellation of a pre-approval agreement.
			Or, a payment method can become
			manual when PayPal sets a subscriber's payment method to manual
			after a problem collecting payment from the account
			(e.g. due to an expired pre-approval agreement or a PayPal restriction on the account).
			&lt;br&gt;
			&lt;br&gt;
			The updateSubscriberPaymentMethod request specifies true in the
			manualPayment field if the payment method has been changed to manual. Otherwise it is false.
			If the payment method has been changed to manual, the reason field can
			be PAYPAL_USER_AGREEMENT_CANCELED, PAYPAL_HARD_DECLINED, INVALID, or
			NONE.
		</xs:documentation>
		<xs:appinfo>
			<Summary>
				Sent by eBay to notify you of a change in a subscriber's payment method.
			</Summary>
			<TempInfo>samples</TempInfo>
		</xs:appinfo>
	</xs:annotation>
	<xs:complexContent>
		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceRequestType">
			<xs:sequence>
				<xs:element minOccurs="1" name="manualPayment" type="xs:boolean">
					<xs:annotation>
						<xs:documentation>
							A payment method is either manual or automatic.
							If true, indicates that there is no longer a recurring payment method.
							If false, indicates that a recurring payment method (currently, only PayPal)
							is set up for the subscriber.
							If the payment method is manual, the subscriber doesn't have a recurring
							payment method set up. If the payment method is automatic, the subscriber has a recurring
							payment method set up (currently, only PayPal is available).
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>updateSubscriberPaymentMethod</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="1" name="reason" type="xs:string">
					<xs:annotation>
						<xs:documentation>
						   The reason for the change in payment method.
						   If the payment method has been changed to manual,
						   the reason field can be PAYPAL_USER_AGREEMENT_CANCELED,
						   PAYPAL_HARD_DECLINED, INVALID, or NONE.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>updateSubscriberPaymentMethod</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>
<xs:complexType name="OpeneBayUpdateSubscriberPaymentMethodResponseType">
	<xs:annotation>
		<xs:documentation>
			Contains a response to an updateSubscriberPaymentMethod call.
		</xs:documentation>
	</xs:annotation>
	<xs:complexContent>
		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceResponseType">
		</xs:extension>
	</xs:complexContent>
</xs:complexType>

<xs:complexType name="OpeneBayUpdateSubscriberCredentialsRequestType">
	<xs:annotation>
		<xs:documentation>
			Sent by eBay to notify you that a user's Auth token was renewed or revoked.
			If a user's token is revoked, an OpeneBayUpdateSubscriberCredentials call
			is made to your listener, indicating that
			the token was revoked. At later time, if the user
			has consented to creation of a new token (e.g. in My eBay, using a link next to your application),
			another OpeneBayUpdateSubscriberCredentials call
			is made to your listener, indicating that the token was renewed.
			The subscription status remains as Subscribed.
			&lt;br&gt;
			&lt;br&gt;
			A user's Auth token (that is, the Auth and Auth token used in the
			Trading API) expires after 18 months.
			&lt;br&gt;
			&lt;br&gt;
			Use the eventCode field to determine the current status of a user's Auth token.
			The field contains one of the following two values:
			&lt;ul&gt;
			&lt;li&gt;TokenRenewed: The token expired and was automatically renewed (no user consent is necessary),
			or the token was revoked but the user has consented to creation of a new token.
			In your database, replace the old token with the token delivered as part of the
			updateSubscriberCredentials request.&lt;/li&gt;
			&lt;li&gt;TokenRevoked: The token was revoked. No token is in the call request.&lt;/li&gt;
			&lt;/ul&gt;
			Either way, use the
			other data in the call request to identify the user.
		</xs:documentation>
		<xs:appinfo>
			<Summary>
				Sent by eBay to notify you that a user's token has been revoked or renewed.
			</Summary>
			<TempInfo>samples</TempInfo>
		</xs:appinfo>
	</xs:annotation>
	<xs:complexContent>
		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceRequestType">
			<xs:sequence>
				<xs:element minOccurs="0" name="userInfo" type="tns:OpeneBaySubscriberInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for a field that indicates the user name of an eBay user.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="subscriptionInfo" type="tns:OpeneBaySubscriptionInfoType">
					<xs:annotation>
						<xs:documentation>
							Container for subscription-related information.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>updateSubscriberCredentials</CallName>
								<RequiredInput>Yes</RequiredInput>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
				<xs:element minOccurs="0" name="eventCode" type="xs:string">
					<xs:annotation>
						<xs:documentation>
							Contains the event that triggered the updateSubscriberCredentials call.
							For more information, see the description of the updateSubscriberCredentials call.
							If the value is TokenRevoked, the user's token was revoked.
							If the value is TokenRenewed, the user's token has changed.
						</xs:documentation>
						<xs:appinfo>
							<CallInfo>
								<CallName>updateSubscriberCredentials</CallName>
								<Returned>Always</Returned>
							</CallInfo>
						</xs:appinfo>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>
<xs:complexType name="OpeneBayUpdateSubscriberCredentialsResponseType">
	<xs:annotation>
		<xs:documentation>
			Contains a response to a updateSubscriberCredentials call.
		</xs:documentation>
	</xs:annotation>
	<xs:complexContent>
		<xs:extension base="tns:BaseOpeneBayParticipantInterfaceResponseType">
		</xs:extension>
	</xs:complexContent>
</xs:complexType>

		</xs:schema>
	</wsdl:types>
	<wsdl:message name="addSubscriberRequest">
		<wsdl:part element="ns0:addSubscriberRequest" name="addSubsciberRequest">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="addSubscriberResponse">
		<wsdl:part element="ns0:addSubscriberResponse" name="addSubscriberResponse">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="updateSubscriberRequest">
		<wsdl:part element="ns0:updateSubscriberRequest" name="updateSubsciberRequest">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="updateSubscriberResponse">
		<wsdl:part element="ns0:updateSubscriberResponse" name="updateSubscriberResponse">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="removeSubscriberRequest">
		<wsdl:part element="ns0:removeSubscriberRequest" name="removeSubsciberRequest">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="removeSubscriberResponse">
		<wsdl:part element="ns0:removeSubscriberResponse" name="removeSubscriberResponse">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="changeSubscriptionPlanRequest">
		<wsdl:part element="ns0:changeSubscriptionPlanRequest" name="changeSubscriptionPlanRequest">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="changeSubscriptionPlanResponse">
		<wsdl:part element="ns0:changeSubscriptionPlanResponse" name="changeSubscriptionPlanResponse">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="updateSubscriberPaymentMethodRequest">
		<wsdl:part element="ns0:updateSubscriberPaymentMethodRequest" name="updateSubscriberPaymentMethodRequest">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="updateSubscriberPaymentMethodResponse">
		<wsdl:part element="ns0:updateSubscriberPaymentMethodResponse" name="updateSubscriberPaymentMethodResponse">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="updateSubscriberCredentialsRequest">
		<wsdl:part element="ns0:updateSubscriberCredentialsRequest" name="updateSubscriberCredentialsRequest">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:message name="updateSubscriberCredentialsResponse">
		<wsdl:part element="ns0:updateSubscriberCredentialsResponse" name="updateSubscriberCredentialsResponse">
	    </wsdl:part>
	</wsdl:message>
	<wsdl:portType name="OpeneBayParticipantInterfaceServicePortType">
		<wsdl:operation name="addSubscriber">
			<wsdl:input message="ns0:addSubscriberRequest">
				<!--  wsaw:Action="urn:addSubscriber"> -->
			</wsdl:input>
			<wsdl:output message="ns0:addSubscriberResponse">
				<!-- wsaw:Action="urn:addSubscriberResponse">-->
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriber">
			<wsdl:input message="ns0:updateSubscriberRequest">
				<!--  wsaw:Action="urn:addSubscriber"> -->
			</wsdl:input>
			<wsdl:output message="ns0:updateSubscriberResponse">
				<!-- wsaw:Action="urn:addSubscriberResponse">-->
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="removeSubscriber">
			<wsdl:input message="ns0:removeSubscriberRequest">
				<!--  wsaw:Action="urn:addSubscriber"> -->
			</wsdl:input>
			<wsdl:output message="ns0:removeSubscriberResponse">
				<!-- wsaw:Action="urn:addSubscriberResponse">-->
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="changeSubscriptionPlan">
			<wsdl:input message="ns0:changeSubscriptionPlanRequest">
				<!--  wsaw:Action="urn:addSubscriber"> -->
			</wsdl:input>
			<wsdl:output message="ns0:changeSubscriptionPlanResponse">
				<!-- wsaw:Action="urn:addSubscriberResponse">-->
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriberPaymentMethod">
			<wsdl:input message="ns0:updateSubscriberPaymentMethodRequest">
				<!--  wsaw:Action="urn:addSubscriber"> -->
			</wsdl:input>
			<wsdl:output message="ns0:updateSubscriberPaymentMethodResponse">
				<!-- wsaw:Action="urn:addSubscriberResponse">-->
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriberCredentials">
			<wsdl:input message="ns0:updateSubscriberCredentialsRequest">
				<!--  wsaw:Action="urn:addSubscriber"> -->
			</wsdl:input>
			<wsdl:output message="ns0:updateSubscriberCredentialsResponse">
				<!-- wsaw:Action="urn:addSubscriberResponse">-->
			</wsdl:output>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding name="OpeneBayParticipantInterfaceServiceSoap12Binding" type="ns0:OpeneBayParticipantInterfaceServicePortType">
		<soap12:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="addSubscriber">
			<soap12:operation soapAction="urn:addSubscriber" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriber">
			<soap12:operation soapAction="urn:updateSubscriber" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="removeSubscriber">
			<soap12:operation soapAction="urn:removeSubscriber" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="changeSubscriptionPlan">
			<soap12:operation soapAction="urn:changeSubscriptionPlan" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriberPaymentMethod">
			<soap12:operation soapAction="urn:updateSubscriberPaymentMethod" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriberCredentials">
			<soap12:operation soapAction="urn:updateSubscriberCredentials" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:binding name="OpeneBayParticipantInterfaceServiceSoap11Binding" type="ns0:OpeneBayParticipantInterfaceServicePortType">
		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="addSubscriber">
			<soap:operation soapAction="urn:addSubscriber" style="document"/>
			<wsdl:input>
				<soap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriber">
			<soap12:operation soapAction="urn:updateSubscriber" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="removeSubscriber">
			<soap12:operation soapAction="urn:removeSubscriber" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="changeSubscriptionPlan">
			<soap12:operation soapAction="urn:changeSubscriptionPlan" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriberPaymentMethod">
			<soap12:operation soapAction="urn:updateSubscriberPaymentMethod" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriberCredentials">
			<soap12:operation soapAction="urn:updateSubscriberCredentials" style="document"/>
			<wsdl:input>
				<soap12:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:binding name="OpeneBayParticipantInterfaceServiceHttpBinding" type="ns0:OpeneBayParticipantInterfaceServicePortType">
		<http:binding verb="POST"/>
		<wsdl:operation name="addSubscriber">
			<http:operation location="OpeneBayParticipantInterfaceService/addSubscriber"/>
			<wsdl:input>
				<mime:content part="addSubscriberRequest" type="text/xml"/>
			</wsdl:input>
			<wsdl:output>
				<mime:content part="addSubscriberResponse" type="text/xml"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriber">
			<http:operation location="OpeneBayParticipantInterfaceService/updateSubscriber"/>
			<wsdl:input>
				<mime:content part="updateSubscriberRequest" type="text/xml"/>
			</wsdl:input>
			<wsdl:output>
				<mime:content part="updateSubscriberResponse" type="text/xml"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="removeSubscriber">
			<http:operation location="OpeneBayParticipantInterfaceService/removeSubscriber"/>
			<wsdl:input>
				<mime:content part="removeSubscriberRequest" type="text/xml"/>
			</wsdl:input>
			<wsdl:output>
				<mime:content part="removeSubscriberResponse" type="text/xml"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="changeSubscriptionPlan">
			<http:operation location="OpeneBayParticipantInterfaceService/changeSubscriptionPlan"/>
			<wsdl:input>
				<mime:content part="changeSubscriptionPlanRequest" type="text/xml"/>
			</wsdl:input>
			<wsdl:output>
				<mime:content part="changeSubscriptionPlanResponse" type="text/xml"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriberPaymentMethod">
			<http:operation location="OpeneBayParticipantInterfaceService/updateSubscriberPaymentMethod"/>
			<wsdl:input>
				<mime:content part="updateSubscriberPaymentMethodRequest" type="text/xml"/>
			</wsdl:input>
			<wsdl:output>
				<mime:content part="updateSubscriberPaymentMethodResponse" type="text/xml"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="updateSubscriberCredentials">
			<http:operation location="OpeneBayParticipantInterfaceService/updateSubscriberCredentials"/>
			<wsdl:input>
				<mime:content part="updateSubscriberCredentialsRequest" type="text/xml"/>
			</wsdl:input>
			<wsdl:output>
				<mime:content part="updateSubscriberCredentialsResponse" type="text/xml"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="OpeneBayParticipantInterfaceService">
		<wsdl:documentation>
			<Version>1.5.0</Version>
		</wsdl:documentation>
		<wsdl:port binding="ns0:OpeneBayParticipantInterfaceServiceSoap11Binding" name="OpeneBayParticipantInterfaceServiceHttpSoap11Endpoint">
			<soap:address location="http://10.254.49.67:9090/axis2/services/OpeneBayParticipantInterfaceService.OpeneBayParticipantInterfaceServiceHttpSoap11Endpoint"/>
		</wsdl:port>
		<wsdl:port binding="ns0:OpeneBayParticipantInterfaceServiceHttpBinding" name="OpeneBayParticipantInterfaceServiceHttpEndpoint">
			<http:address location="http://10.254.49.67:9090/axis2/services/OpeneBayParticipantInterfaceService.OpeneBayParticipantInterfaceServiceHttpEndpoint"/>
		</wsdl:port>
		<wsdl:port binding="ns0:OpeneBayParticipantInterfaceServiceSoap12Binding" name="OpeneBayParticipantInterfaceServiceHttpSoap12Endpoint">
			<soap12:address location="http://10.254.49.67:9090/axis2/services/OpeneBayParticipantInterfaceService.OpeneBayParticipantInterfaceServiceHttpSoap12Endpoint"/>
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>