<?xml version="1.0" encoding="UTF-8"?><wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:sch="http://www.moneta.ru/schemas/messages-serviceprovider-server.xsd" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.moneta.ru/services-providers.wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.moneta.ru/services-providers.wsdl">
   <wsdl:types>
      <xsd:schema xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb" xmlns:tns="http://www.moneta.ru/schemas/messages-serviceprovider-server.xsd" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc" elementFormDefault="qualified" jaxb:extensionBindingPrefixes="xjc" jaxb:version="3.0" targetNamespace="http://www.moneta.ru/schemas/messages-serviceprovider-server.xsd">

         <xsd:annotation>
            <xsd:appinfo>
               <jaxb:globalBindings>
                  <xjc:serializable/>
               </jaxb:globalBindings>
            </xsd:appinfo>
         </xsd:annotation>

         <xsd:simpleType name="Version">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Список версий, который используется в ServiceProviders.
                Если функциональность зависит от конкретной версии, то в описании запроса это будет указано
                дополнительно.
                Если версия не указана, то по умолчанию используется VERSION_1.
            </xsd:documentation>
               <xsd:documentation xml:lang="en">
                The version enumeration which is used in ServiceProviders.
                If functionality depends on certain version it will be described for each request type.
                VERSION_1 is considered by default.
            </xsd:documentation>
            </xsd:annotation>

            <xsd:restriction base="xsd:string">
               <xsd:enumeration value="VERSION_1"/>
               <xsd:enumeration value="VERSION_2"/>
               <xsd:enumeration value="VERSION_3"/>
            </xsd:restriction>
         </xsd:simpleType>

         <xsd:simpleType name="Step">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Возможные шаги при оплате провайдера
            </xsd:documentation>
            </xsd:annotation>
            <xsd:restriction base="xsd:string">
               <xsd:enumeration value="PRE"/>
               <xsd:enumeration value="PAY"/>
            </xsd:restriction>
         </xsd:simpleType>

         <xsd:simpleType name="AttributeType">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Возможные типы полей
                INTEGER - числовое
                TEXT - текстовое
                ENUM - перечень значений
                DATE - дата
                DATALIST - текстовое поле с возможностью выбор из заранее определенных значений
                NOTE - примечание (текст), в значении (value) лежит текст который необходимо показывать пользователю.
                CARDNUMBER - номер банковской карты.
                INTERNAL - внутреннее поле, его значение вычисляется в процессе проведения операции или оно постоянно.
            </xsd:documentation>
            </xsd:annotation>
            <xsd:restriction base="xsd:string">
               <xsd:enumeration value="MASKED"/>
               <xsd:enumeration value="INTEGER"/>
               <xsd:enumeration value="TEXT"/>
               <xsd:enumeration value="ENUM"/>
               <!--<xsd:enumeration value="TEXTPWD"/>-->
            <xsd:enumeration value="DATE"/>
               <xsd:enumeration value="DATALIST"/>
               <xsd:enumeration value="NOTE"/>
               <xsd:enumeration value="CARDNUMBER"/>
               <xsd:enumeration value="INTERNAL"/>
            </xsd:restriction>
         </xsd:simpleType>


         <xsd:complexType name="Entity">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">Базовый тип, содержащий атрибут "version".</xsd:documentation>
               <xsd:documentation xml:lang="en">Base type containing "version" attribute.</xsd:documentation>
            </xsd:annotation>
            <xsd:attribute default="VERSION_1" name="version" type="tns:Version" use="optional"/>
         </xsd:complexType>

         <xsd:simpleType name="AccountId">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Тип, описывающий номер счета в системе MONETA.RU.
                Счет задается числом, минимальное значение которого равно 1,
                а максимальное состоит из 10 цифр.
            </xsd:documentation>
               <xsd:documentation xml:lang="en">
                Account type in MONETA.RU.
                Must contain up to 10 digits, minimum value is 1.
            </xsd:documentation>
            </xsd:annotation>
            <xsd:restriction base="xsd:long">
               <xsd:minInclusive value="1"/>
               <xsd:totalDigits value="10"/>
            </xsd:restriction>
         </xsd:simpleType>

         <xsd:simpleType name="Money">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Тип, представляющий значение суммы в операции.
            </xsd:documentation>
               <xsd:documentation xml:lang="en">
                Type representing transaction amounts.
            </xsd:documentation>
            </xsd:annotation>
            <xsd:restriction base="xsd:decimal">
               <xsd:fractionDigits value="2"/>
            </xsd:restriction>
         </xsd:simpleType>

         <xsd:complexType name="NameValueAttribute">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Тип, который позволяет работать с сущностями типа "ключ-значение".
            </xsd:documentation>
            </xsd:annotation>
            <xsd:sequence>
               <xsd:element minOccurs="0" name="name" type="xsd:string"/>
               <xsd:element minOccurs="0" name="value" type="xsd:string"/>
            </xsd:sequence>
         </xsd:complexType>

         <xsd:complexType name="FieldsInfo">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Контейнер для NameValueAttribute.
            </xsd:documentation>
            </xsd:annotation>
            <xsd:sequence>
               <xsd:element maxOccurs="unbounded" minOccurs="0" name="attribute" type="tns:NameValueAttribute"/>
            </xsd:sequence>
         </xsd:complexType>


         <xsd:complexType name="Provider">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Описание провадера и его полей
            </xsd:documentation>
            </xsd:annotation>
            <xsd:sequence>
               <xsd:element name="id" type="xsd:string"/>
               <xsd:element maxOccurs="1" minOccurs="0" name="targetAccountId" type="xsd:long"/>
               <xsd:element maxOccurs="1" minOccurs="0" name="subProviderId" type="xsd:long"/>
               <xsd:element name="name" type="xsd:string"/>
               <xsd:element minOccurs="0" name="comment" type="xsd:string"/>

               <xsd:element minOccurs="0" name="limit">
                  <xsd:complexType>
                    <xsd:attribute name="min" type="xsd:decimal">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">
                                Минимальная сумма при проведении операции
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:attribute>
                    <xsd:attribute name="max" type="xsd:decimal">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">
                                Максимальная сумма при проведении операции
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:attribute>

                    <xsd:attribute name="fix" type="xsd:decimal">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">
                                Фиксированная сумма, если для данного провайдера сумма операции строго определена.
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:attribute>
                  </xsd:complexType>
               </xsd:element>

               <xsd:element name="fields" type="tns:Fields"/>
               <xsd:element minOccurs="0" name="fieldsets" type="tns:Fieldsets"/>
               <xsd:element maxOccurs="1" minOccurs="0" name="attributes">
                  <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element maxOccurs="unbounded" minOccurs="0" name="attribute" type="tns:NameValueAttribute">
                            <xsd:annotation>
                                <xsd:documentation xml:lang="ru">
                                    Аттрибуты провайдера. Аттрибутов может быть 0 и более.
                                    Список аттрибутов:
                                    <ul>
                                        <li>INN - Идентификационный номер налогоплательщика</li>
                                    </ul>
                                </xsd:documentation>
                                <xsd:documentation xml:lang="en">
                                    Provider attributes. Attributes set may be empty.
                                    Attributes list:
                                    <ul>
                                        <li>inn - Payee Tax ID;</li>
                                    </ul>
                                </xsd:documentation>
                            </xsd:annotation>
                        </xsd:element>
                    </xsd:sequence>
                  </xsd:complexType>
               </xsd:element>
            </xsd:sequence>

            <xsd:attribute default="true" name="active" type="xsd:boolean">
               <xsd:annotation>
                  <xsd:documentation xml:lang="ru">
                    Флаг активности данного провайдера
                </xsd:documentation>
               </xsd:annotation>
            </xsd:attribute>
            <xsd:attribute default="PAY" name="firstStep" type="tns:Step">
               <xsd:annotation>
                  <xsd:documentation xml:lang="ru">
                    Первый шаг для данного параметра.
                </xsd:documentation>
               </xsd:annotation>
            </xsd:attribute>
         </xsd:complexType>

         <xsd:complexType name="Fields">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Контейнер для полей - параметров провайдера.
            </xsd:documentation>
            </xsd:annotation>
            <xsd:sequence>
               <xsd:element maxOccurs="unbounded" minOccurs="0" name="field" type="tns:Field"/>
            </xsd:sequence>
         </xsd:complexType>

         <xsd:complexType name="Fieldsets">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Визуальная группировка полей
            </xsd:documentation>
            </xsd:annotation>

            <xsd:sequence>
               <xsd:element maxOccurs="unbounded" minOccurs="0" name="fieldset">
                  <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element maxOccurs="unbounded" minOccurs="0" name="fieldId" type="xsd:int">
                            <xsd:annotation>
                                <xsd:documentation xml:lang="ru">Идентификатор поля</xsd:documentation>
                            </xsd:annotation>
                        </xsd:element>
                    </xsd:sequence>
                    <xsd:attribute name="label" type="xsd:string">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">Наименование группы полей</xsd:documentation>
                        </xsd:annotation>
                    </xsd:attribute>
                  </xsd:complexType>
               </xsd:element>
            </xsd:sequence>
         </xsd:complexType>

         <xsd:complexType name="Field">
            <xsd:sequence>

               <xsd:element default="PAY" maxOccurs="2" minOccurs="0" name="steps" type="tns:Step"/>
               <xsd:element maxOccurs="1" minOccurs="1" name="attribute-name" type="xsd:string"/>
               <xsd:element maxOccurs="1" minOccurs="0" name="value" type="xsd:string"/>
               <xsd:element maxOccurs="1" minOccurs="0" name="error" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">
                        Результат проверки значения поля на ошибки (mask, required)
                    </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>

               <xsd:element minOccurs="0" name="label" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">Наименование поля</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <xsd:element minOccurs="0" name="mask" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">Маска для ввода значения поля</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <xsd:element minOccurs="0" name="comment" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">Комметарий к полю</xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <xsd:element minOccurs="0" name="dependency" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">Зависимость поля от других полей на ECMA скрипте. Выражение позволяет вычислить, нужно ли показывать это поле при определенном значении других полей. В скрипте значения вида {id} заменяются на значения полей с этим id. </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <xsd:element minOccurs="0" name="enum">
                  <xsd:complexType>
                    <xsd:choice>
                        <xsd:element maxOccurs="unbounded" minOccurs="0" name="item">
                            <xsd:complexType>
                                <xsd:simpleContent>
                                    <xsd:extension base="xsd:string">
                                        <xsd:attribute name="id" type="xsd:string"/>
                                        <xsd:attribute name="amount" type="tns:Money">
                                            <xsd:annotation>
                                                <xsd:documentation xml:lang="ru">Сумма к оплате при выборе данного пункта</xsd:documentation>
                                            </xsd:annotation>
                                        </xsd:attribute>
                                    </xsd:extension>
                                </xsd:simpleContent>
                            </xsd:complexType>
                        </xsd:element>

                        <xsd:element maxOccurs="unbounded" minOccurs="0" name="complexItem">
                            <xsd:annotation>
                                <xsd:documentation xml:lang="ru">
                                    Для чтения этого атрибута в запросе необходимо выставлять атрибут version равный или больше VERSION_3.
                                    Он заменяет атрибут item.
                                </xsd:documentation>
                            </xsd:annotation>
                            <xsd:complexType mixed="true">
                                <xsd:sequence>
                                    <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##any"/>
                                </xsd:sequence>
                                <xsd:attribute name="label" type="xsd:string"/>
                                <xsd:attribute name="id" type="xsd:string"/>
                                <xsd:attribute name="amount" type="tns:Money">
                                    <xsd:annotation>
                                        <xsd:documentation xml:lang="ru">Сумма к оплате при выборе данного пункта
                                        </xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:complexType>
                        </xsd:element>
                    </xsd:choice>
                  </xsd:complexType>
               </xsd:element>
            </xsd:sequence>
            <xsd:attribute name="type" type="tns:AttributeType"/>
            <xsd:attribute default="false" name="readonly" type="xsd:boolean">
               <xsd:annotation>
                  <xsd:documentation xml:lang="ru">
                    true - значение поля только для чтения, то есть конечный пользователь не должен иметь возможности его изменять
                </xsd:documentation>
               </xsd:annotation>
            </xsd:attribute>
            <xsd:attribute name="id" type="xsd:int"/>
            <xsd:attribute name="orderBy" type="xsd:int">
               <xsd:annotation>
                  <xsd:documentation xml:lang="ru">
                    Значение определят порядок отображения полей для конечного пользователя (сортировка)
                </xsd:documentation>
               </xsd:annotation>
            </xsd:attribute>
            <xsd:attribute name="dateformat" type="xsd:string"/>
            <xsd:attribute name="maxlength" type="xsd:int"/>
            <xsd:attribute name="minlength" type="xsd:int"/>
            <xsd:attribute name="pattern" type="xsd:string"/>
            <xsd:attribute name="pair-attribute" type="xsd:int"/>
            <xsd:attribute default="true" name="required" type="xsd:boolean"/>
            <xsd:attribute default="false" name="hidden" type="xsd:boolean">
               <xsd:annotation>
                  <xsd:documentation xml:lang="ru">
                    true - поле должно быть скрыто для конечного пользователя
                </xsd:documentation>
               </xsd:annotation>
            </xsd:attribute>
            <xsd:attribute default="false" name="temporary" type="xsd:boolean">
               <xsd:annotation>
                  <xsd:documentation xml:lang="ru">
                    true - "временное" поле, не будет сохряняться в операцию
                </xsd:documentation>
               </xsd:annotation>
            </xsd:attribute>
            <xsd:attribute default="false" name="multiple" type="xsd:boolean">
               <xsd:annotation>
                  <xsd:documentation xml:lang="ru">
                    Признак возможности указать несколько значений при type = ENUM. Значения указываются через ","
                </xsd:documentation>
               </xsd:annotation>
            </xsd:attribute>
         </xsd:complexType>

         <xsd:complexType name="GetNextStepRequestType">
            <xsd:complexContent>
               <xsd:extension base="tns:Entity">
                  <xsd:sequence>
                    <xsd:element name="providerId" type="xsd:string">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">Идентификатор провайдера в системе MONETA.RU
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element minOccurs="0" name="currentStep" type="tns:Step">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">Текущий шаг. Необязательный параметр.
                                В отсутствии его используется первый шаг провайдера.
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>

                    <xsd:element maxOccurs="1" minOccurs="0" name="fieldsInfo" type="tns:FieldsInfo">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">Значения уже введенных полей (имя поля - значение)
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>

                  </xsd:sequence>
               </xsd:extension>
            </xsd:complexContent>
         </xsd:complexType>

         <xsd:element name="GetNextStepRequest">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">Получение описания и значения полей для очередного шага в сервис
                провайдере. Используется для построения визарда по оплате.
            </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:complexContent>
                  <xsd:extension base="tns:GetNextStepRequestType"/>
               </xsd:complexContent>
            </xsd:complexType>
         </xsd:element>


         <xsd:complexType name="GetNextStepResponseType">
            <xsd:sequence>
               <xsd:element name="providerId" type="xsd:string">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">Идентификатор провайдера в системе MONETA.RU
                    </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <xsd:element minOccurs="0" name="nextStep" type="tns:Step">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">Следующий шаг ввода параметров для данного провайдера.
                        Если переданный шаг последний (PAY), то в ответе при осутствиии ошибок тоже придет PAY
                    </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>

               <xsd:element name="fields" type="tns:Fields">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">Поля требуемые для ввода на шаге nextStep
                    </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>

               <xsd:element minOccurs="0" name="amount" type="tns:Money">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">Сумма к оплате, если она возвращается провайдером
                    </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
            </xsd:sequence>
         </xsd:complexType>

         <xsd:element name="GetNextStepResponse">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Ответ, который приходит на запрос GetNextStepRequest.
                В ответе содержится список полей для следующего шага.
            </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:complexContent>
                  <xsd:extension base="tns:GetNextStepResponseType"/>
               </xsd:complexContent>
            </xsd:complexType>
         </xsd:element>


         <xsd:complexType name="GetServiceProvidersRequestType">
            <xsd:complexContent>
               <xsd:extension base="tns:Entity">
                  <xsd:sequence>
                    <xsd:element minOccurs="0" name="targetAccountId" type="tns:AccountId">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">Корреспонденский номер счета в системе MONETA.RU
                            </xsd:documentation>
                            <xsd:documentation xml:lang="en">Correspondent account number in MONETA.RU
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element minOccurs="0" name="searchString" type="xsd:string">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">Поисковая строка. Ищется провайдер по вхождению этой строки
                                в наименовании провайдера.
                            </xsd:documentation>
                            <xsd:documentation xml:lang="en">Search string. Search provider by entering this string in
                                the name of the provider.
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                  </xsd:sequence>
               </xsd:extension>
            </xsd:complexContent>
         </xsd:complexType>

         <xsd:element name="GetServiceProvidersRequest">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">Получение списка провайдеров по определенному номеру счета
            </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:complexContent>
                  <xsd:extension base="tns:GetServiceProvidersRequestType"/>
               </xsd:complexContent>
            </xsd:complexType>
         </xsd:element>

         <xsd:complexType name="GetServiceProvidersResponseType">
            <xsd:sequence>
               <xsd:element maxOccurs="unbounded" minOccurs="0" name="providerInfo" type="tns:ProviderInfo"/>
            </xsd:sequence>
         </xsd:complexType>

         <xsd:element name="GetServiceProvidersResponse">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Ответ, который приходит на запрос GetServiceProvidersRequest.
                В ответе содержится список провайдеров по данному счету.
            </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:complexContent>
                  <xsd:extension base="tns:GetServiceProvidersResponseType"/>
               </xsd:complexContent>
            </xsd:complexType>
         </xsd:element>

         <xsd:element name="attribute" type="tns:NameValueAttribute"/>

         <xsd:complexType name="FindServiceProviderByIdRequestType">
            <xsd:complexContent>
               <xsd:extension base="tns:Entity">
                  <xsd:sequence>
                    <xsd:element name="providerId" type="xsd:string">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">Идентификатор провайдера в системе MONETA.RU
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                  </xsd:sequence>
               </xsd:extension>
            </xsd:complexContent>
         </xsd:complexType>

         <xsd:element name="FindServiceProviderByIdRequest">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Запрос на поиск провайдера по его идентификаторы.
                Если провайдер не найден, то возникает Exception.
            </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:complexContent>
                  <xsd:extension base="tns:FindServiceProviderByIdRequestType"/>
               </xsd:complexContent>
            </xsd:complexType>
         </xsd:element>

         <xsd:complexType name="FindServiceProviderByIdResponseType">
            <xsd:sequence>
               <xsd:element name="provider" type="tns:Provider"/>
            </xsd:sequence>
         </xsd:complexType>

         <xsd:element name="FindServiceProviderByIdResponse">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">
                Ответ, который приходит на запрос FindServiceProviderByIdRequest.
                В ответе содержится информация по найденному провайдеру.
            </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
               <xsd:complexContent>
                  <xsd:extension base="tns:FindServiceProviderByIdResponseType"/>
               </xsd:complexContent>
            </xsd:complexType>
         </xsd:element>

         <xsd:complexType name="ProviderInfo">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">Краткая информация по провайдеру</xsd:documentation>
            </xsd:annotation>
            <xsd:sequence>
               <xsd:element name="providerId" type="xsd:string"/>
               <xsd:element name="targetAccountId" type="xsd:long"/>
               <xsd:element maxOccurs="1" minOccurs="0" name="subProviderId" type="xsd:long"/>
               <xsd:element name="name" type="xsd:string"/>
               <xsd:element maxOccurs="1" minOccurs="0" name="comment" type="xsd:string"/>
               <xsd:element name="active" type="xsd:boolean"/>
            </xsd:sequence>
         </xsd:complexType>

         <xsd:element name="AsyncRequest">
            <xsd:complexType>
               <xsd:choice>
                  <xsd:sequence>
                    <xsd:choice>
                        <xsd:element ref="tns:FindServiceProviderByIdRequest"/>
                        <xsd:element ref="tns:GetNextStepRequest"/>
                    </xsd:choice>
                    <xsd:element minOccurs="0" name="callbackUrl" type="xsd:string">
                        <xsd:annotation>
                            <xsd:documentation xml:lang="ru">Url который будет вызван, после завершения асинхронной
                                задачи (перехода её в терминальное состояние)
                            </xsd:documentation>
                            <xsd:documentation xml:lang="en"/>
                        </xsd:annotation>
                    </xsd:element>
                  </xsd:sequence>
                  <xsd:element name="asyncId" type="xsd:long"/>
               </xsd:choice>
            </xsd:complexType>
         </xsd:element>

         <xsd:element name="AsyncResponse">
            <xsd:complexType>
               <xsd:choice>
                  <xsd:element ref="tns:FindServiceProviderByIdResponse"/>
                  <xsd:element ref="tns:GetNextStepResponse"/>
                  <xsd:sequence>
                    <xsd:element name="asyncId" type="xsd:long"/>
                    <xsd:element name="asyncStatus" type="tns:AsyncStatus"/>
                    <xsd:element name="expirationDate" type="xsd:dateTime"/>
                  </xsd:sequence>
               </xsd:choice>
            </xsd:complexType>
         </xsd:element>

         <xsd:simpleType name="AsyncStatus">
            <xsd:annotation>
               <xsd:documentation xml:lang="ru">Тип, описывающий статусы асинхронных запросов в системе MONETA.RU. Данный тип может иметь только определенные значения, описанные ниже.</xsd:documentation>
               <xsd:documentation xml:lang="en">The status of a asynchronous task in MONETA.RU.</xsd:documentation>
            </xsd:annotation>
            <xsd:restriction base="xsd:string">
               <xsd:enumeration value="INPROGRESS">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">Асихронная задача в обработке.</xsd:documentation>
                    <xsd:documentation xml:lang="en">MONETA.RU is processing the asynchronous task.</xsd:documentation>
                  </xsd:annotation>
               </xsd:enumeration>
               <xsd:enumeration value="CREATED">
                  <xsd:annotation>
                    <xsd:documentation xml:lang="ru">Асихронная задача создана.</xsd:documentation>
                    <xsd:documentation xml:lang="en">Asynchronous task is registered in MONETA.RU.</xsd:documentation>
                  </xsd:annotation>
               </xsd:enumeration>
            </xsd:restriction>
         </xsd:simpleType>


      </xsd:schema>
   </wsdl:types>
   <wsdl:message name="GetNextStepRequest">
      <wsdl:part element="sch:GetNextStepRequest" name="GetNextStepRequest"/>
   </wsdl:message>
   <wsdl:message name="GetNextStepResponse">
      <wsdl:part element="sch:GetNextStepResponse" name="GetNextStepResponse"/>
   </wsdl:message>
   <wsdl:message name="GetServiceProvidersRequest">
      <wsdl:part element="sch:GetServiceProvidersRequest" name="GetServiceProvidersRequest"/>
   </wsdl:message>
   <wsdl:message name="GetServiceProvidersResponse">
      <wsdl:part element="sch:GetServiceProvidersResponse" name="GetServiceProvidersResponse"/>
   </wsdl:message>
   <wsdl:message name="FindServiceProviderByIdRequest">
      <wsdl:part element="sch:FindServiceProviderByIdRequest" name="FindServiceProviderByIdRequest"/>
   </wsdl:message>
   <wsdl:message name="FindServiceProviderByIdResponse">
      <wsdl:part element="sch:FindServiceProviderByIdResponse" name="FindServiceProviderByIdResponse"/>
   </wsdl:message>
   <wsdl:message name="AsyncRequest">
      <wsdl:part element="sch:AsyncRequest" name="AsyncRequest"/>
   </wsdl:message>
   <wsdl:message name="AsyncResponse">
      <wsdl:part element="sch:AsyncResponse" name="AsyncResponse"/>
   </wsdl:message>
   <wsdl:portType name="Messages">
      <wsdl:operation name="GetNextStep">
         <wsdl:input message="tns:GetNextStepRequest" name="GetNextStepRequest"/>
         <wsdl:output message="tns:GetNextStepResponse" name="GetNextStepResponse"/>
      </wsdl:operation>
      <wsdl:operation name="GetServiceProviders">
         <wsdl:input message="tns:GetServiceProvidersRequest" name="GetServiceProvidersRequest"/>
         <wsdl:output message="tns:GetServiceProvidersResponse" name="GetServiceProvidersResponse"/>
      </wsdl:operation>
      <wsdl:operation name="FindServiceProviderById">
         <wsdl:input message="tns:FindServiceProviderByIdRequest" name="FindServiceProviderByIdRequest"/>
         <wsdl:output message="tns:FindServiceProviderByIdResponse" name="FindServiceProviderByIdResponse"/>
      </wsdl:operation>
      <wsdl:operation name="Async">
         <wsdl:input message="tns:AsyncRequest" name="AsyncRequest"/>
         <wsdl:output message="tns:AsyncResponse" name="AsyncResponse"/>
      </wsdl:operation>
   </wsdl:portType>
   <wsdl:binding name="MessagesSoap11" type="tns:Messages">
      <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
      <wsdl:operation name="GetNextStep">
         <soap:operation soapAction=""/>
         <wsdl:input name="GetNextStepRequest">
            <soap:body use="literal"/>
         </wsdl:input>
         <wsdl:output name="GetNextStepResponse">
            <soap:body use="literal"/>
         </wsdl:output>
      </wsdl:operation>
      <wsdl:operation name="GetServiceProviders">
         <soap:operation soapAction=""/>
         <wsdl:input name="GetServiceProvidersRequest">
            <soap:body use="literal"/>
         </wsdl:input>
         <wsdl:output name="GetServiceProvidersResponse">
            <soap:body use="literal"/>
         </wsdl:output>
      </wsdl:operation>
      <wsdl:operation name="FindServiceProviderById">
         <soap:operation soapAction=""/>
         <wsdl:input name="FindServiceProviderByIdRequest">
            <soap:body use="literal"/>
         </wsdl:input>
         <wsdl:output name="FindServiceProviderByIdResponse">
            <soap:body use="literal"/>
         </wsdl:output>
      </wsdl:operation>
      <wsdl:operation name="Async">
         <soap:operation soapAction=""/>
         <wsdl:input name="AsyncRequest">
            <soap:body use="literal"/>
         </wsdl:input>
         <wsdl:output name="AsyncResponse">
            <soap:body use="literal"/>
         </wsdl:output>
      </wsdl:operation>
   </wsdl:binding>
   <wsdl:service name="MessagesService">
      <wsdl:port binding="tns:MessagesSoap11" name="MessagesSoap11">
         <soap:address location="https://moneta.ru:443/services"/>
      </wsdl:port>
   </wsdl:service>
</wsdl:definitions>