Результаты поиска
    Ничего не найдено
    Оглавление
    Отраслевые решения

    Отраслевые решения

    Маркетплейсам и площадкам
    Расширенная функциональность и специфические решения для бизнеса маркетплейсов и площадок.

    Подразделы Отраслевые решения

    Маркетплейсам и площадкам

    Проекты оферт и дополнительных соглашений

    C2C без ЭСП с тарифом НКО

    Проект дополнительного соглашения с Платформой по схеме C2C без ЭСП с тарифом НКО.pdf

    Плательщик и Получатель - физические лица без электронных кошельков.

    Проект C2C оферты.pdf

    В Монете заводится один личный кабинет - Платформы.

    C2B без ЭСП с тарифом НКО

    Проект дополнительного соглашения с Платформой по схеме C2B с тарифом НКО.pdf

    Плательщики - физические лица без электронных кошельков. Получатели - Юридические лица или ИП.

    Проект C2B оферты.pdf

    В Монете заводится два личных кабинета Платформы: один для счёта Платформы, второй для Получателей Платформы.

    C2CB без ЭСП без тарифа НКО

    Проект дополнительного соглашения с Платформой по схеме C2CB без ЭСП с тарифом НКО.pdf

    Плательщики - физические лица без электронных кошельков. Получатели - Юридические лица, ИП и физические лица без электронных кошельков.

    Проект C2CB оферты.pdf

    В Монете заводится два личных кабинета Платформы: один для счёта Платформы, второй для Получателей Платформы.

    Подразделы Маркетплейсам и площадкам

    Результаты поиска
      Ничего не найдено
      Оглавление
      Регистрация

      Регистрация

      ЮЛ и ИП
      Самозанятые

      Подразделы Регистрация

      Результаты поиска
        Ничего не найдено
        Оглавление
        ЮЛ и ИП

        ЮЛ и ИП

        Личный кабинет
        Email-уведомления при редактировании профиля продавца
        URL-уведомления при редактировании профиля продавца
        Варианты подключения к Монете

        Подразделы ЮЛ и ИП

        Результаты поиска
          Ничего не найдено
          Оглавление
          Личный кабинет

          Личный кабинет

          В личном кабинете (ЛК) находятся настройки и счета клиентов маркетплейсов.

          Доступ к ЛК предоставляется после заключения Договора об информационно-технологическом взаимодействии.

          После регистрации на email маркетплейса направляется уведомление с описанием структуры личного кабинета.

          В структуре этого ЛК маркетплейса 3 группы:

          • Зарегистрированные клиенты - группа, в которой Система МОНЕТА.РУ создает личный кабинет для клиентов маркетплейса - юридических лиц и индивидуальных предпринимателей (далее ЮЛ/ИП) при регистрации.

          Активные клиенты - в этой группе находятся клиенты маркетплейса ЮЛ/ИП, для которых включен прием платежей.

          Перевод в Активные клиенты из группы Зарегистрированные клиенты, осуществляется после заполнения личного кабинета ЮЛ/ИП и выполнения требований по размещению информации о ЮЛ/ИП на сайте маркетплейса.

          Информация, обязательная для размещения на сайте и (или) в мобильном приложении по каждому клиенту маркетплейса и примеры размещения указана здесь: https://www.payanyway.ru/info/w/ru/public/w/partnership/howto/terms.html

          После перевода в группу “Активные клиенты” для ЮЛ/ИП необходимо скачать заявление о присоединении к Договору и создать расширенный счёт, на котором будут учитываться платежи.

          Клиенты без заявления - группа, в которой находятся ЮЛ/ИП, не приславшие заявление о присоединении к Договору в течение 30 дней с момента регистрации в Системе МОНЕТУ.РУ, согласно п.2.5. Договора о переводах без открытия счетов в системе МОНЕТА.РУ и осуществлении информационно-технологического взаимодействия для юридических лиц и индивидуальных предпринимателей - резидентов РФ, или не согласованные НКО МОНЕТА.

          После основных этапов подключения Система МОНЕТА.РУ направляет уведомления маркетплейсу: обязательные E-mail уведомления и настраиваемые URL-уведомления.

          Если маркетплейс обеспечивает безопасную сделку или мультикорзину, будет создан еще один личный кабинет, в котором будут находиться транзитный и комиссионный счета маркетплейса. Информация об этом личном кабинете индивидуальна, поэтому предоставляется в виде письма на логин маркетплейса.

          Результаты поиска
            Ничего не найдено
            Оглавление
            URL-уведомления при редактировании профиля продавца

            URL-уведомления при редактировании профиля продавца

            Для настройки URL-уведомления необходимо отправить URL вашего обработчика на mp@payanyway.ru

            URL-уведомления отправляются методом POST.

            Content-type: application/x-www-form-urlencoded.

            Encoding: UTF-8

            На адрес вашего обработчика Система “МОНЕТА.РУ” будет направлять следующие уведомления:

            CREATE_UNIT - Создание дочернего юнита.

            Примечание: NOTIFICATION=CREATE_UNIT&ACTION=CREATE_UNIT&UNIT_ID=…&PARENT_ID=…&INN=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID +PROFILE_ID+OBJECT_ID+ключ)

            EDIT_CONTRACT - Изменение статуса договора.

            Статусы:

            • INACTIVE - статус договора после регистрации в Системе “МОНЕТА.РУ”
            • ACTIVE - статус договора после перевода юнита продавца из группы Зарегистрированные клиенты в Рабочую группу.
            • RESTRICTED - статус договора после перевода из Рабочей группы в Клиенты без заявления.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=EDIT_CONTRACT&UNIT_ID=…&CONTRACT_ID=…&OLD_STATUS=…&NEW_STATUS=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+CONTRACT_ID+OLD_STATUS+NEW_STATUS+ключ)

            CREATE_ACCOUNT - Создание счетов.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=CREATE_ACCOUNT&UNIT_ID=…&ACCOUNT_ID=…&ACCOUNT_TYPE=…&ACCOUNT_CREDIT_EXTID=…& ACCOUNT_DEBIT_EXTID=…&ACCOUNT_NUMBER=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+ACCOUNT_ID+ACCOUNT_TYPE+ключ)

            SEND_AGREEMENT - Продавцу сформировано Заявление о присоединении к Договору.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=SEND_AGREEMENT&UNIT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID +PROFILE_ID+OBJECT_ID+ключ)

            EDIT_PROFILE - Редактирование Основного профиля.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=EDIT_PROFILE&UNIT_ID=…&PROFILE_ID=…&OBJECT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID +PROFILE_ID+OBJECT_ID+ключ)

            MOVE_UNIT - Перенос юнита. PARENT_ID - новый родительский юнит.

            Примечание: NOTIFICATION=PROFILE_UPDATE &ACTION=MOVE_UNIT&UNIT_ID=…&PARENT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+PARENT_ID+ключ)

            CREATE_BANK_ACCOUNT - Создание банковских реквизитов.

            Примечание: NOTIFICATION=PROFILE_UPDATE &ACTION=CREATE_BANK_ACCOUNT&UNIT_ID=…&PROFILE_ID=…&OBJECT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+PROFILE_ID+OBJECT_ID+ключ)

            EDIT_BANK_ACCOUNT - Редактирование банковских реквизитов.

            Примечание: NOTIFICATION=PROFILE_UPDATE &ACTION=EDIT_BANK_ACCOUNT&UNIT_ID=…&PROFILE_ID=…&OBJECT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+PROFILE_ID+OBJECT_ID+ключ)

            CREATE_LEGAL_INFO - Создание юридических реквизитов.

            Примечание: NOTIFICATION=PROFILE_UPDATE &ACTION=CREATE_LEGAL_INFO &UNIT_ID=…&PROFILE_ID=…&OBJECT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+PROFILE_ID+OBJECT_ID+ключ)

            EDIT_LEGAL_INFO - Редактирование юридических реквизитов.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=EDIT_LEGAL_INFO&UNIT_ID=…&PROFILE_ID=…&OBJECT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+PROFILE_ID+OBJECT_ID+ключ)

            CREATE_DOCUMENT - Создание документа.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=CREATE_DOCUMENT&UNIT_ID=…&PROFILE_ID=…&OBJECT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+PROFILE_ID+OBJECT_ID+ключ)

            EDIT_DOCUMENT - Редактирование документа.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=EDIT_DOCUMENT&UNIT_ID=…&PROFILE_ID=…&OBJECT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+PROFILE_ID+OBJECT_ID+ключ)

            CREATE_FOUNDER - Создание Учредителя. PROFILE_ID равен OBJECT_ID.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=CREATE_FOUNDER&UNIT_ID=…&PROFILE_ID=…&OBJECT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+PROFILE_ID+OBJECT_ID+ключ)

            EDIT_FOUNDER - Редактирование Учредителя. PROFILE_ID равен OBJECT_ID.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=EDIT_FOUNDER&UNIT_ID=…&PROFILE_ID=…&OBJECT_ID=…&MNT_SIGNATURE=md5(ACTION+UNIT_ID+PROFILE_ID+OBJECT_ID+ключ)

            EDIT_PROFILE - Обновление профиля.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=EDIT_PROFILE&UNIT_ID=…&UPDATE_DETAILS=…&MNT_SIGNATURE= md5(ACTION+UNIT_ID+UPDATE_DETAILS+ключ)

            CONDITION_REJECTED - Продавец не прошёл проверку соответствия ПиУ.

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=CONDITION_REJECTED&UNIT_ID=…&PAYEE_DETAILS=…&PAYER_DETAILS=…&SITE_DETAILS=…&PAYMENT_INFO_DETAILS=…&CORRECT_DATA_DETAILS=…&MNT_SIGNATURE=… ACTION+UNIT_ID+ключ

            RECEIVED_AGREEMENT - получено заявление о присоединении к Договору

            Примечание: NOTIFICATION=PROFILE_UPDATE&ACTION=RECEIVED_AGREEMENT&UNIT_ID=…&PAYEE_DETAILS=&PAYER_DETAILS=&SITE_DETAILS=&PAYMENT_INFO_DETAILS=&CORRECT_DATA_DETAILS=&MNT_SIGNATURE=…

            На уведомление следует ответить http-status=200 или строчкой: SUCCESS

            Если адрес обработчика не может быть вызван по какой-либо причине, либо в ответе придёт не SUCCESS, то уведомление будет направлено повторно. Всего 8 раз в течении суток, с увеличивающейся периодичностью: 12 минут, 24 минуты, 48 минут и т. д.

            Результаты поиска
              Ничего не найдено
              Оглавление
              Варианты подключения к Монете

              Варианты подключения к Монете

              Глава содержит информацию о подключении клиента маркетплейса юридического лица и индивидуального предпринимателя (далее ЮЛ/ИП) в качестве получателя платежей или плательщика в Системе МОНЕТА.РУ.

              Подключение к Системе состоит из трех основных этапов:

              • Регистрация
              • Заполнение личного кабинета
              • Создание бизнес-счета (расширенного счета)

              ‌Вариант 1. Клиент маркетплейса подключается самостоятельно. Клиент регистрируется на сайте https://payanyway.ru по специальной ссылке.

              В этом случае клиент имеет доступ к личному кабинету на сайте https://payanyway.ru и может сам заполнить личный кабинет, указать все настройки, необходимые для приема платежей и управлять денежными средствами.

              Вариант 2. Маркетплейс регистрирует клиента с помощью интерфейса MerchantAPI, предварительно запросив необходимые данные у ЮЛ/ИП, например, в личном кабинете на сайте маркетплейса.

              В этом случае клиент маркетплейса не имеет доступ к личному кабинету на сайте https://payanyway.ru. Маркетплейс отображает своему клиенту в личном кабинете на сайте маркетплейса информацию из личного кабинета в Cистеме МОНЕТА.РУ, например, доступный баланс, историю операций.

              В обоих вариантах клиент маркетплейса становится клиентом НКО “МОНЕТА” (ООО), принимая условия Договора о переводах без открытия счетов в Системе МОНЕТА.РУ и осуществлении информационно-технологического взаимодействия для юридических лиц и индивидуальных предпринимателей — резидентов РФ.

              Во втором варианте с условиями Договора маркетплейс должен ознакомить ЮЛ/ИП на своем сайте до регистрации в Системе МОНЕТА.РУ, разместив информацию об “НКО МОНЕТА” (ООО) и ссылку на Договор о переводах без открытия счетов в Системе МОНЕТА.РУ и осуществлении информационно-технологического взаимодействия для юридических лиц и индивидуальных предпринимателей — резидентов РФ.

              Подразделы Варианты подключения к Монете

              Результаты поиска
                Ничего не найдено
                Оглавление
                Клиент маркетплейса подключается самостоятельно

                Клиент маркетплейса подключается самостоятельно

                Основные этапы взаимодействия НКО “МОНЕТА” (ООО) с маркетплейсом и клиентом юридическим лицом и индивидуальным предпринимателем (далее ЮЛ/ИП) при самостоятельном подключении к Системе МОНЕТА.РУ:‌

                1. Клиент регистрируется на сайте маркетплейса
                2. Маркетплейс переводит клиента на сайт https://payanyway.ru по специальной ссылке для регистрации в Системе МОНЕТА.РУ.

                Формат ссылки:

                https://site/backoffice/auth/register?marketplacePublicId=stringValue&marketplaceVerificationCode=stringValue&site=value&inn=value

                В этой ссылке маркетплейс указывает ИНН клиента и сайт.

                В поле “сайт” может быть указана как страница клиента на сайте маркетплейса, так и URL собственного сайта клиента, зависит от бизнес-кейса маркетплейса.

                1. Клиент регистрируется на сайте https://payanyway.ru. Указывает номер телефона, e-mail.
                Форма регистрации Форма регистрации
                1. В Системе МОНЕТА.РУ создается личный кабинет для клиента.
                2. Система МОНЕТА.РУ отправляет маркетплейсу E-mail и URL (CREATE_UNIT) уведомления о регистрации клиента.
                3. Маркетплейс фиксирует в своей системе соответствие “ИНН клиента - юнит клиента” в Системе МОНЕТА.РУ.
                4. Система МОНЕТА.РУ отправляет клиенту E-mail уведомление о регистрации на адрес электронной почты, указанный при регистрации на сайте https://payanyway.ru.
                5. Клиент активирует учетную запись и заполняет личный кабинет на сайте https://payanyway.ru.
                6. Сотрудник НКО МОНЕТА (ООО) проверяет заполненный личный кабинет и страницу клиента на наличие информации, обязательной для размещения на сайте и (или) в мобильном приложении:
                • Наименование юридического лица или ИП (Фамилия, Имя, Отчество полностью)
                • ИНН для юридического лица, ОГРНИП для индивидуального предпринимателя
                • Адрес регистрации (для ИП достаточно указать город)
                • Контактный телефон и адрес электронной почты
                • Порядок оформления и сроки исполнения заказа, его оплаты, доставки и возврата
                1. ‌Система МОНЕТА.РУ включает прием платежей для клиента.
                2. Система МОНЕТА.РУ отправляет маркетплейсу E-mail и URL (EDIT_CONTACT) уведомления о включении приема платежей для клиента и о необходимости создать счет.
                3. Маркетплейс учитывает в своей системе, что клиенту включен прием платежей.
                4. Система МОНЕТА.РУ отправляет клиенту E-mail уведомление о включении приема платежей для него и о необходимости создать счет.
                5. Клиент создает бизнес-счет в Системе МОНЕТА.РУ.
                6. Система МОНЕТА.РУ отправляет клиенту E-mail уведомление о созданном счете.
                7. клиент принимает уведомление о созданном счете к сведению.
                8. Система МОНЕТА.РУ отправляет маркетплейсу E-mail и URL (CREATE_ACCOUNT) уведомления о созданном счете для клиента.
                9. Маркетплейс фиксирует в своей системе соответствие ИНН-юнит-счет и указывает настройки для счета клиента, необходимые для приема платежей.

                Для того, чтобы на каждом счете клиента не указывать настройки, маркетплейс может добавлять в настройках счета клиента счет-прототип методом EditAccountRequest (стр.129 MONETA.MerchantAPI).

                1. Система МОНЕТА.РУ отправляет клиенту E-mail уведомление о необходимости ему отправить в НКО заявление о присоединении к Договору.
                2. Система МОНЕТА.РУ отправляет маркетплейсу E-mail и URL (SEND_AGREEMENT) уведомления о необходимости клиенту отправить в НКО заявление о присоединении к Договору.
                3. Клиент отправляет в НКО “МОНЕТА” (ООО) заявление о присоединении к Договору.
                4. НКО “МОНЕТА” (ООО) получает заявление о присоединении к Договору.
                5. Система МОНЕТА.РУ отправляет клиенту E-mail уведомление о получении заявления о присоединении к Договору.
                6. Система МОНЕТА.РУ отправляет E-mail уведомление маркетплейсу о получении заявления о присоединении к Договору.
                7. Маркетплейс и клиент принимают к сведению уведомление о получении заявления.
                Результаты поиска
                  Ничего не найдено
                  Оглавление
                  Маркетплейс подключает клиента

                  Маркетплейс подключает клиента

                  Пример очередности запросов для подключения юридического лица и/или индивидуального предпринимателя с помощью ​интерфейса MerchantAPI.

                  1. CreateProfileRequest - Создание личного кабинета (юнита) клиента (продавца) маркетплейса.

                  По указанному ИНН, НКО МОНЕТА (ООО) добавит в личный кабинет клиента данные о клиенте, полученные из выписки ЕГРЮЛ/ЕГРИП и отправит макетплейсу URL- уведомление об обновлении данных клиента.

                  1. CheckProfileRequest - Получение списка недостающих данных в юните клиента маркетплейса. В ответе содержится список параметров и запросов, с помощью которых можно заполнить недостающие данные в подпрофилях базового профиля (юнита).
                  2. EditProfileRequest базового профиля - Заполнение базового профиля клиента.
                  3. EditProfileRequest профиля руководителя - Заполнение подпрофиля руководителя.
                  4. EditProfileRequest профиля руководителя (либо CheckProfile) - Получение id документа руководителя.
                  5. EditProfileDocumentRequest документа руководителя - Заполнение документа руководителя.
                  6. EditProfileRequest профиля учредителя - Заполнение подпрофиля учредителя.
                  7. EditProfileRequest профиля бенефициарного владельца - Заполнение подпрофиля бенефициарного владельца.
                  8. FindProfileDocumentsRequest документа бенефициарного владельца (либо CheckProfile) - Получение id документа бенефициарного владельца.
                  9. EditProfileDocumentRequest паспорта бенефициарного владельца - Заполнение паспорта бенефициарного владельца.
                  10. CreateBankAccountRequest - Создание банковских реквизитов.
                  11. FindLegalInformationRequest профиля юридических реквизитов - Получение id юридических реквизитов.
                  12. SaveLegalInformationRequest - Заполнение подпрофиля юридических реквизитов
                  13. EditProfileRequest базового профиля с атрибутом CONDITIONS_CORRECT_DATA - Подтверждение готовности юнита клиента к проверке сотрудниками НКО.

                  Система МОНЕТА.РУ отправляет уведомление сотруднику коммерческого отдела НКО “МОНЕТА” (ООО) о необходимости проверить личный кабинет (юнит) клиента маркетплейса.

                  Сотрудник проверяет личный кабинет клиента и активирует его.

                  Система МОНЕТА.РУ отправляет маркетплейсу URL-уведомление MOVE_UNIT о переводе юнита клиента из группы “Зарегистрированные клиенты” в “Активные клиенты”

                  После перевода в группу “Активные клиенты” потребуется отправить следующие запросы:

                  • CreateAccount - создание расширенного счета для клиента.
                  • FindProfileDocumentFiles - скачать заявление о присоединении к оферте.
                  • EditProfile - передать дату и способ отправки заявления о присоединении к оферте.

                  Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                  Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                  Примечание: Приведенный выше список запросов для регистрации продавца не является строгой последовательностью запросов в Систему МОНЕТА.РУ.

                  Последовательность запросов, отправляемых маркетплейсом в Систему МОНЕТА.РУ, зависит от организационно-правовой формы клиента и данным по учредителям, бенефициарным владельцам клиента.

                  Подразделы Маркетплейс подключает клиента

                  Результаты поиска
                    Ничего не найдено
                    Оглавление
                    Определения

                    Определения

                    Базовый профиль - профиль, принадлежащий личному кабинету (юниту) юридического лица и индивидуального предпринимателя (далее ЮЛ/ИП).

                    Базовый профиль добавляется Системой МОНЕТА.РУ при создании личного кабинета (юнита).

                    Получатель платежей, продавец - юридическое лицо; физическое лицо, зарегистрированное в качестве индивидуального предпринимателя, для которых маркетплейс обеспечивает взаимодействие с НКО “МОНЕТА” (ООО) по приему платежей в рамках Договора о переводах без открытия счетов в Системе МОНЕТА.РУ и осуществления информационно-технологического взаимодействия для юридических лиц и индивидуальных предпринимателей - резидентов РФ..

                    Является клиентом НКО “МОНЕТА” и клиентом маркетплейса.

                    Система МОНЕТА.РУ - совокупность программных и аппаратных средств, обеспечивающих информационное и технологическое взаимодействие между НКО, Плательщиком, Получателем и Эмитентом при совершении Переводов с использованием сети Интернет.

                    СМЭВ - это Система Межведомственного Электронного Взаимодействия, которая позволяет получать данные о юридическом лице и индивидуальном предпринимателе, которые доступны в выписке ЕГРЮЛ/ЕГРИП.

                    Маркетплейс / Торговая Площадка / Платформа - владелец Сервиса, обеспечивающего Плательщикам и Получателям возможность инициирования Распоряжений Плательщиков для осуществления НКО Переводов, а также регистрацию Получателей и Плательщиков в Системе НКО. Маркетплейс - технологический партнер, которого привлек клиент для взаимодействия с НКО “МОНЕТА” (ООО) согласно п. 1.5 Договора о переводах без открытия счетов в Системе “МОНЕТА.РУ” и осуществления информационно-технологического взаимодействия для юридических лиц и индивидуальных предпринимателей - резидентов РФ.

                    Результаты поиска
                      Ничего не найдено
                      Оглавление
                      Набор полей в личном кабинете клиента

                      Набор полей в личном кабинете клиента

                      Данная информация предоставляется по запросу маркетплейса на mp@payanyway.ru.

                      Результаты поиска
                        Ничего не найдено
                        Оглавление
                        Создание профиля

                        Создание профиля

                        Создание личного кабинета (юнита) для клиента маркетплейса.

                        Обязательные параметры запроса: INN, ORGANISATION_SHORT_NAME, EMAIL, URL, UNITID - номер юнита группы “Зарегистрированные клиенты”.

                        Ответ содержит номер созданного личного кабинета (юнита) клиента.

                        Запрос:

                        {
                           "Envelope":{
                              "Header":{
                                 "Security":{
                                    "UsernameToken":{
                                       "Username":"Username",
                                       "Password":"Password"
                                    }
                                 }
                              },
                              "Body":{
                                 "CreateProfileRequest":{
                                    "unitId":НОМЕР ЮНИТА ГРУППЫ "ЗАРЕГИСТРИРОВАННЫЕ ПАРТНЕРЫ ПЛОЩАДКИ",
                                    "profileType":"organization",
                                    "profile":{
                                       "attribute":[
                                          {
                                             "key":"ORGANIZATION_NAME_SHORT",
                                             "value":"ООО Маркетплейс"
                                          },
                                          {
                                             "key":"INN",
                                             "value":"1234567890"
                                          },
                                          {
                                             "key":"CONTACT_EMAIL",
                                             "value":"test@test.ru"
                                          },
                                          {
                                             "key":"URL",
                                             "value":"payanyway.marketplace.ru"
                                          }
                                       ]
                                    }
                                 }
                              }
                           }
                        }

                        Ответ:

                        {
                           "Envelope":{
                              "Body":{
                                 "CreateProfileResponse":12345
                              }
                           }
                        }
                        <?php
                        if (isset($_POST['org_name_short']) && isset($_POST['org_inn']) && isset($_POST['org_email']) && isset($_POST['org_url'])) {
                        
                            $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                            include_once($sdkAppFileName);
                        
                            try {
                                $monetaSdk = new \Moneta\MonetaSdk();
                                $monetaSdk->checkMonetaServiceConnection();
                        
                                $request = new \Moneta\Types\CreateProfileRequest();
                                $request->unitId = 1111111111;
                                $request->profileType = \Moneta\Types\ProfileType::organization;
                        
                                $profile = new \Moneta\Types\Profile();
                        
                                //краткое название организации
                                $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                $attribute->approved = false;
                                $attribute->key = "ORGANIZATION_NAME_SHORT";
                                $attribute->value = $_POST['org_name_short'];
                                $profile->addAttribute($attribute);
                        
                                //ИНН организации
                                $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                $attribute->approved = false;
                                $attribute->key = "INN";
                                $attribute->value = $_POST['org_inn'];
                                $profile->addAttribute($attribute);
                        
                                //контактный e-mail
                                $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                $attribute->approved = false;
                                $attribute->key = "CONTACT_EMAIL";
                                $attribute->value = $_POST['org_email'];
                                $profile->addAttribute($attribute);
                        
                                //адрес сайта организации
                                $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                $attribute->approved = false;
                                $attribute->key = "URL";
                                $attribute->value = $_POST['org_url'];
                                $profile->addAttribute($attribute);
                        
                                $request->profile = $profile;
                        
                                //создание новой организации(продавца)
                                $result = $monetaSdk->monetaService->CreateProfile($request);
                        
                                if (is_array($result) || (strlen($result) !== strlen(intval($result)))) {
                                    throw new Exception(print_r($result, true));
                                }
                        
                                echo "UNIT ID нового продавца: $result<br/><br/>";
                                echo "Запишите UNIT ID нового продавца. Он понадобится для совершения дальнейших шагов.";
                        
                            } catch (Exception $e) {
                                echo "Произошла ошибка:<br />";
                                echo "<pre>" . $e->getMessage() . "</pre>";
                            }
                        
                        } else {
                            echo '
                                <form method="post">
                                    Краткое название организации:<br/>
                                    <input type="text" name="org_name_short" placeholder="ООО &#34;Маркетплейс&#34;"/><br/><br/>
                        
                                    ИНН организации:<br/>
                                    <input type="text" name="org_inn"/><br/><br/>
                        
                                    Контактный e-mail:<br/>
                                    <input type="text" name="org_email"/><br/><br/>
                        
                                    Url сайта:<br/>
                                    <input type="text" name="org_url" placeholder="http://example.ru"/><br/><br/>
                        
                                    <input type="submit" value="Создать профиль организации"/>
                                </form>
                            ';
                        }

                        Полученное значение unitid маркетплейсу необходимо сохранить в своей системе учета.

                        Каждому юниту (unitid) соответствует базовый профиль (profileid), его значение можно получить в ответе на запрос CheckProfileRequest.

                        Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                        Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                        Результаты поиска
                          Ничего не найдено
                          Оглавление
                          Проверка полей профиля

                          Проверка полей профиля

                          Получение информации о незаполненных полях созданного личного кабинета (юнита).

                          В ответ маркетплейс получит номер базового профиля (profileid) и номера подпрофилей.

                          Запрос:

                          {
                             "Envelope":{
                                "Header":{
                                   "Security":{
                                      "UsernameToken":{
                                         "Username":"Username",
                                         "Password":"Password"
                                      }
                                   }
                                },
                                "Body":{
                                   "CheckProfileRequest":{
                                       "unitId":12345
                          
                                   }
                                }
                             }
                          }

                          Ответ:

                          {"Envelope": {"Body": {"CheckProfileResponse": {
                             "foundersTotalShare": 0,
                             "daysBeforePartnerLock": 30,
                             "requestInfo":    [
                                      {
                                   "method": "EditProfile",
                                   "scope": "Founder",
                                   "profile":          {
                                      "profileId": 55555,
                                      "profile": {"attribute":             [
                                                        {
                                            "value": "number{0...100}",
                                            "key": "FOUNDER_SHARE_PERCENTAGE"
                                         },
                                                        {
                                            "value": "number{0...}",
                                            "key": "FOUNDER_SHARE_NUMERATOR"
                                         },
                                                        {
                                            "value": "number{0...}",
                                            "key": "FOUNDER_SHARE_DENOMINATOR"
                                         }
                                      ]},
                                      "unitId": 12345
                                   },
                                   "action": "REQUEST"
                                },
                                      {
                                   "method": "EditProfile",
                                   "scope": "Personal",
                                   "profile":          {
                                      "profileId": 54321,
                                      "profile": {"attribute":             [
                                                        {
                                            "value": "address@domain.com",
                                            "key": "FINANCE_EMAIL"
                                         },
                                                        {
                                            "value": "number{79001112233}",
                                            "key": "PHONE_SUPPORT"
                                         },
                                                        {
                                            "value": "string",
                                            "key": "FIO_CONTACT"
                                         },
                                                        {
                                            "value": "Y|N",
                                            "key": "CONDITIONS_PAYER"
                                         },
                                                        {
                                            "value": "EXIST|NONE",
                                            "key": "BUDGET_ARREARS_ABSENCE"
                                         },
                                                        {
                                            "value": "Y|N",
                                            "key": "CONDITIONS_PAYEE"
                                         },
                                                        {
                                            "value": "string",
                                            "key": "PLANNED_TURNOVERS"
                                         },
                                                        {
                                            "value": "string",
                                            "key": "REGISTRATION_AUTHORITY_RU"
                                         },
                                                        {
                                            "value": "string",
                                            "key": "AGREEMENT_SIGNER_FIO"
                                         },
                                                        {
                                            "value": "Y|N",
                                            "key": "CONDITIONS_CORRECT_DATA"
                                         },
                                                        {
                                            "value": "number{79001112233}",
                                            "key": "PHONE_CONTACT"
                                         },
                                                        {
                                            "value": "Y|N",
                                            "key": "CONDITIONS_PAYMENT_INFO"
                                         },
                                                        {
                                            "value": "country: isocode[RUS], isocode2L[RU],  name[Россия|Russia]",
                                            "key": "COUNTRY"
                                         },
                                                        {
                                            "value": "POWER_OF_ATTORNEY|ARTICLES_OF_ASSOCIATION|OTHER",
                                            "key": "ACTING_DOCUMENT"
                                         },
                                                        {
                                            "value": "string",
                                            "key": "FIO_ACCOUNTANT"
                                         },
                                                        {
                                            "value": "string",
                                            "key": "POST_ADDRESS"
                                         },
                                                        {
                                            "value": "address@domain.com",
                                            "key": "TECHNICAL_EMAIL"
                                         },
                                                        {
                                            "value": "Y|N",
                                            "key": "CONDITIONS_SITE"
                                         },
                                                        {
                                            "value": "number{79001112233}",
                                            "key": "PHONE_ACCOUNTANT"
                                         }
                                      ]},
                                      "unitId": 12345
                                   },
                                   "action": "REQUEST"
                                },
                                      {
                                   "method": "EditProfile",
                                   "scope": "Director",
                                   "profile":          {
                                      "profileId": 44444,
                                      "profile": {"attribute":             [
                                                        {
                                            "value": "country: isocode[RUS], isocode2L[RU],  name[Россия|Russia]",
                                            "key": "NATIONALITY"
                                         },
                                                        {
                                            "value": "string",
                                            "key": "LEGAL_ADDRESS"
                                         },
                                                        {
                                            "value": "string",
                                            "key": "PLACE_OF_BIRTH"
                                         },
                                                        {
                                            "value": "string",
                                            "key": "POST_ADDRESS"
                                         },
                                                        {
                                            "value": "Y|N",
                                            "key": "RF_RESIDENT"
                                         },
                                                        {
                                            "value": "YYYY-MM-DD",
                                            "key": "DATE_OF_BIRTH"
                                         },
                                                        {
                                            "value": "number{79001112233}",
                                            "key": "PHONE_CONTACT"
                                         }
                                      ]},
                                      "unitId": 12345
                                   },
                                   "action": "REQUEST"
                                },
                                      {
                                   "juridical": {"attribute": [         {
                                      "value": "number{11 [КЧ | 222 [КЧ | 333 [КЧ | 444]]]}",
                                      "key": "OKATO"
                                   }]},
                                   "scope": "Juridical",
                                   "action": "CALL_SERVICE_SUPPORT"
                                },
                                      {
                                   "bank":          {
                                      "unitId": 12345,
                                      "attribute":             [
                                                        {
                                            "value": "number{12345678901234567890}",
                                            "key": "ACCOUNT"
                                         },
                                                        {
                                            "value": "number{123456789}",
                                            "key": "BIK"
                                         }
                                      ]
                                   },
                                   "method": "CreateBankAccount",
                                   "scope": "Bank",
                                   "action": "REQUEST"
                                }
                             ],
                             "status": "DATA_REQUIRED"
                          }}}}
                          <?php
                          if (isset($_POST['unit_id'])) {
                          
                              $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                              include_once($sdkAppFileName);
                          
                              try {
                                  $monetaSdk = new \Moneta\MonetaSdk();
                                  $monetaSdk->checkMonetaServiceConnection();
                          
                                  $request = new \Moneta\Types\CheckProfileRequest();
                                  $request->unitId = $_POST['unit_id'];
                          
                                  $result = $monetaSdk->monetaService->CheckProfile($request);
                          
                                  if (is_array($result) && 'OK' !== $result['status']) {
                                      throw new Exception(print_r($result, true));
                                  }
                          
                                  echo "<pre>";
                                  print_r($result);
                                  echo "</pre>";
                          
                              } catch (Exception $e) {
                                  echo "Необходимо заполнить следующие данные:<br />";
                                  echo "<pre>" . $e->getMessage() . "</pre>";
                              }
                          
                          } else {
                              echo '
                                  <form method="post">
                                      unit ID организации(площадки):<br/>
                                      <input type="text" name="unit_id"/><br/><br/>
                          
                                      <input type="submit" value="Проверить данные профиля"/>
                                  </form>
                              ';
                          }

                          Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                          Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                          Результаты поиска
                            Ничего не найдено
                            Оглавление
                            Заполнение базового профиля

                            Заполнение базового профиля

                            Рекомендуем маркетплейсу приступать к заполнению созданного личного кабинета (юнита) клиента после получения URL - уведомления EDIT_PROFILE.

                            Заполнение базового профиля личного кабинета (юнита) клиента маркетплейса.

                            Запрос:

                            {
                               "Envelope":{
                                  "Header":{
                                     "Security":{
                                        "UsernameToken":{
                                           "Username":"Username",
                                           "Password":"Password"
                                        }
                                     }
                                  },
                                  "Body":{
                                     "EditProfileRequest":{
                                         "unitId":12345,
                                           "profileId": 54321,
                                        "profile": {"attribute":             [
                                                          {
                                              "value": "MP@domain.com",
                                              "key": "FINANCE_EMAIL"
                                           },
                                                          {
                                              "value": "79001112233",
                                              "key": "PHONE_SUPPORT"
                                           },
                                                          {
                                              "value": "TEST TET TEST",
                                              "key": "FIO_CONTACT"
                                           },
                                                          {
                                              "value": "Y",
                                              "key": "CONDITIONS_PAYER"
                                           },
                                                          {
                                              "value": "NONE",
                                              "key": "BUDGET_ARREARS_ABSENCE"
                                           },
                                                          {
                                              "value": "Y",
                                              "key": "CONDITIONS_PAYEE"
                                           },
                                                          {
                                              "value": "100000",
                                              "key": "PLANNED_TURNOVERS"
                                           },
                                                          {
                                              "value": "TEST",
                                              "key": "REGISTRATION_AUTHORITY_RU"
                                           },
                                                          {
                                              "value": "TEST TEST TEST",
                                              "key": "AGREEMENT_SIGNER_FIO"
                                           },
                                                                                       {
                                              "value": "79001112233",
                                              "key": "PHONE_CONTACT"
                                           },
                                                          {
                                              "value": "Y",
                                              "key": "CONDITIONS_PAYMENT_INFO"
                                           },
                                                          {
                                              "value": "RU",
                                              "key": "COUNTRY"
                                           },
                                                          {
                                              "value": "ARTICLES_OF_ASSOCIATION",
                                              "key": "ACTING_DOCUMENT"
                                           },
                                                          {
                                              "value": "TEST TEST TEST",
                                              "key": "FIO_ACCOUNTANT"
                                           },
                                                          {
                                              "value": "Йошкар-Ола, ул. гоголя. д.2 стр. А",
                                              "key": "POST_ADDRESS"
                                           },
                                                          {
                                              "value": "MP@domain.com",
                                              "key": "TECHNICAL_EMAIL"
                                           },
                                                          {
                                              "value": "Y",
                                              "key": "CONDITIONS_SITE"
                                           },
                                                        {
                                              "value": "79001112233",
                                              "key": "PHONE_ACCOUNTANT"
                                           }
                                        ]}
                                        }
                                  }
                               }
                            }

                            Ответ:

                            {
                               "Envelope":{
                                  "Body":{
                                     "EditProfileResponse":{
                            
                                     }
                                  }
                               }
                            }
                            <?php
                            if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                            
                                $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                include_once($sdkAppFileName);
                            
                                try {
                                    $monetaSdk = new \Moneta\MonetaSdk();
                                    $monetaSdk->checkMonetaServiceConnection();
                            
                                    $request = new \Moneta\Types\EditProfileRequest();
                                    $request->unitId = $_POST['unit_id'];
                                    $request->profileId = $_POST['profile_id'];
                            
                                    $profile = new \Moneta\Types\Profile();
                            
                                    //E-mail финансовой службы
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "FINANCE_EMAIL";
                                    $attribute->value = $_POST['finance_email'];
                                    $profile->addAttribute($attribute);
                            
                                    //Телефон по техническим вопросам
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "PHONE_SUPPORT";
                                    $attribute->value = $_POST['phone_support'];
                                    $profile->addAttribute($attribute);
                            
                                    //ФИО контакта по техническим вопросам
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "FIO_CONTACT";
                                    $attribute->value = $_POST['fio_contact'];
                                    $profile->addAttribute($attribute);
                            
                                    //Статус "На сайте присутствует контактная информация для плательщиков, доступная без регистрации"
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "CONDITIONS_PAYER";
                                    $attribute->value = $_POST['conditions_payer'];
                                    $profile->addAttribute($attribute);
                            
                                    //Сведения о наличии задолженности перед бюджетом по налогам и сборам
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "BUDGET_ARREARS_ABSENCE";
                                    $attribute->value = $_POST['budget_arrears_absence'];
                                    $profile->addAttribute($attribute);
                            
                                    //Статус "На сайте присутствует информация о получателе платежей, доступная без регистрации плательщика"
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "CONDITIONS_PAYEE";
                                    $attribute->value = $_POST['conditions_payee'];
                                    $profile->addAttribute($attribute);
                            
                                    //Планируемые ежемесячные обороты
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "PLANNED_TURNOVERS";
                                    $attribute->value = $_POST['planned_turnovers'];
                                    $profile->addAttribute($attribute);
                            
                                    //Наименование регистрирующего органа (свидетельство о регистрации)
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "REGISTRATION_AUTHORITY_RU";
                                    $attribute->value = $_POST['registration_authority_ru'];
                                    $profile->addAttribute($attribute);
                            
                                    //ФИО для подписи в договоре
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "AGREEMENT_SIGNER_FIO";
                                    $attribute->value = $_POST['agreement_signer_fio'];
                                    $profile->addAttribute($attribute);
                            
                                    //Контактный телефон
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "PHONE_CONTACT";
                                    $attribute->value = $_POST['phone_contact'];
                                    $profile->addAttribute($attribute);
                            
                                    //Статус "Описание порядка и процесса оплаты, а также информация о временном промежутке между оплатой и отгрузкой (доставкой) товара или предоставлением услуги доступны без регистрации"
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "CONDITIONS_PAYMENT_INFO";
                                    $attribute->value = $_POST['conditions_payment_info'];
                                    $profile->addAttribute($attribute);
                            
                                    //Страна
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "COUNTRY";
                                    $attribute->value = $_POST['country'];
                                    $profile->addAttribute($attribute);
                            
                                    //Документ, на основании которого действует директор
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "ACTING_DOCUMENT";
                                    $attribute->value = $_POST['acting_document'];
                                    $profile->addAttribute($attribute);
                            
                                    //Подробности по документу, на основании которого действует директор, только для "Другой"
                                    if ($_POST['acting_document_details']) {
                                        $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                        $attribute->approved = false;
                                        $attribute->key = "ACTING_DOCUMENT_DETAILS";
                                        $attribute->value = $_POST['acting_document_details'];
                                        $profile->addAttribute($attribute);
                                    }
                            
                                    //ФИО контакта по финансовым вопросам
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "FIO_ACCOUNTANT";
                                    $attribute->value = $_POST['fio_accountant'];
                                    $profile->addAttribute($attribute);
                            
                                    //Почтовый адрес
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "POST_ADDRESS";
                                    $attribute->value = $_POST['post_address'];
                                    $profile->addAttribute($attribute);
                            
                                    //E-mail технической поддержки
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "TECHNICAL_EMAIL";
                                    $attribute->value = $_POST['technical_email'];
                                    $profile->addAttribute($attribute);
                            
                                    //Статус "Сайт полностью функционален и заполнен контентом"
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "CONDITIONS_SITE";
                                    $attribute->value = $_POST['conditions_site'];
                                    $profile->addAttribute($attribute);
                            
                                    //Телефон по финансовым вопросам
                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                    $attribute->approved = false;
                                    $attribute->key = "PHONE_ACCOUNTANT";
                                    $attribute->value = $_POST['phone_accountant'];
                                    $profile->addAttribute($attribute);
                            
                                    $request->profile = $profile;
                            
                                    //сохранение базового профиля организации(продавца)
                                    $result = $monetaSdk->monetaService->EditProfile($request);
                            
                                    if (!empty($result)) {
                                        throw new Exception(print_r($result, true));
                                    }
                            
                                    echo "Данные профиля успешно сохранены.";
                            
                                } catch (Exception $e) {
                                    echo "Произошла ошибка:<br />";
                                    echo "<pre>" . $e->getMessage() . "</pre>";
                                }
                            
                            } else {
                                echo '
                                    <form method="post">
                                        unit ID организации (площадки):<br/>
                                        <input type="text" name="unit_id" required="required"/><br/><br/>
                            
                                        ID базового профиля (Personal):<br/>
                                        <input type="text" name="profile_id" required="required"/><br/><br/>
                            
                                        E-mail финансовой службы:<br/>
                                        <input type="email" name="finance_email" placeholder="address@domain.com" required="required"/><br/><br/>
                            
                                        Телефон по техническим вопросам:<br/>
                                        <input type="tel" name="phone_support" placeholder="79001112233" required="required"/><br/><br/>
                            
                                        ФИО контакта по техническим вопросам:<br/>
                                        <input type="text" name="fio_contact" placeholder="Иванов Иван Иванович" required="required"/><br/><br/>
                            
                                        Наименование регистрирующего органа (свидетельство о регистрации):<br/>
                                        <input type="text" name="registration_authority_ru" required="required"/><br/><br/>
                            
                                        Статус "На сайте присутствует контактная информация <strong>для плательщиков</strong>, доступная без регистрации":<br/>
                                        <input type="radio" name="conditions_payer" value="Y"/>Да
                                        <input type="radio" name="conditions_payer" value="N" checked="checked"/>Нет<br/><br/>
                            
                                        Сведения о наличии задолженности перед бюджетом по налогам и сборам:<br/>
                                        <select name="budget_arrears_absence" required="required">
                                            <option value=""></option>
                                            <option value="EXIST">Есть задолженность</option>
                                            <option value="NONE">Нет задолженности</option>
                                        </select><br/><br/>
                            
                                        Статус "На сайте присутствует информация <strong>о получателе платежей</strong>, доступная без регистрации плательщика":<br/>
                                        <input type="radio" name="conditions_payee" value="Y"/>Да
                                        <input type="radio" name="conditions_payee" value="N" checked="checked"/>Нет<br/><br/>
                            
                                        Планируемые ежемесячные обороты:<br/>
                                        <input type="text" name="planned_turnovers" required="required" placeholder="100000"/><br/><br/>
                            
                                        ФИО для подписи в договоре:<br/>
                                        <input type="text" name="agreement_signer_fio" required="required"/><br/><br/>
                            
                                        Контактный телефон:<br/>
                                        <input type="tel" name="phone_contact" placeholder="79001112233" required="required"/><br/><br/>
                            
                                        Статус "Описание порядка и процесса оплаты, а также информация о временном промежутке между оплатой и отгрузкой (доставкой) товара или предоставлением услуги доступны без регистрации":<br/>
                                        <input type="radio" name="conditions_payment_info" value="Y"/>Да
                                        <input type="radio" name="conditions_payment_info" value="N" checked="checked"/>Нет<br/><br/>
                            
                                        Страна:<br/>
                                        <select name="country" required="required">
                                            <option value=""></option>
                                            <option value="RUS">Россия</option>
                                        </select><br/><br/>
                            
                                        Документ, на основании которого действует директор:<br/>
                                        <select name="acting_document" required="required">
                                            <option value=""></option>
                                            <option value="POWER_OF_ATTORNEY">Доверенность</option>
                                            <option value="ARTICLES_OF_ASSOCIATION">Устав</option>
                                            <option value="OTHER">Другой</option>
                                        </select><br/>
                                        Подробности по документу, на основании которого действует директор, <strong>только для "Другой"</strong>:<br/>
                                        <input type="text" name="acting_document_details"/><br/><br/>
                            
                                        ФИО контакта по финансовым вопросам:<br/>
                                        <input type="text" name="fio_accountant" placeholder="Иванов Иван Иванович" required="required"/><br/><br/>
                            
                                        Почтовый адрес:<br/>
                                        <input type="text" name="post_address" required="required"/><br/><br/>
                            
                                        E-mail технической поддержки:<br/>
                                        <input type="email" name="technical_email" placeholder="address@domain.com" required="required"/><br/><br/>
                            
                                        Статус "Сайт полностью функционален и заполнен контентом":<br/>
                                        <input type="radio" name="conditions_site" value="Y"/>Да
                                        <input type="radio" name="conditions_site" value="N" checked="checked"/>Нет<br/><br/>
                            
                                        Телефон по финансовым вопросам:<br/>
                                        <input type="tel" name="phone_accountant" placeholder="79001112233" required="required"/><br/><br/>
                            
                                        <input type="submit" name="submit" value="Сохранить профиль организации"/>
                                    </form>
                                ';
                            }

                            Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                            Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                            Результаты поиска
                              Ничего не найдено
                              Оглавление
                              Заполнение подпрофиля руководителя

                              Заполнение подпрофиля руководителя

                              Заполнение подпрофиля руководителя в личном кабинете (юните) клиента маркетплейса.

                              Запрос:

                              {
                                 "Envelope":{
                                    "Header":{
                                       "Security":{
                                          "UsernameToken":{
                                             "Username":"Username",
                                             "Password":"Password"
                                          }
                                       }
                                    },
                                    "Body":{
                                       "EditProfileRequest":{
                                          "unitId":12345,
                                          "profileId":44444,
                                          "profile":{
                                             "attribute":[
                                                {
                                                   "value":"RU",
                                                   "key":"NATIONALITY"
                                                },
                                                {
                                                   "value":"LEGAL_ADDRESS",
                                                   "key":"LEGAL_ADDRESS"
                                                },
                                                {
                                                   "value":"PLACE_OF_BIRTH",
                                                   "key":"PLACE_OF_BIRTH"
                                                },
                                                {
                                                   "value":"POST_ADDRESS",
                                                   "key":"POST_ADDRESS"
                                                },
                                                {
                                                   "value":"Y",
                                                   "key":"RF_RESIDENT"
                                                },
                                                {
                                                   "value":"YYYY-MM-DD",
                                                   "key":"DATE_OF_BIRTH"
                                                },
                                                {
                                                   "value":"79123456789",
                                                   "key":"PHONE_CONTACT"
                                                },
                                                {
                                                   "value":"123456789012",
                                                   "key":"INN"
                                                }
                                               ]
                                          }
                                       }
                                    }
                                 }
                              }

                              Ответ:

                              {
                                 "Envelope":{
                                    "Body":{
                                       "EditProfileResponse":{
                              
                                       }
                                    }
                                 }
                              }
                              <?php
                              if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                              
                                  $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                  include_once($sdkAppFileName);
                              
                                  try {
                                      $monetaSdk = new \Moneta\MonetaSdk();
                                      $monetaSdk->checkMonetaServiceConnection();
                              
                                      $request = new \Moneta\Types\EditProfileRequest();
                                      $request->unitId = $_POST['unit_id'];
                                      $request->profileId = $_POST['profile_id'];
                              
                                      $profile = new \Moneta\Types\Profile();
                              
                                      //Гражданство
                                      $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                      $attribute->approved = false;
                                      $attribute->key = "NATIONALITY";
                                      $attribute->value = $_POST['nationality'];
                                      $profile->addAttribute($attribute);
                              
                                      //Место рождения
                                      $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                      $attribute->approved = false;
                                      $attribute->key = "PLACE_OF_BIRTH";
                                      $attribute->value = $_POST['place_of_birth'];
                                      $profile->addAttribute($attribute);
                              
                                      //Адрес регистрации
                                      $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                      $attribute->approved = false;
                                      $attribute->key = "LEGAL_ADDRESS";
                                      $attribute->value = $_POST['legal_address'];
                                      $profile->addAttribute($attribute);
                              
                                      //Почтовый адрес
                                      $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                      $attribute->approved = false;
                                      $attribute->key = "POST_ADDRESS";
                                      $attribute->value = $_POST['post_address'];
                                      $profile->addAttribute($attribute);
                              
                                      //Тип партнёра
                                      $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                      $attribute->approved = false;
                                      $attribute->key = "RF_RESIDENT";
                                      $attribute->value = $_POST['rf_resident'];
                                      $profile->addAttribute($attribute);
                              
                                      //Дата рождения
                                      $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                      $attribute->approved = false;
                                      $attribute->key = "DATE_OF_BIRTH";
                                      $attribute->value = $_POST['date_of_birth'];
                                      $profile->addAttribute($attribute);
                              
                                      //Контактный телефон
                                      $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                      $attribute->approved = false;
                                      $attribute->key = "PHONE_CONTACT";
                                      $attribute->value = $_POST['phone_contact'];
                                      $profile->addAttribute($attribute);
                              
                                      //ИНН
                                      $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                      $attribute->approved = false;
                                      $attribute->key = "INN";
                                      $attribute->value = $_POST['inn'];
                                      $profile->addAttribute($attribute);
                              
                                      $request->profile = $profile;
                              
                                      //сохранение подпрофиля руководителя организации
                                      $result = $monetaSdk->monetaService->EditProfile($request);
                              
                                      if (!empty($result)) {
                                          throw new Exception(print_r($result, true));
                                      }
                              
                                      echo "Данные подпрофиля руководителя успешно сохранены.";
                              
                                  } catch (Exception $e) {
                                      echo "Произошла ошибка:<br />";
                                      echo "<pre>" . $e->getMessage() . "</pre>";
                                  }
                              
                              } else {
                                  echo '
                                      <form method="post">
                                          unit ID организации (площадки):<br/>
                                          <input type="text" name="unit_id" required="required"/><br/><br/>
                              
                                          ID подпрофиля руководителя (Director):<br/>
                                          <input type="text" name="profile_id" required="required"/><br/><br/>
                              
                                          Гражданство:<br/>
                                          <select name="nationality" required="required">
                                              <option value=""></option>
                                              <option value="RU">Россия</option>
                                          </select><br/><br/>
                              
                                          Место рождения:<br/>
                                          <input type="text" name="place_of_birth" required="required" placeholder="г. Уфа, ул. Новая, д.333, кв. 777"/><br/><br/>
                              
                                          Адрес регистрации:<br/>
                                          <input type="text" name="legal_address" required="required" placeholder="г. Москва, ул. Новая, д.333, кв. 777"/><br/><br/>
                              
                                          Почтовый адрес:<br/>
                                          <input type="text" name="post_address" required="required" placeholder="г. Москва, ул. Новая, д.333, кв. 777"/><br/><br/>
                              
                                          Тип подпрофиля:<br/>
                                          <select name="rf_resident" required="required">
                                              <option value=""></option>
                                              <option value="Y">Резидент РФ</option>
                                              <option value="N">Нерезидент РФ</option>
                                          </select><br/><br/>
                              
                                          Дата рождения:<br/>
                                          <input type="date" name="date_of_birth" required="required"/><br/><br/>
                              
                                          Контактный телефон:<br/>
                                          <input type="text" name="phone_contact" required="required" placeholder="79123456789"/><br/><br/>
                              
                                          ИНН:<br/>
                                          <input type="text" name="inn" required="required" placeholder="123456789012"/><br/><br/>
                              
                                          <input type="submit" name="submit" value="Сохранить подпрофиль руководителя"/>
                                      </form>
                                  ';
                              }

                              Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                              Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                              Результаты поиска
                                Ничего не найдено
                                Оглавление
                                Поиск документа руководителя

                                Поиск документа руководителя

                                Получение id документа руководителя в личном кабинете (юните) клиента маркетплейса.

                                Запрос:

                                {
                                   "Envelope":{
                                      "Header":{
                                         "Security":{
                                            "UsernameToken":{
                                               "Username":"Username",
                                               "Password":"Password"
                                            }
                                         }
                                      },
                                      "Body":{
                                         "FindProfileDocumentsRequest":{
                                             "unitId":12345,
                                             "profileId":44444
                                         }
                                      }
                                   }
                                }

                                Ответ:

                                {
                                   "Envelope":{
                                      "Body":{
                                         "FindProfileDocumentsResponse":{
                                            "document":[
                                               {
                                                  "id":5057,
                                                  "attribute":[
                                                     {
                                                        "approved":true,
                                                        "value":"YYYY-MM-DDT14:07:35.000+03:00",
                                                        "key":"modificationdate"
                                                     }
                                                  ],
                                                  "type":"PASSPORT",
                                                  "hasAttachedFiles":false
                                               }
                                            ]
                                         }
                                      }
                                   }
                                }
                                <?php
                                if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                                
                                    $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                    include_once($sdkAppFileName);
                                
                                    try {
                                        $monetaSdk = new \Moneta\MonetaSdk();
                                        $monetaSdk->checkMonetaServiceConnection();
                                
                                        $request = new \Moneta\Types\FindProfileDocumentsRequest();
                                        $request->unitId = $_POST['unit_id'];
                                        $request->profileId = $_POST['profile_id'];
                                
                                        //поиск документа у подпрофиля руководителя
                                        $result = $monetaSdk->monetaService->FindProfileDocuments($request);
                                
                                        if (count($result)) {
                                            echo "<pre>";
                                            print_r($result);
                                            echo "</pre>";
                                        } else {
                                            echo "Не найдено ни одного документа";
                                        }
                                    } catch (Exception $e) {
                                        echo "Произошла ошибка:<br />";
                                        echo "<pre>" . $e->getMessage() . "</pre>";
                                    }
                                
                                } else {
                                    echo '
                                        <form method="post">
                                            unit ID организации (площадки):<br/>
                                            <input type="text" name="unit_id" required="required"/><br/><br/>
                                
                                            ID подпрофиля руководителя (Director):<br/>
                                            <input type="text" name="profile_id" required="required"/><br/><br/>
                                
                                            <input type="submit" name="submit" value="Найти документы руководителя"/>
                                        </form>
                                    ';
                                }

                                Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                Результаты поиска
                                  Ничего не найдено
                                  Оглавление
                                  Заполнение документа подпрофиля руководителя

                                  Заполнение документа подпрофиля руководителя

                                  Заполнение документа руководителя в личном кабинете (юните) клиента маркетплейса.

                                  Запрос:

                                  {
                                     "Envelope":{
                                        "Header":{
                                           "Security":{
                                              "UsernameToken":{
                                                 "Username":"Username",
                                                 "Password":"Password"
                                              }
                                           }
                                        },
                                        "Body":{
                                           "EditProfileDocumentRequest":{
                                             "unitId": 12345,
                                              "profileId": 44444,
                                              "id": 5057,
                                              "attribute":             [
                                                                {
                                                    "value": "YYYY-MM-DD",
                                                    "key": "ISSUED"
                                                 },
                                                                {
                                                    "value": "0000",
                                                    "key": "NUMBER"
                                                 },
                                                                {
                                                    "value": "000000",
                                                    "key": "SERIES"
                                                 },
                                                                {
                                                    "value": "ISSUER",
                                                    "key": "ISSUER"
                                                 }
                                              ],
                                              "type": "PASSPORT"
                                           }
                                           }
                                        }
                                     }

                                  Ответ:

                                  {
                                     "Envelope":{
                                        "Body":{
                                           "EditProfileDocumentResponse":{
                                  
                                           }
                                        }
                                     }
                                  }
                                  <?php
                                  if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                                  
                                      $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                      include_once($sdkAppFileName);
                                  
                                      try {
                                          $monetaSdk = new \Moneta\MonetaSdk();
                                          $monetaSdk->checkMonetaServiceConnection();
                                  
                                          $doc = new \Moneta\Types\EditProfileDocumentRequest();
                                  
                                          $doc->unitId = $_POST['unit_id'];
                                          $doc->profileId = $_POST['profile_id'];
                                          $doc->id = $_POST['doc_id'];
                                          $doc->type = $_POST['doc_type'];
                                  
                                          //Когда выдан документ
                                          $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                          $attribute->approved = false;
                                          $attribute->key = "ISSUED";
                                          $attribute->value = $_POST['issued'];
                                          $doc->addAttribute($attribute);
                                  
                                          //Серия документа
                                          $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                          $attribute->approved = false;
                                          $attribute->key = "SERIES";
                                          $attribute->value = $_POST['series'];
                                          $doc->addAttribute($attribute);
                                  
                                          //Номер документа
                                          $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                          $attribute->approved = false;
                                          $attribute->key = "NUMBER";
                                          $attribute->value = $_POST['number'];
                                          $doc->addAttribute($attribute);
                                  
                                          //Кем выдан документ
                                          $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                          $attribute->approved = false;
                                          $attribute->key = "ISSUER";
                                          $attribute->value = $_POST['issuer'];
                                          $doc->addAttribute($attribute);
                                  
                                          //сохранение документа подпрофиля руководителя
                                          $result = $monetaSdk->monetaService->EditProfileDocument($doc);
                                  
                                          if (!empty($result)) {
                                              throw new Exception(print_r($result, true));
                                          }
                                  
                                          echo "Данные документа подпрофиля руководителя успешно сохранены.";
                                  
                                      } catch (Exception $e) {
                                          echo "Произошла ошибка:<br />";
                                          echo "<pre>" . $e->getMessage() . "</pre>";
                                      }
                                  
                                  } else {
                                      echo '
                                          <form method="post">
                                              unit ID организации (площадки):<br/>
                                              <input type="text" name="unit_id" required="required"/><br/><br/>
                                  
                                              ID подпрофиля руководителя (Director):<br/>
                                              <input type="text" name="profile_id" required="required"/><br/><br/>
                                  
                                              ID документа подпрофиля руководителя:<br/>
                                              <input type="text" name="doc_id" required="required"/><br/><br/>
                                  
                                              Тип документа:<br/>
                                              <select name="doc_type" required="required">
                                                  <option value=""></option>
                                                  <option value="PASSPORT">Паспорт</option>
                                              </select><br/><br/>
                                  
                                              Когда выдан документ:<br/>
                                              <input type="date" name="issued" required="required"/><br/><br/>
                                  
                                              Серия документа:<br/>
                                              <input type="text" name="series" required="required" placeholder="0000"/><br/><br/>
                                  
                                              Номер документа:<br/>
                                              <input type="text" name="number" required="required" placeholder="000000"/><br/><br/>
                                  
                                              Кем выдан документ:<br/>
                                              <input type="text" name="issuer" required="required"/><br/><br/>
                                  
                                              <input type="submit" name="submit" value="Сохранить документ подпрофиля руководителя"/>
                                          </form>
                                      ';
                                  }

                                  Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                  Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                  Результаты поиска
                                    Ничего не найдено
                                    Оглавление
                                    Заполнение подпрофиля учредителя

                                    Заполнение подпрофиля учредителя

                                    Заполнение подпрофиля учредителя в личном кабинете (юните) клиента маркетплейса.

                                    Запрос:

                                    {
                                       "Envelope":{
                                          "Header":{
                                             "Security":{
                                                "UsernameToken":{
                                                   "Username":"Username",
                                                   "Password":"Password"
                                                }
                                             }
                                          },
                                          "Body":{
                                             "EditProfileRequest":{
                                                "unitId":12345,
                                                "profileId":55555,
                                                "profile":{
                                                   "attribute":[
                                                      {
                                                         "value":"100",
                                                         "key":"FOUNDER_SHARE_PERCENTAGE"
                                                      }
                                                   ]
                                                }
                                             }
                                          }
                                       }
                                    }

                                    Ответ:

                                    {
                                       "Envelope":{
                                          "Body":{
                                             "EditProfileResponse":{
                                    
                                             }
                                          }
                                       }
                                    }
                                    <?php
                                    if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                                    
                                        $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                        include_once($sdkAppFileName);
                                    
                                        try {
                                            $monetaSdk = new \Moneta\MonetaSdk();
                                            $monetaSdk->checkMonetaServiceConnection();
                                    
                                            $request = new \Moneta\Types\EditProfileRequest();
                                            $request->unitId = $_POST['unit_id'];
                                            $request->profileId = $_POST['profile_id'];
                                    
                                            $profile = new \Moneta\Types\Profile();
                                    
                                            //Доля в капитале
                                            $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                            $attribute->approved = false;
                                            $attribute->key = "FOUNDER_SHARE_PERCENTAGE";
                                            $attribute->value = $_POST['founder_share_percentage'];
                                            $profile->addAttribute($attribute);
                                    
                                            $request->profile = $profile;
                                    
                                            //сохранение подпрофиля учредителя
                                            $result = $monetaSdk->monetaService->EditProfile($request);
                                    
                                            if (!empty($result)) {
                                                throw new Exception(print_r($result, true));
                                            }
                                    
                                            echo "Данные подпрофиля учредителя успешно сохранены.";
                                    
                                        } catch (Exception $e) {
                                            echo "Произошла ошибка:<br />";
                                            echo "<pre>" . $e->getMessage() . "</pre>";
                                        }
                                    
                                    } else {
                                        echo '
                                            <form method="post">
                                                unit ID организации (площадки):<br/>
                                                <input type="text" name="unit_id" required="required"/><br/><br/>
                                    
                                                ID подпрофиля учредителя (Founder):<br/>
                                                <input type="text" name="profile_id" required="required"/><br/><br/>
                                    
                                                Доля в капитале, %:<br/>
                                                <input type="number" name="founder_share_percentage" required="required" min="0" max="100" placeholder="100"/><br/><br/>
                                    
                                                <input type="submit" name="submit" value="Сохранить подпрофиль учредителя"/>
                                            </form>
                                        ';
                                    }

                                    Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                    Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                    Результаты поиска
                                      Ничего не найдено
                                      Оглавление
                                      Заполнение подпрофиля бенефициарного владельца

                                      Заполнение подпрофиля бенефициарного владельца

                                      Заполнение подпрофиля бенефициарного владельца в личном кабинете (юните) клиента маркетплейса.

                                      Запрос:

                                      {
                                         "Envelope":{
                                            "Header":{
                                               "Security":{
                                                  "UsernameToken":{
                                                     "Username":"Username",
                                                     "Password":"Password"
                                                  }
                                               }
                                            },
                                            "Body":{
                                               "EditProfileRequest":{
                                                  "unitId":12345,
                                                  "profileId":55555,
                                                  "profile": {"attribute":             [
                                                                    {
                                                        "value": "RU",
                                                        "key": "NATIONALITY"
                                                     },
                                                                    {
                                                        "value": "LEGAL_ADDRESS",
                                                        "key": "LEGAL_ADDRESS"
                                                     },
                                                                    {
                                                        "value": "PLACE_OF_BIRTH",
                                                        "key": "PLACE_OF_BIRTH"
                                                     },
                                                                    {
                                                        "value": "POST_ADDRESS",
                                                        "key": "POST_ADDRESS"
                                                     },
                                                                    {
                                                        "value": "YYYY-MM-DD",
                                                        "key": "DATE_OF_BIRTH"
                                                     },
                                                                    {
                                                        "value": "79001112233",
                                                        "key": "PHONE_CONTACT"
                                                     }
                                                  ]}
                                                  }
                                               }
                                            }
                                         }

                                      Ответ:

                                      {
                                         "Envelope":{
                                            "Body":{
                                               "EditProfileResponse":{
                                      
                                               }
                                            }
                                         }
                                      }
                                      <?php
                                      if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                                      
                                          $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                          include_once($sdkAppFileName);
                                      
                                          try {
                                              $monetaSdk = new \Moneta\MonetaSdk();
                                              $monetaSdk->checkMonetaServiceConnection();
                                      
                                              $request = new \Moneta\Types\EditProfileRequest();
                                              $request->unitId = $_POST['unit_id'];
                                              $request->profileId = $_POST['profile_id'];
                                      
                                              $profile = new \Moneta\Types\Profile();
                                      
                                              //Гражданство
                                              $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                              $attribute->approved = false;
                                              $attribute->key = "NATIONALITY";
                                              $attribute->value = $_POST['nationality'];
                                              $profile->addAttribute($attribute);
                                      
                                              //Место рождения
                                              $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                              $attribute->approved = false;
                                              $attribute->key = "PLACE_OF_BIRTH";
                                              $attribute->value = $_POST['place_of_birth'];
                                              $profile->addAttribute($attribute);
                                      
                                              //Адрес регистрации
                                              $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                              $attribute->approved = false;
                                              $attribute->key = "LEGAL_ADDRESS";
                                              $attribute->value = $_POST['legal_address'];
                                              $profile->addAttribute($attribute);
                                      
                                              //Почтовый адрес
                                              $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                              $attribute->approved = false;
                                              $attribute->key = "POST_ADDRESS";
                                              $attribute->value = $_POST['post_address'];
                                              $profile->addAttribute($attribute);
                                      
                                              //Дата рождения
                                              $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                              $attribute->approved = false;
                                              $attribute->key = "DATE_OF_BIRTH";
                                              $attribute->value = $_POST['date_of_birth'];
                                              $profile->addAttribute($attribute);
                                      
                                              //Контактный телефон
                                              $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                              $attribute->approved = false;
                                              $attribute->key = "PHONE_CONTACT";
                                              $attribute->value = $_POST['phone_contact'];
                                              $profile->addAttribute($attribute);
                                      
                                              //ИНН
                                              $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                              $attribute->approved = false;
                                              $attribute->key = "INN";
                                              $attribute->value = $_POST['inn'];
                                              $profile->addAttribute($attribute);
                                      
                                              $request->profile = $profile;
                                      
                                              //сохранение подпрофиля бенефициара
                                              $result = $monetaSdk->monetaService->EditProfile($request);
                                      
                                              if (!empty($result)) {
                                                  throw new Exception(print_r($result, true));
                                              }
                                      
                                              echo "Данные подпрофиля бенефициара успешно сохранены.";
                                      
                                          } catch (Exception $e) {
                                              echo "Произошла ошибка:<br />";
                                              echo "<pre>" . $e->getMessage() . "</pre>";
                                          }
                                      
                                      } else {
                                          echo '
                                              <form method="post">
                                                  unit ID организации (площадки):<br/>
                                                  <input type="text" name="unit_id" required="required"/><br/><br/>
                                      
                                                  ID подпрофиля бенефициара (Beneficiary):<br/>
                                                  <input type="text" name="profile_id" required="required"/><br/><br/>
                                      
                                                  Гражданство:<br/>
                                                  <select name="nationality" required="required">
                                                      <option value=""></option>
                                                      <option value="RU">Россия</option>
                                                  </select><br/><br/>
                                      
                                                  Место рождения:<br/>
                                                  <input type="text" name="place_of_birth" required="required" placeholder="г. Уфа, ул. Новая, д.333, кв. 777"/><br/><br/>
                                      
                                                  Адрес регистрации:<br/>
                                                  <input type="text" name="legal_address" required="required" placeholder="г. Москва, ул. Новая, д.333, кв. 777"/><br/><br/>
                                      
                                                  Почтовый адрес:<br/>
                                                  <input type="text" name="post_address" required="required" placeholder="г. Москва, ул. Новая, д.333, кв. 777"/><br/><br/>
                                      
                                                  Дата рождения:<br/>
                                                  <input type="date" name="date_of_birth" required="required"/><br/><br/>
                                      
                                                  Контактный телефон:<br/>
                                                  <input type="text" name="phone_contact" required="required" placeholder="79123456789"/><br/><br/>
                                      
                                                  ИНН:<br/>
                                                  <input type="text" name="inn" required="required" /><br/><br/>
                                      
                                                  <input type="submit" name="submit" value="Сохранить подпрофиль бенефициара"/>
                                              </form>
                                          ';
                                      }

                                      Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                      Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                      Результаты поиска
                                        Ничего не найдено
                                        Оглавление
                                        Поиск документа бенефициарного владельца

                                        Поиск документа бенефициарного владельца

                                        Получение id документа бенефициарного владельца в личном кабинете (юните) клиента маркетплейса.

                                        Запрос:

                                        {
                                           "Envelope":{
                                              "Header":{
                                                 "Security":{
                                                    "UsernameToken":{
                                                       "Username":"Username",
                                                       "Password":"Password"
                                                    }
                                                 }
                                              },
                                              "Body":{
                                                 "FindProfileDocumentsRequest":{
                                                     "unitId":12345,
                                                    "profileId": 55555
                                                 }
                                              }
                                           }
                                        }

                                        Ответ:

                                        {
                                           "Envelope":{
                                              "Body":{
                                                 "FindProfileDocumentsResponse":{
                                                    "document":[
                                                       {
                                                          "id":5058,
                                                          "attribute":[
                                                             {
                                                                "approved":true,
                                                                "value":"YYYY-MM-DDT14:10:54.000+03:00",
                                                                "key":"modificationdate"
                                                             }
                                                          ],
                                                          "type":"PASSPORT",
                                                          "hasAttachedFiles":false
                                                       }
                                                    ]
                                                 }
                                              }
                                           }
                                        }
                                        <?php
                                        if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                                        
                                            $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                            include_once($sdkAppFileName);
                                        
                                            try {
                                                $monetaSdk = new \Moneta\MonetaSdk();
                                                $monetaSdk->checkMonetaServiceConnection();
                                        
                                                $request = new \Moneta\Types\FindProfileDocumentsRequest();
                                                $request->unitId = $_POST['unit_id'];
                                                $request->profileId = $_POST['profile_id'];
                                        
                                                //поиск документа у подпрофиля бенефициара
                                                $result = $monetaSdk->monetaService->FindProfileDocuments($request);
                                        
                                                if (count($result)) {
                                                    echo "<pre>";
                                                    print_r($result);
                                                    echo "</pre>";
                                                } else {
                                                    echo "Не найдено ни одного документа";
                                                }
                                            } catch (Exception $e) {
                                                echo "Произошла ошибка:<br />";
                                                echo "<pre>" . $e->getMessage() . "</pre>";
                                            }
                                        
                                        } else {
                                            echo '
                                                <form method="post">
                                                    unit ID организации (площадки):<br/>
                                                    <input type="text" name="unit_id" required="required"/><br/><br/>
                                        
                                                    ID подпрофиля бенефициара (Beneficiary):<br/>
                                                    <input type="text" name="profile_id" required="required"/><br/><br/>
                                        
                                                    <input type="submit" name="submit" value="Найти документы бенефициара"/>
                                                </form>
                                            ';
                                        }

                                        Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                        Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                        Результаты поиска
                                          Ничего не найдено
                                          Оглавление
                                          Заполнение документа бенефициарного владельца

                                          Заполнение документа бенефициарного владельца

                                          Заполнение паспорта бенефициарного владельца в личном кабинете (юните) клиента маркетплейса.

                                          Запрос:

                                          {
                                             "Envelope":{
                                                "Header":{
                                                   "Security":{
                                                      "UsernameToken":{
                                                         "Username":"Username",
                                                         "Password":"Password"
                                                      }
                                                   }
                                                },
                                                "Body":{
                                                   "EditProfileDocumentRequest":{
                                                     "unitId": 12345,
                                                      "profileId": 55555,
                                                      "id": 5058,
                                                      "attribute":             [
                                                                        {
                                                            "value": "YYYY-MM-DD",
                                                            "key": "ISSUED"
                                                         },
                                                                        {
                                                            "value": "0000",
                                                            "key": "NUMBER"
                                                         },
                                                                        {
                                                            "value": "000000",
                                                            "key": "SERIES"
                                                         },
                                                                        {
                                                            "value": "ISSUER",
                                                            "key": "ISSUER"
                                                         }
                                                      ],
                                                      "type": "PASSPORT"
                                                   }
                                                   }
                                                }
                                             }

                                          Ответ:

                                          {
                                             "Envelope":{
                                                "Body":{
                                                   "EditProfileDocumentResponse":{
                                          
                                                   }
                                                }
                                             }
                                          }
                                          <?php
                                          if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                                          
                                              $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                              include_once($sdkAppFileName);
                                          
                                              try {
                                                  $monetaSdk = new \Moneta\MonetaSdk();
                                                  $monetaSdk->checkMonetaServiceConnection();
                                          
                                                  $doc = new \Moneta\Types\EditProfileDocumentRequest();
                                          
                                                  $doc->unitId = $_POST['unit_id'];
                                                  $doc->profileId = $_POST['profile_id'];
                                                  $doc->id = $_POST['doc_id'];
                                                  $doc->type = $_POST['doc_type'];
                                          
                                                  //Когда выдан документ
                                                  $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                                  $attribute->approved = false;
                                                  $attribute->key = "ISSUED";
                                                  $attribute->value = $_POST['issued'];
                                                  $doc->addAttribute($attribute);
                                          
                                                  //Серия документа
                                                  $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                                  $attribute->approved = false;
                                                  $attribute->key = "SERIES";
                                                  $attribute->value = $_POST['series'];
                                                  $doc->addAttribute($attribute);
                                          
                                                  //Номер документа
                                                  $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                                  $attribute->approved = false;
                                                  $attribute->key = "NUMBER";
                                                  $attribute->value = $_POST['number'];
                                                  $doc->addAttribute($attribute);
                                          
                                                  //Кем выдан документ
                                                  $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                                  $attribute->approved = false;
                                                  $attribute->key = "ISSUER";
                                                  $attribute->value = $_POST['issuer'];
                                                  $doc->addAttribute($attribute);
                                          
                                                  //сохранение документа подпрофиля бенефициара
                                                  $result = $monetaSdk->monetaService->EditProfileDocument($doc);
                                          
                                                  if (!empty($result)) {
                                                      throw new Exception(print_r($result, true));
                                                  }
                                          
                                                  echo "Данные документа подпрофиля бенефициара успешно сохранены.";
                                          
                                              } catch (Exception $e) {
                                                  echo "Произошла ошибка:<br />";
                                                  echo "<pre>" . $e->getMessage() . "</pre>";
                                              }
                                          
                                          } else {
                                              echo '
                                                  <form method="post">
                                                      unit ID организации (площадки):<br/>
                                                      <input type="text" name="unit_id" required="required"/><br/><br/>
                                          
                                                      ID подпрофиля бенефициара (Beneficiary):<br/>
                                                      <input type="text" name="profile_id" required="required"/><br/><br/>
                                          
                                                      ID документа подпрофиля бенефициара:<br/>
                                                      <input type="text" name="doc_id" required="required"/><br/><br/>
                                          
                                                      Тип документа:<br/>
                                                      <select name="doc_type" required="required">
                                                          <option value=""></option>
                                                          <option value="PASSPORT">Паспорт</option>
                                                      </select><br/><br/>
                                          
                                                      Когда выдан документ:<br/>
                                                      <input type="date" name="issued" required="required"/><br/><br/>
                                          
                                                      Серия документа:<br/>
                                                      <input type="text" name="series" required="required" placeholder="0000"/><br/><br/>
                                          
                                                      Номер документа:<br/>
                                                      <input type="text" name="number" required="required" placeholder="000000"/><br/><br/>
                                          
                                                      Кем выдан документ:<br/>
                                                      <input type="text" name="issuer" required="required"/><br/><br/>
                                          
                                                      <input type="submit" name="submit" value="Сохранить документ подпрофиля бенефициара"/>
                                                  </form>
                                              ';
                                          }

                                          Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                          Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                          Результаты поиска
                                            Ничего не найдено
                                            Оглавление
                                            Создание банковских реквизитов клиента

                                            Создание банковских реквизитов клиента

                                            Создание банковских реквизитов в личном кабинете (юните) клиента маркетплейса.

                                            Запрос:

                                            {
                                               "Envelope":{
                                                  "Header":{
                                                     "Security":{
                                                        "UsernameToken":{
                                                           "Username":"Username",
                                                           "Password":"Password"
                                                        }
                                                     }
                                                  },
                                                  "Body":{
                                                     "CreateBankAccountRequest":{
                                                        "unitId":12345,
                                                       "attribute":             [
                                                                          {
                                                              "value": "00000000000000000000",
                                                              "key": "ACCOUNT"
                                                           },
                                                                          {
                                                              "value": "000000000",
                                                              "key": "BIK"
                                                           }
                                                        ]
                                                        }
                                                     }

                                            Ответ:

                                            {
                                               "Envelope":{
                                                  "Body":{
                                                     "CreateBankAccountResponse":{
                                                        "id":2105
                                                     }
                                                  }
                                               }
                                            }
                                            <?php
                                            if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                                            
                                                $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                                include_once($sdkAppFileName);
                                            
                                                try {
                                                    $monetaSdk = new \Moneta\MonetaSdk();
                                                    $monetaSdk->checkMonetaServiceConnection();
                                            
                                                    $request = new \Moneta\Types\CreateBankAccountRequest();
                                                    $request->unitId = $_POST['unit_id'];
                                            
                                                    //Номер расчётного счёта
                                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                                    $attribute->approved = false;
                                                    $attribute->key = "ACCOUNT";
                                                    $attribute->value = $_POST['account'];
                                                    $request->addAttribute($attribute);
                                            
                                                    //БИК банка
                                                    $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                                    $attribute->approved = false;
                                                    $attribute->key = "BIK";
                                                    $attribute->value = $_POST['bik'];
                                                    $request->addAttribute($attribute);
                                            
                                                    //создание банковских реквизитов
                                                    $result = $monetaSdk->monetaService->CreateBankAccount($request);
                                            
                                                    if(!is_array($result) || !$result['id']){
                                                        throw new Exception(print_r($result, true));
                                                    }
                                            
                                                    echo "Идентификатор банковских реквизитов в системе MONETA.RU: ".$result['id'];
                                            
                                                } catch (Exception $e) {
                                                    echo "Произошла ошибка:<br />";
                                                    echo "<pre>" . $e->getMessage() . "</pre>";
                                                }
                                            
                                            } else {
                                                echo '
                                                    <form method="post">
                                                        unit ID организации (площадки):<br/>
                                                        <input type="text" name="unit_id" required="required"/><br/><br/>
                                            
                                                        Номер расчётного счёта:<br/>
                                                        <input type="text" name="account" required="required" placeholder="12345678901234567890"/><br/><br/>
                                            
                                                        БИК банка:<br/>
                                                        <input type="text" name="bik" required="required" placeholder="123456789"/><br/><br/>
                                            
                                                        <input type="submit" name="submit" value="Сохранить банковские реквизиты"/>
                                                    </form>
                                                ';
                                            }

                                            Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                            Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                            Результаты поиска
                                              Ничего не найдено
                                              Оглавление
                                              Поиск юридических реквизитов

                                              Поиск юридических реквизитов

                                              Для заполнения подпрофиля юридических реквизитов (SaveLegalInformationRequest) необходимо сначала получить id подпрофиля.

                                              Получение id юридических реквизитов в личном кабинет (юните) клиента маркетплейса.

                                              Запрос:

                                              {
                                                 "Envelope":{
                                                    "Header":{
                                                       "Security":{
                                                          "UsernameToken":{
                                                             "Username":"Username",
                                                             "Password":"Password"
                                                          }
                                                       }
                                                    },
                                                    "Body":{
                                                       "FindLegalInformationRequest":{
                                                           "unitId":12345
                                              
                                                       }
                                                    }
                                                 }
                                              }

                                              Ответ:

                                              {
                                                 "Envelope":{
                                                    "Body":{
                                                       "FindLegalInformationResponse":{
                                                          "legalInformation":[
                                                             {
                                                                "id":1878,
                                                                "attribute":[
                                                                   {
                                                                      "approved":false,
                                                                      "value":"okved",
                                                                      "key":"okved"
                                                                   },
                                                                   {
                                                                      "approved":false,
                                                                      "value":"000000000",
                                                                      "key":"kpp"
                                                                   },
                                                                   {
                                                                      "approved":false,
                                                                      "value":"1111111111111",
                                                                      "key":"ogrn"
                                                                   }
                                                                ]
                                                             }
                                                          ]
                                                       }
                                                    }
                                                 }
                                              }
                                              <?php
                                              if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                                              
                                                  $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                                  include_once($sdkAppFileName);
                                              
                                                  try {
                                                      $monetaSdk = new \Moneta\MonetaSdk();
                                                      $monetaSdk->checkMonetaServiceConnection();
                                              
                                                      $request = new \Moneta\Types\FindLegalInformationRequest();
                                                      $request->unitId = $_POST['unit_id'];
                                              
                                                      //получение id юридических реквизитов
                                                      $result = $monetaSdk->monetaService->FindLegalInformation($request);
                                              
                                                      if (count($result)) {
                                                          echo "<pre>";
                                                          print_r($result);
                                                          echo "</pre>";
                                                      } else {
                                                          echo "Юридические реквизиты не найдены";
                                                      }
                                                  } catch (Exception $e) {
                                                      echo "Произошла ошибка:<br />";
                                                      echo "<pre>" . $e->getMessage() . "</pre>";
                                                  }
                                              
                                              } else {
                                                  echo '
                                                      <form method="post">
                                                          unit ID организации (площадки):<br/>
                                                          <input type="text" name="unit_id" required="required"/><br/><br/>
                                              
                                                          <input type="submit" name="submit" value="Найти юридические реквизиты"/>
                                                      </form>
                                                  ';
                                              }

                                              Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                              Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                              Результаты поиска
                                                Ничего не найдено
                                                Оглавление
                                                Заполнение юридических реквизитов

                                                Заполнение юридических реквизитов

                                                Заполнение подпрофиля юридических реквизитов в личном кабинете (юните) клиента маркетплейса Для сохранения данных в подпрофиле юридических реквизитов необходимо сначала получить id подпрофиля юридических реквизитов запросом ​FindLegalInformationRequest.

                                                Примечание: Запрос является экспериментальным, может быть изменен без предупреждения.

                                                Отправлять запрос необходимо на http://moneta.ru/schemas/messages-frontend.xsd

                                                WSDL документ: https://moneta.ru/services-frontend.wsdl

                                                Запрос:

                                                {
                                                   "Envelope":{
                                                      "Header":{
                                                            "PayloadNamespace" : "http://moneta.ru/schemas/messages-frontend.xsd",
                                                                 "Security":{
                                                            "UsernameToken":{
                                                               "Username":"Username",
                                                               "Password":"Password"
                                                            }
                                                         }
                                                      },
                                                      "Body":{
                                                         "SaveLegalInformationRequest": {
                                                                "legalInformation": {
                                                                	"unitId": "12345",
                                                					"id": 1878,
                                                                    "okato": "00000000"
                                                               }
                                                            }
                                                            }
                                                         }
                                                       }

                                                Ответ:

                                                {
                                                   "Envelope":{
                                                      "Header":{
                                                         "PayloadNamespace":"http://moneta.ru/schemas/messages-frontend.xsd",
                                                         "Security":{
                                                            "UsernameToken":{
                                                               "Username":"Username",
                                                               "Password":"Password"
                                                            }
                                                         }
                                                      },
                                                      "Body":{
                                                         "SaveLegalInformationRequest":{
                                                            "legalInformation":{
                                                               "unitId":"12345",
                                                               "id":1878,
                                                               "okato":"00000000"
                                                            }
                                                         }
                                                      }
                                                   }
                                                }
                                                <?php
                                                if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                                                
                                                    $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                                    include_once($sdkAppFileName);
                                                
                                                    try {
                                                        $monetaSdk = new \Moneta\MonetaSdk();
                                                        $username = $monetaSdk->settings['monetasdk_account_username'];
                                                        $password = $monetaSdk->settings['monetasdk_account_password'];
                                                        $url = 'https://demo.moneta.ru/services';
                                                
                                                        $requestData = [
                                                            "Envelope" =>
                                                                [
                                                                    "Header" =>
                                                                        [
                                                                            "Security" =>
                                                                                [
                                                                                    "UsernameToken" =>
                                                                                        [
                                                                                            "Username" => $username,
                                                                                            "Password" => $password,
                                                                                        ],
                                                                                ],
                                                                            "PayloadNamespace" => "http://moneta.ru/schemas/messages-frontend.xsd",
                                                                        ],
                                                                    "Body" =>
                                                                        [
                                                                            "SaveLegalInformationRequest" =>
                                                                                [
                                                                                    "legalInformation" =>
                                                                                        [
                                                                                            "unitId" => $_POST['unit_id'],
                                                                                            "id" => $_POST['doc_id'],
                                                                                            "okato" => $_POST['okato'],
                                                                                            "okved" => $_POST['okved'],
                                                                                        ],
                                                                                ],
                                                                        ],
                                                                ],
                                                        ];
                                                
                                                        $requestData = json_encode($requestData);
                                                
                                                        $ch = curl_init();
                                                        curl_setopt($ch, CURLOPT_URL, $url);
                                                        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json;charset=UTF-8'));
                                                        curl_setopt($ch, CURLOPT_POST, 1);
                                                        curl_setopt($ch, CURLOPT_POSTFIELDS, $requestData);
                                                        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                                                
                                                        $result = curl_exec($ch);
                                                        curl_close($ch);
                                                
                                                        $result = json_decode($result, true);
                                                
                                                        if (!$result['Envelope']['Body']['SaveLegalInformationResponse']['id']) {
                                                            throw new Exception(print_r($result, true));
                                                        }
                                                
                                                        echo "Юридические реквизиты успешно сохранены.";
                                                
                                                    } catch (Exception $e) {
                                                        echo "Произошла ошибка:<br />";
                                                        echo "<pre>" . $e->getMessage() . "</pre>";
                                                    }
                                                
                                                } else {
                                                    echo '
                                                        <form method="post">
                                                            unit ID организации (площадки):<br/>
                                                            <input type="text" name="unit_id" required="required"/><br/><br/>
                                                
                                                            ID документа юридических реквизитов:<br/>
                                                            <input type="text" name="doc_id" required="required"/><br/><br/>
                                                
                                                            ОКАТО:<br/>
                                                            <input type="text" name="okato" required="required"/><br/><br/>
                                                
                                                            ОКВЭД:<br/>
                                                            <input type="text" name="okved" required="required" placeholder="XX.XX.XX, XX.XX.XX"/><br/><br/>
                                                
                                                            <input type="submit" name="submit" value="Сохранить юридические реквизиты"/>
                                                        </form>
                                                    ';
                                                }

                                                Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                                Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                                Результаты поиска
                                                  Ничего не найдено
                                                  Оглавление
                                                  Отправка профиля на проверку

                                                  Отправка профиля на проверку

                                                  Подтверждение готовности личного кабинета (юнита) клиента к проверке сотрудниками НКО “МОНЕТА” (ООО).

                                                  Запрос:

                                                  {
                                                     "Envelope":{
                                                        "Header":{
                                                           "Security":{
                                                              "UsernameToken":{
                                                                 "Username":"Username",
                                                                 "Password":"Password"
                                                              }
                                                           }
                                                        },
                                                        "Body":{
                                                           "EditProfileRequest":{
                                                              "unitId":"12345",
                                                              "profile":{
                                                                 "attribute":[
                                                                    {
                                                                       "value":"Y",
                                                                       "key":"CONDITIONS_CORRECT_DATA"
                                                                    }
                                                                 ]
                                                              }
                                                           }
                                                        }
                                                     }
                                                  }

                                                  Ответ:

                                                  {
                                                     "Envelope":{
                                                        "Body":{
                                                           "EditProfileResponse":{
                                                  
                                                           }
                                                        }
                                                     }
                                                  }
                                                  <?php
                                                  if (isset($_POST['unit_id']) && isset($_POST['submit'])) {
                                                  
                                                      $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                                      include_once($sdkAppFileName);
                                                  
                                                      try {
                                                          $monetaSdk = new \Moneta\MonetaSdk();
                                                          $monetaSdk->checkMonetaServiceConnection();
                                                  
                                                          $request = new \Moneta\Types\EditProfileRequest();
                                                          $request->unitId = $_POST['unit_id'];
                                                          $request->profileId = $_POST['profile_id'];
                                                  
                                                          $profile = new \Moneta\Types\Profile();
                                                  
                                                          //Статус "Все необходимые данные внесены и являются актуальными"
                                                          $attribute = new \Moneta\Types\KeyValueApprovedAttribute();
                                                          $attribute->approved = false;
                                                          $attribute->key = "CONDITIONS_CORRECT_DATA";
                                                          $attribute->value = $_POST['conditions_correct_data'];
                                                          $profile->addAttribute($attribute);
                                                  
                                                          $request->profile = $profile;
                                                  
                                                          //сохранение базового профиля организации(продавца)
                                                          $result = $monetaSdk->monetaService->EditProfile($request);
                                                  
                                                          if (!empty($result)) {
                                                              throw new Exception(print_r($result, true));
                                                          }
                                                  
                                                          echo "Данные профиля успешно сохранены.";
                                                  
                                                      } catch (Exception $e) {
                                                          echo "Произошла ошибка:<br />";
                                                          echo "<pre>" . $e->getMessage() . "</pre>";
                                                      }
                                                  
                                                  } else {
                                                      echo '
                                                          <form method="post">
                                                              unit ID организации (площадки):<br/>
                                                              <input type="text" name="unit_id" required="required"/><br/><br/>
                                                  
                                                              ID базового профиля (Personal):<br/>
                                                              <input type="text" name="profile_id" required="required"/><br/><br/>
                                                  
                                                              Статус "Все необходимые данные внесены и являются актуальными":<br/>
                                                              <input type="radio" name="conditions_correct_data" value="Y"/>Да
                                                              <input type="radio" name="conditions_correct_data" value="N" checked="checked"/>Нет<br/><br/>
                                                  
                                                              <input type="submit" name="submit" value="Сохранить профиль организации"/>
                                                          </form>
                                                      ';
                                                  }

                                                  Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                                  Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                                  Результаты поиска
                                                    Ничего не найдено
                                                    Оглавление
                                                    Создание расширенного счёта

                                                    Создание расширенного счёта

                                                    Создание расширенного счета для клиента.

                                                    Запрос:

                                                    {
                                                       "Envelope":{
                                                          "Header":{
                                                             "Security":{
                                                                "UsernameToken":{
                                                                   "Username":"Username",
                                                                   "Password":"Password"
                                                                }
                                                             }
                                                          },
                                                          "Body":{
                                                             "CreateAccountRequest":{
                                                                "currency":"RUB",
                                                                "alias":"Alias",
                                                                "paymentPassword":"12345",
                                                                "unitId":12345,
                                                                "prototypeAccountId":1111111111,
                                                                "attribute":[
                                                                   {
                                                                      "key":"ALIAS",
                                                                      "value":"Alias",
                                                                      "published":true
                                                                   }
                                                                ]
                                                             }
                                                          }
                                                       }
                                                    }

                                                    Ответ:

                                                    {
                                                       "Envelope":{
                                                          "Body":{
                                                             "CreateAccountResponse":22222222
                                                          }
                                                       }
                                                    }

                                                    PrototypeAccountId необязательный элемент, это счет-прототип, с которого наследуются настройки.

                                                    Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                                    Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                                    Результаты поиска
                                                      Ничего не найдено
                                                      Оглавление
                                                      Получение ссылки на договор

                                                      Получение ссылки на договор

                                                      Запрос на получение заявления о присоединении к Договору.

                                                      Для отправки запроса FindProfileDocumentFilesRequest необходимо получить id документа. Получить id документа можно запросом FindProfileDocumentsRequest.

                                                      FindProfileDocumentsRequest (JSON)

                                                      Запрос:

                                                      {
                                                         "Envelope":{
                                                            "Header":{
                                                               "Security":{
                                                                  "UsernameToken":{
                                                                     "Username":"Username",
                                                                     "Password":"Password"
                                                                  }
                                                               }
                                                            },
                                                            "Body":{
                                                               "FindProfileDocumentsRequest":{
                                                                  "unitId":11111
                                                               }
                                                            }
                                                         }
                                                      }

                                                      Ответ:

                                                      {
                                                         "Envelope":{
                                                            "Body":{
                                                               "FindProfileDocumentsResponse":{
                                                                  "document":[
                                                                     {
                                                                        "id":1111,
                                                                        "attribute":[
                                                                           {
                                                                              "approved":false,
                                                                              "value":"test",
                                                                              "key":"comments"
                                                                           },
                                                                           {
                                                                              "approved":true,
                                                                              "value":"2019-08-20T10:39:27.000+03:00",
                                                                              "key":"modificationdate"
                                                                           }
                                                                        ],
                                                                        "type":"OTHER",
                                                                        "hasAttachedFiles":false
                                                                     }
                                                                  ]
                                                               }
                                                            }
                                                         }
                                                      }

                                                      FindProfileDocumentFilesRequest

                                                      Запрос:

                                                      {
                                                        "Envelope": {
                                                          "Header": {
                                                            "Security": {
                                                              "UsernameToken": {
                                                                "Username": "USERNAME",
                                                                "Password": "PASSWORD"
                                                              }
                                                            }
                                                          },
                                                          "Body": {
                                                            "FindProfileDocumentFilesRequest": {
                                                              "documentId": 1111
                                                            }
                                                          }
                                                        }
                                                      }

                                                      Ответ:

                                                      {
                                                        "Envelope": {
                                                          "Body": {
                                                            "FindProfileDocumentFilesResponse": {
                                                              "file": [
                                                                {
                                                                  "approved": true,
                                                                  "documentId": 1111,
                                                                  "mimeType": "image\/jpeg",
                                                                  "requestUri": "\/info\/private\/documents\/364640433885312461716.jpg",
                                                                  "title": "Scan.jpg",
                                                                  "fileId": 10001
                                                                }
                                                              ]
                                                            }
                                                          }
                                                        }
                                                      }

                                                      Примечание: В FindProfileDocumentFilesResponse будет содержаться ссылка на документ.

                                                      Необходимо преобразовать ссылку, добавив и получить ссылку типа: https://moneta.ru/info/private/documents/364640433885312461716.jpg

                                                      FindProfileDocumentsRequest (XML)

                                                      Запрос:

                                                      <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
                                                          <SOAP-ENV:Header>
                                                              <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" SOAP-ENV:mustUnderstand="1">
                                                                  <wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
                                                                          wsu:Id="XWSSGID-1560771336320-2024615317"
                                                                          xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
                                                                      <wsse:Username>USERNAME</wsse:Username>
                                                                      <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">PASSWORD</wsse:Password>
                                                                  </wsse:UsernameToken>
                                                              </wsse:Security>
                                                          </SOAP-ENV:Header>
                                                          <SOAP-ENV:Body>
                                                              <ns2:FindProfileDocumentFilesRequest xmlns:ns2="http://moneta.ru/schemas/messages.xsd" xmlns="">
                                                                  <ns2:documentId>9996</ns2:documentId>
                                                              </ns2:FindProfileDocumentFilesRequest>
                                                          </SOAP-ENV:Body>
                                                      </SOAP-ENV:Envelope>

                                                      Ответ:

                                                      <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
                                                          <SOAP-ENV:Header/>
                                                          <SOAP-ENV:Body>
                                                              <ns2:FindProfileDocumentFilesResponse xmlns:ns2="http://moneta.ru/schemas/messages.xsd">
                                                                  <ns2:file>
                                                                      <ns2:documentId>9996</ns2:documentId>
                                                                      <ns2:blob>
                                                                          <xop:Include href="cid:023786ad-d52b-4d0e-b763-fc8c4c2f5756%40moneta.ru"
                                                                                       xmlns:xop="http://www.w3.org/2004/08/xop/include"/>
                                                                      </ns2:blob>
                                                                      <ns2:approved>true</ns2:approved>
                                                                      <ns2:fileId>10001</ns2:fileId>
                                                                      <ns2:mimeType>image/jpeg</ns2:mimeType>
                                                                      <ns2:title>Scan.jpg</ns2:title>
                                                                  </ns2:file>
                                                              </ns2:FindProfileDocumentFilesResponse>
                                                          </SOAP-ENV:Body>
                                                      </SOAP-ENV:Envelope>

                                                      Примечание: При запросе FindProfileDocumentFilesRequest необходимо включить механизм MTOM - https://en.wikipedia.org/wiki/Message_Transmission_Optimization_Mechanism

                                                      Примечание: FindProfileDocumentFilesResponse будет содержать файл. Файл будет лежать после XML, а внутри XML будет ссылка на файл.

                                                      Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI.

                                                      Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                                      Результаты поиска
                                                        Ничего не найдено
                                                        Оглавление
                                                        Самозанятые

                                                        Самозанятые

                                                        Если получатель платежа на сайте маркетплейса - физическое лицо в статусе самозанятый, маркетплейс может воспользоваться сервисом MonetaNPD.

                                                        Сервис позволяет принимать платежи в пользу самозанятого, регистрировать его доход в ФНС, отправлять чеки покупателям и выводить средства на банковские карты самозанятого.

                                                        Общий URL контроллера API: https://my.payanyway.ru/backend/web/index.php?r=aisnalogapi

                                                        Все данные принимаются методом POST. Для регистрации на сервисе MonetaNPD маркетплейсу необходимо направить заявку в произвольной форме на marketplace@support.payanyway.ru.

                                                        По итогам регистрации выдается security_key, идентифицирующий маркетплейс в контроллере API и secret_key для генерации подписи запроса.

                                                        Маркетплейс регистрирует физическое лицо и создает ЭСП “МОНЕТА.РУ” на основе Соглашения об использовании Электронного средства платежа “МОНЕТА.РУ” и о переводе электронных денежных средств.

                                                        Маркетплейсу необходимо ознакомить своего клиента с текстом Соглашения до регистрации в Системе МОНЕТА.РУ.

                                                        Подразделы Самозанятые

                                                        Результаты поиска
                                                          Ничего не найдено
                                                          Оглавление
                                                          Защита маркетплейса в ФНС РФ

                                                          Защита маркетплейса в ФНС РФ

                                                          Чтобы получить продакшен-ключи маркетплейсу необходимо пройти процедуру защиты в ФНС РФ. Для успешной защиты необходимо, чтобы маркетплейс соответствовал следующим пунктам чек-листа:

                                                          1. На главной странице сайта маркетплейс должна быть размещена информация о том, как происходит работа с маркетплейсом и взаимодействие с ФНС, а также должны быть размещены ссылки на приложение “Мой налог” ФНС РФ, например:
                                                          Работа с маркетплейсом Работа с маркетплейсом

                                                          А также о порядке регистрации самозанятого:

                                                          Работа с самозанятым Работа с самозанятым
                                                          1. На странице регистрации и авторизации самозанятого нужно разместить текст:

                                                          Необходимо зарегистрироваться как самозанятый в мобильном приложении “Мой Налог” ФНС России или в кабинете налогоплательщика НПД МОЙ НАЛОГ:

                                                          1. Если самозанятый передает маркетплейсу номер его телефона, необходимо отправлять запрос в MonetaIdNPD на привязку самозанятого к маркетплейсу.
                                                          2. В личном кабинете самозанятого необходимо предусмотреть поле для ввода ИНН самозанятого и кнопку “Подключить” со следующим текстом:

                                                          Указав свой ИНН вы подтверждаете, что ранее прошли регистрацию в качестве плательщика НПД в приложении “Мой налог”. В приложение “Мой налог” вам будет направлен запрос на добавление НКО “МОНЕТА” (ООО) в качестве партнера. Подключите НКО “МОНЕТА” (ООО) и подтвердите запрашиваемые разрешения.

                                                          (вместо НКО “МОНЕТА” (ООО) должно быть название маркетплейса).

                                                          1. После нажатия кнопки “Подключить” необходимо отправить в NPD API запрос на привязку к маркетплейсу по ИНН. Если в ответ на запрос будет получена ошибка, эту ошибку необходимо показать самозанятому. Иначе необходимо показать пользователю, что статус его привязки к платформе - “ожидание ответа от ФНС”, и далее текст:

                                                          В приложение “Мой налог” вам направлен запрос на добавление НКО “МОНЕТА” (ООО) в качестве партнера. Подключите НКО “МОНЕТА” (ООО) и подтвердите запрашиваемые разрешения.

                                                          (вместо НКО “МОНЕТА” (ООО) должно быть название маркетплейса).

                                                          1. После того как самозанятый осуществит подключение маркетплейса в приложении “Мой налог” ФНС РФ, система MonetaIdNPD отправит URL - уведомление платформе, в результате которого ей необходимо отобразить в личном кабинете самозанятого новый статус привязки - “Вы авторизованы для НКО “МОНЕТА” (ООО) как самозанятый”.
                                                          2. В URL - уведомлении могут прийти данные о том, что самозанятый отказался привязать маркетплейс. В этом случае поле ИНН в профиле самозанятого в маркетплейсе необходимо очистить и дать возможность самозанятому повторно осуществить привязку с новым или тем же ИНН.
                                                          3. Доход самозанятого необходимо регистрировать в тот момент, когда в распоряжение самозанятого поступают деньги, даже если этими деньгами самозанятый может распоряжаться внутри платформы.
                                                          4. Запрос на регистрацию дохода самозанятого в систему NPD API нужно отправлять автоматически только в том случае, если самозанятый не выключил чекбокс “автоматически регистрировать доход в ФНС”, который по умолчанию был включен сразу после регистрации самозанятого на маркетплейсе.
                                                          5. Перед попыткой зарегистрировать доход самозанятого необходимо отправить в MonetaIdNPD запрос на проверку привязки самозанятого к маркетплейсу. Если самозанятый не привязан к маркетплейсу, необходимо прекратить прием платежей в его пользу.
                                                          6. Если маркетплейс получила ошибку при попытке регистрации дохода, необходимо сразу же отправить новый запрос в MonetaIdNPD на регистрацию дохода в оффлайн-режиме.
                                                          7. Если пользователь не включил чекбокс “автоматически регистрировать доход в ФНС”, то в истории поступлений денег в его распоряжение должна появиться кнопка “Создать чек”, по которой должны будут отправляться запросы: 1) на проверку привязки самозанятого (с прекращением приема платежей если не привязан), 2) на регистрацию дохода самозанятого, 3) на регистрацию дохода в оффлайн-режиме если не прошла регистрация на предыдущем шаге.

                                                          Кнопка “Создать чек” должна также появиться на тех поступлениях при которых выяснилось, что самозанятый не привязан к маркетплейсу.

                                                          1. Если в процессе регистрации дохода выяснилось что самозанятый не привязан к маркетплейсу, то помимо прочих действий нужно отправить в MonetaIdNPD запрос на повторную привязку самозанятого.
                                                          2. Не чаще чем один раз в сутки необходимо производить проверку привязки самозанятого к маркетплейсу и при необходимости отправлять в MonetaIdNPD запрос на повторную привязку к маркетплейсу.
                                                          3. Необходимо дать возможность самозанятому осуществить “Отвязку” от маркетплейса в личном кабинете маркетплейса с прекращением получения доходов в его пользу.
                                                          4. Необходимо в истории поступлений самозанятого предусмотреть возможность сторнировать любой из зарегистрированный в ФНС РФ чек с указанием причины: “Чек сформирован ошибочно” или “Чек отменен”. Для отмены, необходимо отправить соответствующий запрос в MonetaIdNPD.
                                                          5. Каждый зарегистрированный в ФНС чек необходимо отправить на e-mail источнику дохода (либо сторнирования) как приложенного изображение и ссылку на него с указанием ID чека в виде текста, а также с указанием ИНН получателя дохода.
                                                          6. В личном кабинете самозанятого необходимо предусмотреть страницу “Уведомления ФНС”, на которой должны отображаться уведомления с их статусами. Общее количество новых непрочитанных уведомлений должно быть отображено рядом со ссылкой “Уведомления ФНС”.
                                                          7. Самозанятый должен иметь возможность отметить уведомление как прочитанное в личном кабинете маркетплейса. В то же время, если самозанятый прочитал уведомления в приложении “Мой налог”, на маркетплейсе должна быть проведена синхронизация уведомлений в фоне для корректного отображения статусов уведомлений на маркетплейсе и корректного отображения количества непрочитанных уведомлений. Для этого в MonetaIdNPD есть соответствующие методы.
                                                          8. Уведомления должны отображаться даже если сервисы ФНС РФ не отдают данные по ним через NPD API. То есть на маркетплейсе необходимо хранить копии всех уведомлений с их статусами.
                                                          Результаты поиска
                                                            Ничего не найдено
                                                            Оглавление
                                                            Сценарии использования NPD API

                                                            Сценарии использования NPD API

                                                            1. Регистрация самозанятого

                                                            1.1. Cоздание профиля и отправка смс кода для подтверждения

                                                            1.2. Подтверждение номера телефона


                                                            2. Привязка самозанятого к маркетплейсу

                                                            2.1. По номеру телефона

                                                            2.2. По ИНН


                                                            3. Упрощённая идентификация самозанятого

                                                            3.1. Добавление ФИО и даты рождения

                                                            3.2. Добавление паспортных данных

                                                            3.3. Проведение упрощенной идентификации


                                                            4. Смена номера телефона самозанятого


                                                            5. Привязка банковской карты для вывода средств с ЭСП Монеты

                                                            5.1. Создание инвойса для привязки карты

                                                            5.2. Оплата инвойса и обработка уведомления


                                                            6. Выплата в пользу самозанятого от юридического лица


                                                            7. Регистрация дохода самозанятого в ФНС и отправка чека

                                                            Если в ходе регистрации не был получен ответ от АИС “Налог-3” (с полями aisReceiptId, aisReceiptLink и methodId), то следует воспользоваться оффлайн-режимом.

                                                            Если возникнет ошибка при регистрации в оффлайн-режиме, то следует обратиться к администратору Монеты.

                                                            7.1. В онлайн-режиме

                                                            7.2. В оффлайн-режиме


                                                            8. Вывод с ЭСП Монеты

                                                            8.1. На банковскую карту

                                                            8.1.1. Запрос платёжного пароля

                                                            8.1.2. Вывод

                                                            8.2. Через СБП

                                                            Для того, чтобы самозанятый смог вывести деньги своего счета в банк по СБП, необходимо, чтобы самозанятый был предварительно (упрощенно) идентифицирован, имел счет в одном из банков, поключенных к СБП по протоколу b2cother.

                                                            8.2.1. Получение списка подключенных банков

                                                            8.2.2. Вывод


                                                            9. Сообщения от ФНС

                                                            9.1 Получение сообщений

                                                            9.2 Отметка о прочтении сообщений


                                                            10. Проверка статуса привязки к маркетплейсу с контролем прав


                                                            11. Установка прав для маркетплейса

                                                            Самозанятый в личном кабинете ФНС может отозвать все или некоторые права у маркетплейса. В этом случае нужно отправить запрос на повторную установку прав.

                                                            Дополнительные возможности NPD API

                                                            1. Отвязка от маркетплейса


                                                            2. Запрос баланса ЭСП самозанятого


                                                            3. Запрос статуса самозанятого


                                                            4. Запрос суммы дохода, отмененного дохода и налога самозанятого за текущий год


                                                            5. Сторнирование чека


                                                            6. Регистрация статического QR-кода


                                                            7. Регистрация кассовой ссылки


                                                            8. Обновление кассовой ссылки


                                                            9. Получение ссылки на пополнение ЭСП самозанятого


                                                            10. Получение статуса операции


                                                            11. Получение данных о самозанятом


                                                            12. Получение паспортных данных самозанятого


                                                            13. Получение состояния лицевого счета НП НПД


                                                            14. Возврат по операции


                                                            15. Получение истории операций


                                                            16. Получение данных по начислению и уплате налога


                                                            17. Получение реквизитов для уплаты налогов и пеней


                                                            18. Оплата налога

                                                            Результаты поиска
                                                              Ничего не найдено
                                                              Оглавление
                                                              Платёжные запросы

                                                              Платёжные запросы

                                                              В этой главе представлены платежные запросы, которые помогут торговой площадке реализовать безопасную сделку, выплаты на банковские карты, рекуррентные платежи.

                                                              Безопасная сделка
                                                              Холдирование средств до получения товара.
                                                              Мультикорзина
                                                              Оплата товаров разных продавцов одним платежом.
                                                              Управление комиссией
                                                              Управление размером комиссии, взимаемой с продавца.
                                                              Выплаты продавцу
                                                              Выплаты на банковскую карту продавца.

                                                              Подразделы Платёжные запросы

                                                              Результаты поиска
                                                                Ничего не найдено
                                                                Оглавление
                                                                Безопасная сделка

                                                                Безопасная сделка

                                                                Логику безопасной сделки, включая процедуру рассмотрения споров, маркетплейс реализует самостоятельно.

                                                                Безопасная сделка Безопасная сделка

                                                                В Системе МОНЕТА.РУ безопасная сделка состоит из двух этапов, интервал между которыми обусловлен логикой безопасной сделки.

                                                                Первый этап - прием платежа, например, с банковской карты покупателя на транзитный счет маркетплейса в Системе “МОНЕТА.РУ” (Создание базовой операции).

                                                                Принять платеж можно одним из способов, указанных в Разделе 1 документации платёжных запросов.

                                                                После проведения операции платежа Система “МОНЕТА.РУ” сообщит номер операции в параметре MNT_OPERATION_ID, этот номер операции маркетплейсу необходимо запомнить и учитывать у себя в системе.

                                                                Второй этап - это перевод принятого платежа с транзитного счета маркетплейса на расширенный счет продавца в Системе “МОНЕТА.РУ”.

                                                                Расширенный счет в Системе “МОНЕТА.РУ” открывают только продавцы индивидуальные предприниматели и юридические лица.

                                                                Для перевода денежных средств с транзитного счета маркетплейса на расширенный счет продавца маркетплейса в Системе “МОНЕТА.РУ” необходимо использовать запрос PaymentRequest с помощью интерфейса MONETA.MerchantAPI, где payer=НОМЕР_ТРАНЗИТНОГО_СЧЕТА_ПЛОЩАДКИ, а payee=НОМЕРА_РАСШИРЕННОГО_СЧЕТА_ПРОДАВЦА.

                                                                Запрос:

                                                                {
                                                                   "Envelope":{
                                                                      "Header":{
                                                                         "Security":{
                                                                            "UsernameToken":{
                                                                               "Username":"логин",
                                                                               "Password":"пароль"
                                                                            }
                                                                         }
                                                                      },
                                                                      "Body":{
                                                                         "PaymentRequest":{
                                                                            "payer":"НОМЕР ТРАНЗИТНОГО СЧЕТА ПЛОЩАДКИ",
                                                                            "payee":"НОМЕРА РАСШИРЕННОГО СЧЕТА ПРОДАВЦА",
                                                                            "amount":"сумма",
                                                                            "clientTransaction":"внешний идентификатор транзакции",
                                                                            "operationInfo":{
                                                                               "attribute":[
                                                                                  {
                                                                                     "key":"PARENTID",
                                                                                     "value":"12345678"
                                                                                  }
                                                                               ]
                                                                            }
                                                                         }
                                                                      }
                                                                   }
                                                                }

                                                                Ответ:

                                                                {
                                                                  "Envelope":{
                                                                    "Body":{
                                                                      "PaymentResponse":{
                                                                        "transaction": "номер операции в системе МОНЕТУ.РУ",
                                                                        "dateTime": "2019-01-25T15:35:32.000+03:00",
                                                                        "status": "SUCCESS",
                                                                        "clientTransaction": "внешний идентификатор транзакции"
                                                                      }
                                                                    }
                                                                  }
                                                                }
                                                                <?php
                                                                
                                                                $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                                                include_once($sdkAppFileName);
                                                                
                                                                try {
                                                                    $monetaSdk = new \Moneta\MonetaSdk();
                                                                    $monetaSdk->checkMonetaServiceConnection();
                                                                
                                                                    $request = new \Moneta\Types\PaymentRequest();
                                                                
                                                                    //номер счёта (в системе МОНЕТА.РУ) для списания средств
                                                                    //номер транзитного счёта магазина/маркетплейса
                                                                    $request->payer = '';
                                                                
                                                                    //номер счёта (в системе МОНЕТА.РУ) для зачисления средств
                                                                    //номер расширенного счёта организации/продавца
                                                                    $request->payee = '';
                                                                
                                                                    //сумма перевода
                                                                    $request->amount = '10.00';
                                                                
                                                                    //номер транзакции в учётной системе магазина/маркетплейса.
                                                                    $request->clientTransaction = 'my-order-id-10_2';
                                                                
                                                                    //платёжный пароль магазина/маркетплейса.
                                                                    $request->paymentPassword = '*******************';
                                                                
                                                                    $operation = new \Moneta\Types\OperationInfo();
                                                                
                                                                    //в параметре указывается номер базовой операции - это операция платежа на транзитный счёт магазина/маркетплейса.
                                                                    $attribute = new \Moneta\Types\KeyValueAttribute();
                                                                    $attribute->key = 'PARENTID';
                                                                    $attribute->value = '';
                                                                    $operation->addAttribute($attribute);
                                                                
                                                                    $request->operationInfo = $operation;
                                                                
                                                                    //запрос на перевод средств внутри системы МОНЕТА.РУ
                                                                    //с транзитного счёта магазина/маркетплейса на расширенный счёт организации(продавца)
                                                                    $result = $monetaSdk->monetaService->Payment($request);
                                                                
                                                                    if (!$result['id']) {
                                                                        throw new Exception(print_r($result, true));
                                                                    }
                                                                
                                                                    echo "Запрос обработан.";
                                                                
                                                                    foreach ($result['attribute'] as $key => $attribute) {
                                                                        if ('statusid' === $attribute['key']) {
                                                                            if ((new \Moneta\Types\OperationStatus())::SUCCEED !== $attribute['value']) {
                                                                                echo " Операция НЕ проведена полностью.";
                                                                            }
                                                                            break;
                                                                        }
                                                                    }
                                                                
                                                                } catch (Exception $e) {
                                                                    echo "Ошибка:<br />";
                                                                    echo "<pre>" . $e->getMessage() . "</pre>";
                                                                }

                                                                В атрибутах перевода необходимо указать номер базовой операции в поле PARENTID, это операция платежа на транзитный счет торговой площадки.

                                                                Для перевода денежных средств с расширенного счета продавца в Системе “МОНЕТА.РУ” на банковские реквизиты продавца необходимо использовать запрос PaymentRequest с помощью интерфейса MONETA.MerchantAPI, где payer=НОМЕРА РАСШИРЕННОГО СЧЕТА ПРОДАВЦА, а payee=5.

                                                                Запрос:

                                                                {
                                                                   "Envelope":{
                                                                      "Header":{
                                                                         "Security":{
                                                                            "UsernameToken":{
                                                                               "Username":"Username",
                                                                               "Password":"Password"
                                                                            }
                                                                         }
                                                                      },
                                                                      "Body":{
                                                                         "PaymentRequest":{
                                                                            "payer":НОМЕР РАСШИРЕННОГО СЧЕТА ПРОДАВЦА,
                                                                            "payee":5,
                                                                            "amount":10,
                                                                            "clientTransaction":"Внешний номер операции",
                                                                            "paymentPassword":12345,
                                                                            "isPayerAmount":true,
                                                                            "operationInfo":{
                                                                               "attribute":[
                                                                                  {
                                                                                     "key":"WIREPAYMENTPURPOSE",
                                                                                     "value":"Перечисление суммы переводов денежных средств по Договору № ___ от DD.MM.YYYY. НДС не облагается."
                                                                                  }
                                                                               ]
                                                                            }
                                                                         }
                                                                      }
                                                                   }
                                                                }
                                                                <?php
                                                                
                                                                $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                                                include_once($sdkAppFileName);
                                                                
                                                                try {
                                                                    $monetaSdk = new \Moneta\MonetaSdk();
                                                                    $monetaSdk->checkMonetaServiceConnection();
                                                                
                                                                    $request = new \Moneta\Types\PaymentRequest();
                                                                
                                                                    //номер счёта (в системе МОНЕТА.РУ) для списания средств
                                                                    //номер расширенного счёта организации(продавца)
                                                                    $request->payer = '';
                                                                
                                                                    //получатель перевода
                                                                    //5 - будет осуществлён банковский перевод по реквизитам; в банк организации(продавца)
                                                                    $request->payee = '5';
                                                                
                                                                    //сумма перевода
                                                                    $request->amount = '10.00';
                                                                
                                                                    //номер транзакции в учётной системе магазина/маркетплейса.
                                                                    $request->clientTransaction = 'my-order-id-10_3';
                                                                
                                                                    //платёжный пароль магазина/маркетплейса.
                                                                    $request->paymentPassword = '***********';
                                                                
                                                                    $request->isPayerAmount = true;
                                                                
                                                                    $request->description = 'Перечисление на банковские реквизиты организации(продавца)';
                                                                
                                                                    //запрос на перевод средств
                                                                    //с расширенного счёта организации(продавца) на банковские реквизиты организации(продавца)
                                                                    $result = $monetaSdk->monetaService->Payment($request);
                                                                
                                                                    if (!$result['id']) {
                                                                        throw new Exception(print_r($result, true));
                                                                    }
                                                                
                                                                    echo "Запрос обработан.";
                                                                
                                                                    foreach ($result['attribute'] as $key => $attribute) {
                                                                        if ('statusid' === $attribute['key']) {
                                                                            if ((new \Moneta\Types\OperationStatus())::SUCCEED !== $attribute['value']) {
                                                                                echo " Операция НЕ проведена полностью.";
                                                                            }
                                                                            break;
                                                                        }
                                                                    }
                                                                
                                                                } catch (Exception $e) {
                                                                    echo "Ошибка:<br />";
                                                                    echo "<pre>" . $e->getMessage() . "</pre>";
                                                                }

                                                                Запросы маркетплейс отправляет в рамках интерфейса MONETA.MerchantAPI.

                                                                Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                                                Результаты поиска
                                                                  Ничего не найдено
                                                                  Оглавление
                                                                  Мультикорзина

                                                                  Мультикорзина

                                                                  Мультикорзина позволяет покупателю оформить заказ с товарами нескольких продавцов и оплатить одним платежом.

                                                                  Мультикорзина Мультикорзина

                                                                  Процесс оплаты для маркетплейса будет состоять из двух этапов.

                                                                  Первый этап - прием платежа с банковской карты покупателя на транзитный счет маркетплейса в Системе “МОНЕТА.РУ” (Создание родительской операции)

                                                                  Принять платеж можно одним из способов, указанных в Разделе 1. “Прием платежей с банковской карты на маркетплэйсе или в виджете” документации.

                                                                  В ответ на проведение платежа Система “МОНЕТА.РУ” сообщит номер операции в параметре MNT_OPERATION_ID, этот номер операции маркетплейсу необходимо запомнить и учитывать у себя в системе.

                                                                  Второй этап - перевод принятого платежа с транзитного счета маркетплейса на расширенный счет продавца в Системе “МОНЕТА.РУ”.

                                                                  Расширенный счет в Системе “МОНЕТА.РУ” открывают только продавцы индивидуальные предприниматели и юридические лица.

                                                                  Для перевода денежных средств с транзитного счета маркетплейса на расширенные счета продавцов в Системе “МОНЕТА.РУ” необходимо использовать запрос PaymentRequest в рамках интерфейса MONETA.MerchantAPI, где payer=НОМЕР ТРАНЗИТНОГО СЧЕТА ПЛОЩАДКИ, а payee=НОМЕР РАСШИРЕННОГО СЧЕТА ПРОДАВЦА.

                                                                  Запрос:

                                                                  {
                                                                     "Envelope":{
                                                                        "Header":{
                                                                           "Security":{
                                                                              "UsernameToken":{
                                                                                 "Username":"Username",
                                                                                 "Password":"Password"
                                                                              }
                                                                           }
                                                                        },
                                                                        "Body":{
                                                                           "PaymentRequest":{
                                                                              "payer":"НОМЕР ТРАНЗИТНОГО СЧЕТА ПЛОЩАДКИ",
                                                                              "payee":"НОМЕР РАСШИРЕННОГО СЧЕТА ПРОДАВЦА",
                                                                              "amount":"СУММА",
                                                                              "clientTransaction":"внешний идентификатор транзакции",
                                                                              "operationInfo":{
                                                                                 "attribute":[
                                                                                    {
                                                                                       "key":"PARENTID",
                                                                                       "value":"12345678"
                                                                                    }
                                                                                 ]
                                                                              }
                                                                           }
                                                                        }
                                                                     }
                                                                  }

                                                                  Ответ:

                                                                  {
                                                                    "Envelope":{
                                                                      "Body":{
                                                                        "PaymentResponse":{
                                                                          "transaction": "номер операции в системе МОНЕТУ.РУ",
                                                                          "dateTime": "2019-01-25T15:35:32.000+03:00",
                                                                          "status": "SUCCESS",
                                                                          "clientTransaction": "внешний идентификатор транзакции"
                                                                        }
                                                                      }
                                                                    }
                                                                  }
                                                                  <?php
                                                                  
                                                                  $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                                                  include_once($sdkAppFileName);
                                                                  
                                                                  try {
                                                                      $monetaSdk = new \Moneta\MonetaSdk();
                                                                      $monetaSdk->checkMonetaServiceConnection();
                                                                  
                                                                      $request = new \Moneta\Types\PaymentRequest();
                                                                  
                                                                      //номер счёта (в системе МОНЕТА.РУ) для списания средств
                                                                      //номер транзитного счёта магазина/маркетплейса
                                                                      $request->payer = '';
                                                                  
                                                                      //номер счёта (в системе МОНЕТА.РУ) для зачисления средств
                                                                      //номер расширенного счёта организации/продавца
                                                                      $request->payee = '';
                                                                  
                                                                      //сумма перевода
                                                                      $request->amount = '15.00';
                                                                  
                                                                      //номер транзакции в учётной системе магазина/маркетплейса.
                                                                      $request->clientTransaction = 'my-order-id-15_2';
                                                                  
                                                                      //платёжный пароль магазина/маркетплейса.
                                                                      $request->paymentPassword = '*******************';
                                                                  
                                                                      $operation = new \Moneta\Types\OperationInfo();
                                                                  
                                                                      //в параметре указывается номер базовой операции - это операция платежа на транзитный счёт магазина/маркетплейса.
                                                                      $attribute = new \Moneta\Types\KeyValueAttribute();
                                                                      $attribute->key = 'PARENTID';
                                                                      $attribute->value = '';
                                                                      $operation->addAttribute($attribute);
                                                                  
                                                                      $request->operationInfo = $operation;
                                                                  
                                                                      //запрос на перевод средств внутри системы МОНЕТА.РУ
                                                                      //с транзитного счёта магазина/маркетплейса на расширенный счёт организации(продавца)
                                                                      $result = $monetaSdk->monetaService->Payment($request);
                                                                  
                                                                      if (!$result['id']) {
                                                                          throw new Exception(print_r($result, true));
                                                                      }
                                                                  
                                                                      echo "Запрос обработан.";
                                                                  
                                                                      foreach ($result['attribute'] as $key => $attribute) {
                                                                          if ('statusid' === $attribute['key']) {
                                                                              if ((new \Moneta\Types\OperationStatus())::SUCCEED !== $attribute['value']) {
                                                                                  echo " Операция НЕ проведена полностью.";
                                                                              }
                                                                              break;
                                                                          }
                                                                      }
                                                                  
                                                                  } catch (Exception $e) {
                                                                      echo "Ошибка:<br />";
                                                                      echo "<pre>" . $e->getMessage() . "</pre>";
                                                                  }

                                                                  В атрибутах перевода необходимо указать номер базовой операции в поле PARENTID.

                                                                  Количество переводов с транзитного счета торговой площадки на расширенные счета продавцов будет равным количеству продавцов в заказе.

                                                                  Для перевода денежных средств с расширенного счета продавца в Системе “МОНЕТА.РУ” на банковские реквизиты продавца необходимо использовать запрос PaymentRequest в рамках интерфейса MONETA.MerchantAPI, где payer=НОМЕРА РАСШИРЕННОГО СЧЕТА ПРОДАВЦА, а payee=5.

                                                                  Запрос:

                                                                  {
                                                                     "Envelope":{
                                                                        "Header":{
                                                                           "Security":{
                                                                              "UsernameToken":{
                                                                                 "Username":"Username",
                                                                                 "Password":"Password"
                                                                              }
                                                                           }
                                                                        },
                                                                        "Body":{
                                                                           "PaymentRequest":{
                                                                              "payer":НОМЕР РАСШИРЕННОГО СЧЕТА ПРОДАВЦА,
                                                                              "payee":5,
                                                                              "amount":10,
                                                                              "clientTransaction":"Внешний номер операции",
                                                                              "paymentPassword":12345,
                                                                              "isPayerAmount":true,
                                                                              "operationInfo":{
                                                                                 "attribute":[
                                                                                    {
                                                                                       "key":"WIREPAYMENTPURPOSE",
                                                                                       "value":"Перечисление суммы переводов денежных средств по Договору № ___ от DD.MM.YYYY. НДС не облагается."
                                                                                    }
                                                                                 ]
                                                                              }
                                                                           }
                                                                        }
                                                                     }
                                                                  }
                                                                  <?php
                                                                  
                                                                  $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                                                  include_once($sdkAppFileName);
                                                                  
                                                                  try {
                                                                      $monetaSdk = new \Moneta\MonetaSdk();
                                                                      $monetaSdk->checkMonetaServiceConnection();
                                                                  
                                                                      $request = new \Moneta\Types\PaymentRequest();
                                                                  
                                                                      //номер счёта (в системе МОНЕТА.РУ) для списания средств
                                                                      //номер расширенного счёта организации(продавца)
                                                                      $request->payer = '';
                                                                  
                                                                      //получатель перевода
                                                                      //5 - будет осуществлён банковский перевод по реквизитам; в банк организации(продавца)
                                                                      $request->payee = '5';
                                                                  
                                                                      //сумма перевода
                                                                      $request->amount = '15.00';
                                                                  
                                                                      //номер транзакции в учётной системе магазина/маркетплейса.
                                                                      $request->clientTransaction = 'my-order-id-15_3';
                                                                  
                                                                      //платёжный пароль магазина/маркетплейса.
                                                                      $request->paymentPassword = '**************';
                                                                  
                                                                      $request->isPayerAmount = true;
                                                                  
                                                                      $request->description = 'Перечисление на банковские реквизиты организации(продавца)';
                                                                  
                                                                      //запрос на перевод средств
                                                                      //с расширенного счёта организации(продавца) на банковские реквизиты организации(продавца)
                                                                      $result = $monetaSdk->monetaService->Payment($request);
                                                                  
                                                                      if (!$result['id']) {
                                                                          throw new Exception(print_r($result, true));
                                                                      }
                                                                  
                                                                      echo "Запрос обработан.";
                                                                  
                                                                      foreach ($result['attribute'] as $key => $attribute) {
                                                                          if ('statusid' === $attribute['key']) {
                                                                              if ((new \Moneta\Types\OperationStatus())::SUCCEED !== $attribute['value']) {
                                                                                  echo " Операция НЕ проведена полностью.";
                                                                              }
                                                                              break;
                                                                          }
                                                                      }
                                                                  
                                                                  } catch (Exception $e) {
                                                                      echo "Ошибка:<br />";
                                                                      echo "<pre>" . $e->getMessage() . "</pre>";
                                                                  }

                                                                  Запросы маркетплейс отправляет в рамках интерфейса MONETA.MerchantAPI.

                                                                  Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                                                  Результаты поиска
                                                                    Ничего не найдено
                                                                    Оглавление
                                                                    Управление комиссией

                                                                    Управление комиссией

                                                                    Маркетплейс может управлять размером комиссии, взимаемым с продавца в зависимости от категории товара или оборотов продавца.

                                                                    Максимальный размер вознаграждения маркетплейса будет зафиксирован в договоре об информационно-техническом взаимодействии.

                                                                    Значение комиссии маркетплейс передает в поле SOURCETARIFFMULTIPLIER в процентах в запросе на перевод с транзитного счета маркетплейса на расширенный счет продавца в системе МОНЕТА.РУ.

                                                                    Запрос:

                                                                    {
                                                                      "Envelope": {
                                                                        "Header": {
                                                                          "Security": {
                                                                            "UsernameToken": {
                                                                              "Username": "логин",
                                                                              "Password": "пароль"
                                                                            }
                                                                          }
                                                                        },
                                                                        "Body": {
                                                                          "PaymentRequest": {
                                                                            "payer": "НОМЕР ТРАНЗИТНОГО СЧЕТА ПЛОЩАДКИ",
                                                                            "payee": "НОМЕРА РАСШИРЕННОГО СЧЕТА ПРОДАВЦА",
                                                                            "amount": "сумма",
                                                                            "clientTransaction": "внешний идентификатор транзакции",
                                                                            "operationInfo": {
                                                                              "attribute": [
                                                                                {
                                                                                  "key": "PARENTID",
                                                                                  "value": "12345678"
                                                                                },
                                                                                {
                                                                                  "key": "SOURCETARIFFMULTIPLIER",
                                                                                  "value": "0.015"
                                                                                }
                                                                              ]
                                                                            }
                                                                          }
                                                                        }
                                                                      }
                                                                    }

                                                                    где "value": "0.015" - значение в процентах.

                                                                    Ответ:

                                                                    {
                                                                      "Envelope":{
                                                                        "Body":{
                                                                          "PaymentResponse":{
                                                                            "transaction": "номер операции в системе МОНЕТУ.РУ",
                                                                            "dateTime": "2019-01-25T15:35:32.000+03:00",
                                                                            "status": "SUCCESS",
                                                                            "clientTransaction": "внешний идентификатор транзакции"
                                                                          }
                                                                        }
                                                                      }
                                                                    }
                                                                    <?php
                                                                    
                                                                    $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                                                    include_once($sdkAppFileName);
                                                                    
                                                                    try {
                                                                        $monetaSdk = new \Moneta\MonetaSdk();
                                                                        $monetaSdk->checkMonetaServiceConnection();
                                                                    
                                                                        $request = new \Moneta\Types\PaymentRequest();
                                                                    
                                                                        //номер счёта (в системе МОНЕТА.РУ) для списания средств
                                                                        $request->payer = '';
                                                                    
                                                                        //номер счёта (в системе МОНЕТА.РУ) для зачисления средств
                                                                        $request->payee = '';
                                                                    
                                                                        //сумма перевода
                                                                        $request->amount = '20.00';
                                                                    
                                                                        //номер транзакции в учётной системе магазина/маркетплейса.
                                                                        $request->clientTransaction = 'my-order-id-20';
                                                                    
                                                                        //платёжный пароль магазина/маркетплейса.
                                                                        $request->paymentPassword = '*******************';
                                                                    
                                                                        $operation = new \Moneta\Types\OperationInfo();
                                                                    
                                                                        //в параметре указывается номер базовой операции - это операция платежа на транзитный счёт магазина/маркетплейса.
                                                                        $attribute = new \Moneta\Types\KeyValueAttribute();
                                                                        $attribute->key = 'PARENTID';
                                                                        $attribute->value = '';
                                                                        $operation->addAttribute($attribute);
                                                                    
                                                                        //в параметре указывается значение комиссии, которую взимает магазин/маркетплейс с организации/продавца.
                                                                        $attribute = new \Moneta\Types\KeyValueAttribute();
                                                                        $attribute->key = 'SOURCETARIFFMULTIPLIER';
                                                                        $attribute->value = '0.015';    //1,5%
                                                                        $operation->addAttribute($attribute);
                                                                    
                                                                        $request->operationInfo = $operation;
                                                                    
                                                                        //запрос на перевод средств внутри системы МОНЕТА.РУ
                                                                        //с транзитного счёта магазина/маркетплейса на расширенный счёт организации(продавца)
                                                                        $result = $monetaSdk->monetaService->Payment($request);
                                                                    
                                                                        if (!$result['id']) {
                                                                            throw new Exception(print_r($result, true));
                                                                        }
                                                                    
                                                                        echo "Запрос обработан.";
                                                                    
                                                                        foreach ($result['attribute'] as $key => $attribute) {
                                                                            if ('statusid' === $attribute['key']) {
                                                                                if ((new \Moneta\Types\OperationStatus())::SUCCEED !== $attribute['value']) {
                                                                                    echo " Операция НЕ проведена полностью.";
                                                                                }
                                                                                break;
                                                                            }
                                                                        }
                                                                    
                                                                    } catch (Exception $e) {
                                                                        echo "Ошибка:<br />";
                                                                        echo "<pre>" . $e->getMessage() . "</pre>";
                                                                    }

                                                                    Запросы маркетплейс отправляет в рамках интерфейса MONETA.MerchantAPI.

                                                                    Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                                                    Результаты поиска
                                                                      Ничего не найдено
                                                                      Оглавление
                                                                      Выплаты продавцу

                                                                      Выплаты продавцу

                                                                      Если продавцом, клиентом маркетплейса, выступает физическое лицо, то возможно перечисление принятых платежей на банковскую карту продавца.

                                                                      Выплата продавцу Выплата продавцу

                                                                      Для выплаты необходимо предварительно получить данные банковской карты продавца.

                                                                      Для этого можно принять платеж на произвольную сумму одним из способов, указанных в документации платёжных запросов.

                                                                      После списания денежных средств с карты покупателя маркетплейсу будет сообщен токен - это номер операции платежа, в котором зашифрованы карточные данные.

                                                                      Маркетплейсу необходимо сохранить полученный токен, связав его с уникальным идентификатором продавца в учетной системе маркетплейса.

                                                                      Для последующих выплат на привязанную карту продавца необходимо использовать токен, равный номеру операции.

                                                                      Из этого номера нужно сформировать PAYMENTTOKEN путем добавления строкового нуля перед значением MNT_OPERATION_ID.

                                                                      Для перевода денежных средств с транзитного счета маркетплейса на банковскую карту продавца необходимо использовать запрос PaymentRequest в рамках интерфейса MONETA.MerchantAPI, где payer=НОМЕР ТРАНЗИТНОГО СЧЕТА ПЛОЩАДКИ, а payee=НОМЕР ШЛЮЗА. Номера необходимо уточнить у сотрудника НКО “МОНЕТА” (ООО)В атрибутах перевода необходимо указать номер базовой операции в поле PARENTID.

                                                                      Запрос:

                                                                      {
                                                                         "Envelope":{
                                                                            "Header":{
                                                                               "Security":{
                                                                                  "UsernameToken":{
                                                                                     "Username":"Username",
                                                                                     "Password":"Password"
                                                                                  }
                                                                               }
                                                                            },
                                                                            "Body":{
                                                                               "PaymentRequest":{
                                                                                  "payer":"номер транзитного счета площадки",
                                                                                  "payee":"Номер шлюза",
                                                                                  "amount":"сумма",
                                                                                  "isPayerAmount":true,
                                                                                  "paymentPassword":"*****",
                                                                                  "clientTransaction":"tb-20170220-1487659653",
                                                                                  "description":"tb-20170220-1487659653",
                                                                                  "operationInfo":{
                                                                                     "attribute":[
                                                                                        {
                                                                                           "key":"PAYMENTTOKEN",
                                                                                           "value":"0123456789"
                                                                                        }
                                                                                     ]
                                                                                  }
                                                                               }
                                                                            }
                                                                         }
                                                                      }

                                                                      Ответ:

                                                                      {
                                                                         "Envelope":{
                                                                            "Body":{
                                                                               "PaymentResponse":{
                                                                                  "transaction":12345678,
                                                                                  "dateTime":"2017-02-21T09:47:39.000+03:00",
                                                                                  "status":"SUCCEED",
                                                                                  "clientTransaction":"tb-20170220-1487659653"
                                                                               }
                                                                            }
                                                                         }
                                                                      }
                                                                      <?php
                                                                      
                                                                      $sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
                                                                      include_once($sdkAppFileName);
                                                                      
                                                                      try {
                                                                          $monetaSdk = new \Moneta\MonetaSdk();
                                                                          $monetaSdk->checkMonetaServiceConnection();
                                                                      
                                                                          $request = new \Moneta\Types\TransferRequest();
                                                                      
                                                                          //номер счёта (в системе МОНЕТА.РУ) для списания средств
                                                                          //номер транзитного счёта магазина/маркетплейса
                                                                          $request->payer = '';
                                                                      
                                                                          //номер счёта (в рамках системы МОНЕТА.РУ) для зачисления средств
                                                                          $request->payee = '279';
                                                                      
                                                                          //сумма перевода
                                                                          $request->amount = '17.00';
                                                                      
                                                                          $request->isPayerAmount = true;
                                                                      
                                                                          //платёжный пароль магазина/маркетплейса.
                                                                          $request->paymentPassword = '*******************';
                                                                      
                                                                          //номер транзакции в учётной системе магазина/маркетплейса.
                                                                          $request->clientTransaction = 'my-order-id-17';
                                                                      
                                                                          //краткое описание операции.
                                                                          $request->description = 'Описание перевода на банковскую карту';
                                                                      
                                                                          $operation = new \Moneta\Types\OperationInfo();
                                                                      
                                                                          //в параметре указывается номер(transaction) базовой операции с добавлением ноля в начало строки;
                                                                          //базовая операция - это операция платежа на транзитный счёт магазина/маркетплейса.
                                                                          $attribute = new \Moneta\Types\KeyValueAttribute();
                                                                          $attribute->key = 'PAYMENTTOKEN';
                                                                          $attribute->value = '';
                                                                          $operation->addAttribute($attribute);
                                                                      
                                                                          $request->operationInfo = $operation;
                                                                      
                                                                          //запрос на перевод средств
                                                                          //с транзитного счёта магазина/маркетплейса на банк. карту организации(продавца) - физического лица
                                                                          $result = $monetaSdk->monetaService->Transfer($request);
                                                                      
                                                                          if (!$result['transaction']) {
                                                                              throw new Exception(print_r($result, true));
                                                                          }
                                                                      
                                                                          echo "Запрос обработан.";
                                                                      
                                                                          if ((new \Moneta\Types\OperationStatus())::SUCCEED !== $result['status']) {
                                                                              echo " Операция НЕ проведена полностью.";
                                                                          }
                                                                      
                                                                      } catch (Exception $e) {
                                                                          echo "Ошибка:<br />";
                                                                          echo "<pre>" . $e->getMessage() . "</pre>";
                                                                      }

                                                                      Запросы маркетплейс отправляет в рамках интерфейса MONETA.MerchantAPI.

                                                                      Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                                                                      Результаты поиска
                                                                        Ничего не найдено
                                                                        Оглавление
                                                                        Перевод денежных средств в Федеральное казначейство

                                                                        Перевод денежных средств в Федеральное казначейство

                                                                        Маркетплейс для реализации своего бизнес процесса может управлять расчетными счетами клиентов юридических лиц и индивидуальных предпринимателей, открытыми в НКО “МОНЕТА” (ООО).

                                                                        Управление расчетными счетами возможно в рамках интерфейса MerchantAPI, основной используемый запрос - это PaymentRequest.

                                                                        Управление денежными средствами на счетах клиентов в Системе МОНЕТА.РУ позволит переводить денежные средства в Федеральное Казначейство для погашения бюджетных платежей: штрафов ГИБДД, оплата налогов, ФССП.

                                                                        Более подробная информация по запросам в рамках интерфейса MerchantAPI, предоставляется индивидуально для каждого проекта, т.к. зависит от бизнес процесса маркетплейса формата B2B.

                                                                        Результаты поиска
                                                                          Ничего не найдено
                                                                          Оглавление
                                                                          Управление расчётными счетами клиентов площадки

                                                                          Управление расчётными счетами клиентов площадки

                                                                          Маркетплейс для реализации своего бизнес процесса может управлять расчетными счетами клиентов юридических лиц и индивидуальных предпринимателей, открытыми в НКО “МОНЕТА” (ООО).

                                                                          Управление расчетными счетами возможно в рамках интерфейса MerchantAPI, основной используемый запрос - это PaymentRequest.

                                                                          Более подробная информация по запросам в рамках интерфейса MerchantAPI, предоставляется индивидуально для каждого проекта, т.к. зависит от бизнес процесса маркетплейса формата B2B.

                                                                          Результаты поиска
                                                                            Ничего не найдено
                                                                            Оглавление
                                                                            54-ФЗ

                                                                            54-ФЗ

                                                                            Применение контрольно-кассовой техники при осуществлении расчетов

                                                                            Согласно 54-ФЗ “О применении контрольно-кассовой техники при осуществлении расчетов в Российской Федерации” при оплате товаров, работ или услуг необходимо необходимо формировать фискальный документ и отправлять его в ФНС с помощью онлайн-кассы.

                                                                            Маркетплейс может выбрать один из вариантов формирования фискального документа:

                                                                            • В ККТ продавца (клиента маркетплейса)
                                                                            • В ККТ маркетплейса
                                                                            • В ККТ платежного агрегатора ООО “ПЭЙ ЭНИ ВЭЙ”

                                                                            В зависимости от потребностей, торговая площадка может использовать один из сервисов:

                                                                            Сравнение сервисов Сравнение сервисов

                                                                            Подразделы 54-ФЗ

                                                                            Результаты поиска
                                                                              Ничего не найдено
                                                                              Оглавление
                                                                              ККТ маркетплейса

                                                                              ККТ маркетплейса

                                                                              Если маркетплейс планирует формировать фискальные документы за своих клиентов, то маркетплейс должен стать банковским платежным агентом в статусе платежного агрегатора.

                                                                              Согласно ст. 14.1 Федерального закона от 27.06.2011 N 161-ФЗ (ред. от 02.08.2019) “О национальной платежной системе” НКО “МОНЕТА” (ООО) привлекает платежного агрегатора для:

                                                                              • предоставления юридическим лицам и индивидуальным предпринимателям программных средств и (или) технических устройств, обеспечивающих прием электронных средств платежа;
                                                                              • участия в переводе денежных средств в пользу юридических лиц и индивидуальных предпринимателей по операциям с использованием электронных средств платежа;
                                                                              • проведения идентификации клиентов - юридических лиц и индивидуальных предпринимателей, указанных в части 1 настоящей статьи, в соответствии с требованиями законодательства Российской Федерации о противодействии легализации (отмыванию) доходов, полученных преступным путем, и финансированию терроризма.

                                                                              НКО “МОНЕТА” (ООО) заключит с маркетплейсом:

                                                                              • Договор информационно-технологического взаимодействия, по которому сервис выступает маркетплейсом;
                                                                              • Договор о привлечении банковского платежного агента для осуществления операций платежного агрегатора, по которому сервис выступает платежным агрегатором;
                                                                              • Договор ​расчетного обслуживания, по которому сервис в НКО “МОНЕТА” (ООО) открывает специальный банковский счет.

                                                                              В качестве транзитного счета маркетплейс будет использовать специальный банковский счет, открытый в НКО “МОНЕТА” (ООО). Это позволит маркетплейсу по всем платежам, поступающим на специальный счет, формировать от своего имени фискальные документы в кассе ПА и предоставлять фискальный документ покупателю, в котором будет отражен ИНН продавца.

                                                                              Согласно разъяснениям Федеральной Налоговой Службы Российской Федерации, если платежи поступают продавцу от платежного агрегатора, который выступает платежным агентом и проводит денежные средства покупателей через специальный банковский счет, то у продавца нет обязанности применять ККТ. ККТ применяет агрегатор (ч. 12 ст. 4 Закона о приеме платежей, п. 1 ст. 1.2, ст. 1.1 Закона о применении ККТ, Письма Минфина России от 18.05.2020 N 03-01-15/40639, от 14.03.2018 N 03-01- 15/15693).

                                                                              ККТ продавца

                                                                              Для передачи информации, необходимой для формирования фискальных документов в ККТ продавца маркетплейс использует сервис https://kassa.payanyway.ru, который поддерживает сбор и передачу информации о платеже в ККТ и сервисы продавца следующих типов: https://kassa.payanyway.ru/instruction.

                                                                              Для интеграции с сервисом https://kassa.payanyway.ru маркетплейсу необходимо запросить у продавца настройки доступа к ККТ (логин, пароль доступа, идентификатор ККТ) и передать их в сервис через API (в настоящей момент метод не реализован, данные заносятся вручную в личном кабинете).

                                                                              Если маркетплейс использует транзитный счет, то фискальный документ необходимо формировать при поступлении платежа на транзитный счет

                                                                              Настройка кассы

                                                                              1. Для транзитного счета маркетплейса и для счета продавца, создаются учетные записи в kassa.payanyway.ru
                                                                              2. В настройках kassa.payanyway.ru для транзитного счёта выбираем тип кассы: “МодульКасса”, в поле “Ссылка на API МодульКассы” вводим значение “-” (минус), логин, пароль, UUID киоска - поля должны быть пустые.

                                                                              Касса должна быть включена (параметр “Касса включена”).

                                                                              Настраиваем PayURL, в случае использования транзитный PayURL, задаём другие необходимые параметры.

                                                                              1. Настраиваем учетные записи в kassa.payanyway.ru для клиентов маркетплейса (продавцов), используя логин и пароль от “аккаунта 2” и номер расширенного счёта магазина. В экспертных настройках этих учетных записей указываем номер расширенного счёта (параметр “Родительский AccountId”) транзитного счёта.

                                                                              PayURL в этих учетных записях не используются, его настраивать не нужно.

                                                                              Печать чеков

                                                                              Передача номенклатуры через PayURL

                                                                              В случае передачи номенклатуры через PayURL в каждый элемент, описывающий товарную позицию, добавляется новый параметр “account”. Этот параметр содержит номер расширенного счета клиента маркетпейса, в котором чек на этот товар нужно пробить.

                                                                              Пример:

                                                                              "inventPositions": [
                                                                                {
                                                                                  "name": "TEST",
                                                                                  "price": "20",
                                                                                  "quantity": "1",
                                                                                  "vatTag": "1105",
                                                                                  "account": "12345678"
                                                                                }
                                                                              ]

                                                                              Передача номенклатуры в платёжном запросе Moneta.Assistant

                                                                              В случае передачи номенклатуры в платёжном запросе Moneta.Assistant, аналогично п.3.1, добавляется параметр “a”. Пример параметра формы платежного запроса:

                                                                              В случае передачи номенклатуры в платёжном запросе Moneta.Assistant, аналогично п.3.1, добавляется параметр “a”. Пример параметра формы платежного запроса:

                                                                              <input 
                                                                                type="hidden" 
                                                                                name="MNT_CUSTOM2"
                                                                                value='{"customer":"test@test.ru","items":[{"n":"product name","p":"123.45","q":"3", "t":"1105","a":"12345678"}]}' />

                                                                              Передача номенклатуры через API

                                                                              Данные для формирования чека можно передать в сервис kassa.payanyway.ru, при этом нет необходимости направлять url-уведомление об успешном платеже транзитом через сервис kassa.

                                                                              Для передачи чека через API сервиса, используйте следующий код php:

                                                                              <?php
                                                                              // варианты налогообложения:
                                                                              const paw_kassa_VAT0 = '1104'; // НДС 0%
                                                                              const paw_kassa_VAT10 = '1103'; // НДС 10%
                                                                              const paw_kassa_VAT18 = '1102'; // НДС 18% (c 01.01.2019 ставка 20%)
                                                                              const paw_kassa_VATNOVAT = '1105'; // НДС не облагается
                                                                              const paw_kassa_VATWR10 = '1107'; // НДС с рассч. ставкой 10%
                                                                              const paw_kassa_VATWR18 = '1106'; // НДС с рассч. ставкой 18% (c 01.01.2019 ставка 20%)
                                                                              //
                                                                              // paw_kassa_sale - функция "печати" чека в кассе kassa.payanyway.ru, вызывать её нужно
                                                                              // в обработчике PayURL в случае положительного ответа (SUCCESS)
                                                                              //
                                                                              // Параметры:
                                                                              //
                                                                              // $mnt_id - номер расширенного счёта (бизнес-счёта)
                                                                              // $mnt_transaction_id - id (номер) заказа, однозначно определяющий заказ в системе магазина.
                                                                              // В случае, если отправляется запрос на фискализацию чека возврата, необходимо добавить к
                                                                              // MNT_TRANSACTION_ID префикс или постфикс.
                                                                              // $mnt_operation_id - номер операции в системе MONETA.RU.
                                                                              // $mnt_amount - сумма заказа (в формате Moneta.ru, пример: 100.00)
                                                                              // $mnt_data_integrity_code - код проверки целостности данных
                                                                              // $inventoryPositions = array(
                                                                              // array(
                                                                              // 'name' => 'tovar 1', 'price' => 1, 'quantity' => 2, 'vatTag' => paw_kassa_VATNOVAT,
                                                                              // 'pm' => 'full_payment', 'po' => 'commodity', 'markCode' => array
                                                                              (
                                                                              'gs1m' => 'MDEwNDYzMDAzNDA3MDAxMjIxQ01LNDVCcmhOMFdMZg=='
                                                                              )
                                                                              // ),
                                                                              // array(
                                                                              // 'name' => 'tovar 2', 'price' => 3, 'quantity' => 1, 'vatTag' => paw_kassa_VATNOVAT,
                                                                              // 'pm' => 'full_payment', 'po' => 'commodity', 'idInternal' => '1122334455')
                                                                              // - позиции заказа,
                                                                              //
                                                                              // где:
                                                                              // name - название товара
                                                                              // price - цена за единицу товара
                                                                              // quantity - количество единиц товара
                                                                              // vatTag - вариант налогообложения
                                                                              // markCode - код маркировки товара
                                                                              Здесь:
                                                                              gs1m - код товара, считанный с маркированного товара, в формате GS1 Data Matrix
                                                                              (например: 010463003407001221CMK45BrhN0WLf). В связи с тем, что в коде маркировки могут быть
                                                                              непечатные символы, необходимо перед отправкой кодировать строку с кодом маркировки в
                                                                              Base64.
                                                                              base64_encode(010463003407001221CMK45BrhN0WLf) = MDEwNDYzMDAzNDA3MDAxMjIxQ01LNDVCcmhOMFdMZg==
                                                                              hex - код товара в шестнадцатеричном формате
                                                                              // idInternal - внутренний код товара из учётной системы магазина. Если в личном кабинете
                                                                              //kassa.payanyway.ru, была добавлена номенклатура с данным кодом товара, то данные номенклатуры
                                                                              будут //добавлены в чек.
                                                                              //
                                                                              // для 'name' в $inventoryPositions надо делать преобразование cleanProductName
                                                                              //
                                                                              // $client['email'] - email покупателя
                                                                              // $client['phone'] - номер телефона покупателя.
                                                                              // Только цифры и символ “+” (без пробелов, др. символов)
                                                                              // $client['name'] - наименование покупателя (клиента). Наименование организации или фамилия, имя,
                                                                              // отчество (при наличии), серия и номер паспорта покупателя (клиента)
                                                                              // $client['inn'] - ИНН организации или покупателя (клиента)
                                                                              function cleanProductName($value)
                                                                              {
                                                                              $result = preg_replace('/[^0-9a-zA-Zа-яА-Я-,. ]/ui', '', htmlspecialchars_decode($value));
                                                                              //$result = trim(mb_substr($result, 0, 20));
                                                                              return $result;
                                                                              }
                                                                              function paw_kassa_sale($mnt_id, $mnt_transaction_id, $mnt_operation_id, $mnt_amount,
                                                                              $mnt_data_integrity_code, $client, $inventoryPositions)
                                                                              {
                                                                              $productsTototal = 0;
                                                                              foreach ($inventoryPositions AS $item)
                                                                              {
                                                                              $productsTototal = $productsTototal + floatval($item['price'])*floatval($item['quantity']);
                                                                              }
                                                                              if (floatval($productsTototal) != floatval($mnt_amount))
                                                                              {
                                                                              $discountRate = floatval($mnt_amount) / floatval($productsTototal);
                                                                              $newInvenrory = array();
                                                                              foreach ($inventoryPositions AS $item)
                                                                              {
                                                                              $item['price'] = round(floatval($item['price']) * $discountRate, 5);
                                                                              $newInvenrory[] = $item;
                                                                              }
                                                                              $inventoryPositions = $newInvenrory;
                                                                              }
                                                                              $data = array(
                                                                              'operationId' => $mnt_operation_id,
                                                                              'checkoutDateTime' => date(DATE_ATOM),
                                                                              'docNum' => $mnt_transaction_id,
                                                                              'docType' => 'SALE',
                                                                              'inventPositions' => $inventoryPositions,
                                                                              'moneyPositions' => array(array('paymentType' => 'CARD', 'sum' => $mnt_amount)),
                                                                              'client' => array(
                                                                              'email' => $client['email'],
                                                                              'phone' => $client['phone'],
                                                                              'name' => cleanProductName($client['name']),
                                                                              'inn' => cleanProductName($client['inn']),
                                                                              ),
                                                                              );
                                                                              $data['signature'] = md5($data['docNum'].$data['checkoutDateTime'].$mnt_data_integrity_code);
                                                                              if (isset($_SERVER['HTTP_HOST']))
                                                                              $domainName = $_SERVER['HTTP_HOST'];
                                                                              else
                                                                              $domainName = $_SERVER['SERVER_NAME'];
                                                                              $data['telemetry'] = array('domain' => $domainName);
                                                                              $jsonData = preg_replace_callback('/\\\\u(\w{4})/', function ($matches) {
                                                                              return html_entity_decode('&#x' . $matches[1] . ';', ENT_COMPAT, 'UTF-8');
                                                                              }, json_encode($data));
                                                                              $operationUrl = 'https://kassa.payanyway.ru/api/api.php?accountid='.$mnt_id.'&group=receipt';
                                                                              $ch = curl_init();
                                                                              curl_setopt($ch, CURLOPT_URL, $operationUrl);
                                                                              curl_setopt($ch, CURLOPT_POST, true);
                                                                              curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData);
                                                                              curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
                                                                              curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                                                                              curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                                                                              'Content-Type: application/json',
                                                                              'Content-Length: '.strlen($jsonData)
                                                                              ));
                                                                              $result = curl_exec($ch);
                                                                              curl_close($ch);
                                                                              return $result;
                                                                              }

                                                                              Чтобы фискализировать чек на возврат, нужно передать значение SALE_RETURN в параметре docType:

                                                                              $data = array(
                                                                              'operationId' => $mnt_operation_id,
                                                                              'checkoutDateTime' => date(DATE_ATOM),
                                                                              'docNum' => 'RETURN_'.$mnt_transaction_id,
                                                                              'docType' => 'SALE_RETURN',
                                                                              'inventPositions' => $inventoryPositions,
                                                                              'moneyPositions' => array(array('paymentType' => 'CARD', 'sum' => $mnt_amount)),
                                                                              'client' => array(
                                                                              'email' => $client['email'],
                                                                              'phone' => $client['phone'],
                                                                              'name' => cleanProductName($client['name']),
                                                                              'inn' => cleanProductName($client['inn']),
                                                                              ),
                                                                              );

                                                                              При передаче чека на зачёт предоплаты (чек, фискализируемый при отгрузке товара), тип оплаты paymentType должен быть передан как PREPAID.

                                                                              Также в строки номенклатуры можно добавить параметр account для распределения чеков по магазинам торговой площадки при испоьзовании площадкой мультикорзины.

                                                                              Результаты поиска
                                                                                Ничего не найдено
                                                                                Оглавление
                                                                                Сервис Widget SBP/FPS

                                                                                Сервис Widget SBP/FPS

                                                                                Данный раздел содержит инструкцию и рекомендации по подключению к сервису Moneta SBP/FPS.

                                                                                Moneta SBP/FPS - cервис, предназначенный для автоматизации вывода средств (переводов) с помощью СБП С2С/Ме2Ме Push c ЭСП МОНЕТА.РУ по номеру телефона.

                                                                                Схема взаимодействия
                                                                                Регистрация маркетплейса
                                                                                Установление доверия
                                                                                Аутентификация
                                                                                Встраивание в iframe
                                                                                Уведомления о событиях
                                                                                Пример запроса PaymentRequest
                                                                                Просмотр истории транзакций

                                                                                Подразделы Сервис Widget SBP/FPS

                                                                                Результаты поиска
                                                                                  Ничего не найдено
                                                                                  Оглавление
                                                                                  Схема взаимодействия

                                                                                  Схема взаимодействия

                                                                                  Схема взаимодействия между приложением маркетплейса и сервисом Moneta SBP/FPS выглядит следующим образом:

                                                                                  • Приложение маркетплейса формирует и подписывает токен, в котором сохранена информация номер юнита Пользователя, номер ЭСП МОНЕТА.РУ, время действия токена и другая информация.
                                                                                  • Приложение маркетплейса перенаправляет браузер Пользователя ЭСП МОНЕТА.РУ на специальный адрес, передав токен безопасности.
                                                                                  • Moneta SBP/FPS запрашивает номер телефона Получателя (физического лица) перевода.
                                                                                  • Moneta SBP/FPS предлагает Пользователю ЭСП МОНЕТА.РУ выбрать банк для перевода.
                                                                                  • Moneta SBP/FPS показывает Пользователю ЭСП МОНЕТА.РУ PAM-фразу (ФИО) Получателя перевода.
                                                                                  • Moneta SBP/FPS формирует операцию в статусе “Операция создана”.
                                                                                  • Moneta SBP/FPS отправляет приложению маркетплейса уведомление с указанием номера операции (operationId) и номера сообщения СБП (messageId).
                                                                                  • Moneta SBP/FPS возвращает Пользователя ЭСП МОНЕТА.РУ в приложение маркетплейса.
                                                                                  • Приложение маркетплейса отправляет запрос PaymentRequest, указывая в поле payee номер операции (operationId) с ведущим нулем, а также дополнительные атрибуты СБП, полученные в уведомлении.
                                                                                  Результаты поиска
                                                                                    Ничего не найдено
                                                                                    Оглавление
                                                                                    Регистрация маркетплейса

                                                                                    Регистрация маркетплейса

                                                                                    Маркетплейсу необходимо предоставить следующие данные на адрес mp@payanyway.ru:

                                                                                    • Обязательная информация:
                                                                                      • Полное и краткое наименование проекта.
                                                                                      • URL для отправки уведомлений о статусе перевода (callback url).
                                                                                    • Опциональная информация:
                                                                                      • Иконка проекта в SVG-формате или высоком разрешении.
                                                                                      • URL для возврата Пользователя ЭСП МОНЕТА.РУ обратно в приложение маркетплейса, если используется режим отличный от iframe (return url).

                                                                                    Со стороны Moneta SBP/FPS будет предоставлена следующая информация:


                                                                                    1. ApiSecret будет направлен на адрес электронной почты от Личного кабинета маркетплейса, указанный им в Договоре. ↩︎

                                                                                    Результаты поиска
                                                                                      Ничего не найдено
                                                                                      Оглавление
                                                                                      Установление доверия

                                                                                      Установление доверия

                                                                                      Для формирования сервисом Moneta SBP/FPS операций перевода (вывода) необходимо пройти процедуру установления доверия с сервисом.

                                                                                      Маркетплейсу необходимо:

                                                                                      • Войти в Личный кабинет маркетплейса с Пользователями ЭСП МОНЕТА.РУ на moneta.ru (или demo.moneta.ru для тестового контура).
                                                                                      • Перейти по ссылке, которую предоставил сервис Moneta SBP/FPS.
                                                                                      • В появившемся диалоге ознакомиться с информацией о том, какие разрешения маркетплейс предоставит сервису SBP/FPS.
                                                                                      • Подтвердить предоставление разрешений.

                                                                                      Аутентификация

                                                                                      Общая информация

                                                                                      Для инициализиции виджета Moneta SBP/FPS маркетплейсу необходимо передать одноразовый токен безопасности, в котором надежно зашифрована вся необходимая информация для проведения перевода. Токен безопасности должен формироваться на стороне маркетплейса, по указанным ниже правилам.

                                                                                      Формирование токена и подписи

                                                                                      Предварительные условия:

                                                                                      • Необходимо пройти процедуру регистрации маркетплейса и получить ApiKey и ApiSecret.
                                                                                      • Необходимо установить доверительные отношения с сервисом Moneta SBP/FPS.

                                                                                      Для реализации алгоритма формирования единовременного токена использованы следующие стандарты:

                                                                                      • RFC 3986 Uniform Resource Identifier (URI): Generic Syntax.
                                                                                      • RFC 2104 HMAC: Keyed-Hashing for Message Authentication.
                                                                                      • RFC 4648 The Base16, Base32, and Base64 Data Encodings.

                                                                                      Токен состоит из 2-х частей:

                                                                                      • Информационное сообщение, содержащее ключевую информацию о маркетплейсе и Пользователе ЭСП МОНЕТА.РУ, служебную информацию по переводу.
                                                                                      • Подпись/Хэш от информационного сообщения из п.1, и использованием заранее полученного общего секрета - ApiSecret.

                                                                                      Формирование информационного сообщения

                                                                                      Информационное сообщение состоит из набора ключ-значение, которые закодированы в соответствии с правилами URL-кодирования строк по RFC 3986. Пример:

                                                                                      key1=someKey&key2=Some%20Key2&extraKey=100500
                                                                                      

                                                                                      Ниже приведен набор обязательных параметров, которые необходимо указать при формировании информационного сообщения (ключи должны следовать в отсортированном порядке, как в таблице ниже):

                                                                                      КлючОписаниеТипПример
                                                                                      cidИдентификатор операции на стороне маркетплейсаStringi-17-203112
                                                                                      cidExpireAtДата/время до которой можно провести оплату (в EpohMills)Число1610464610097
                                                                                      keyApiKey полученный при регистрации в MonetaIdUrl Encoded Stringsite-x
                                                                                      nonceЧисло, использующееся для невозможности повторного использования одного и того же токена (см. ниже)Число10201010
                                                                                      unitIdНомер профиля/юнита пользователя ЭСП МОНЕТА.РУЧисло987654321
                                                                                      accountIdНомер ЭСП МОНЕТА.РУ для списания средствЧисло1230567
                                                                                      callbackUrlОпциональный параметр для demo окружения: Возможность задать тестовый callback url, отличный от того, что задан партнеру при регистрации.Url Encoded Stringhttp%3A%2F%2Fya.ru

                                                                                      При формировании nonce удобно использовать текущее время в секундах на момент формирования токена. Каждый новый nonce в новом токене, формирующийся для данного unitId должен быть строго больше предыдущего для данного юнита (т.е. nonce должен строго монотонно возрастать), иначе он будет отброшен как некорректный.

                                                                                      Пример итогового информационного сообщения:

                                                                                      cid=i103020&cidExpireAt=1601375568244&key=partner123&nonce=1601375468244&unitId=987654321&accountId=1230567
                                                                                      

                                                                                      Формирование подписи

                                                                                      После того, как информационное сообщение сформировано, необходимо вычислить подпись/хеш с использованием общего секрета - ApiSecret.

                                                                                      Алгоритм формирования:

                                                                                      • Вычислить HMAC-SHA512 хеш используя пару (информационное сообщение, секрет).
                                                                                      • Полученный массив байт перевести в строку в шестнадцатеричном представлении.
                                                                                      // message - инф. сообщение
                                                                                      // secret  - секрет/apiSecret
                                                                                      
                                                                                      signatureBytes  = hmac_sha512(message, secret)
                                                                                      signatureString = bytesToHex(signatureBytes)

                                                                                      После того, как подпись в виде hex-строки сформирована, необходимо добавить ее к информационному сообщению с ключом signature:

                                                                                      cid=i103020cidExpireAt=1601375568244&key=partner123&nonce=1601375468244&unitId=987654321&accountId=1230567&signature=7d7b968768f664bcdbd67bbd4e3f59347b300226734ade68bed660ab7794522fe0e3e66ecdb211f746dae1c44681a306ee221f8706c63195607e525e979360
                                                                                      

                                                                                      Финальным шагом необходимо полученную строку (информационное сообщение + подпись) закодировать при помощи base64, использовать при перенаправлении на виджет Moneta SBP/FPS.

                                                                                      // СЕРВЕР
                                                                                      // на стороне сервера формируем итоговый токен
                                                                                      message = "cid=i103020cidExpireAt=1601375568244&key=partner123&nonce=1601375468244&unitId=987654321&accountId=1230567&signature=7d7b968768f664bcdbd67bbd4e3f59347b300226734ade68bed660ab7794522fe0e3e66ecdb211f746dae1c44681a306ee221f8706c63195607e525e979360"
                                                                                      token   = base64(message)
                                                                                      
                                                                                      // БРАУЗЕР КЛИЕНТА
                                                                                      // делаем редирект в браузере клиента на указанный адрес с этим токеном
                                                                                      
                                                                                      // DEV окружение
                                                                                      https://fps-ui.dev.mnxsc.tech/?token={{token}}
                                                                                      
                                                                                      // PROD окружение
                                                                                      https://fps-ui.prod.mnxsc.tech/?token={{token}}

                                                                                      Примеры кода для формирования токена

                                                                                      $secretKey = "secretKey";
                                                                                      $cid = "i103020";
                                                                                      $cidExpireAt = 1601375568244;
                                                                                      $key = "partner123";
                                                                                      $nonce = time();
                                                                                      $unitId = 987654321;
                                                                                      $accountId = 1230567;
                                                                                      
                                                                                      $infoMessage = "cid=" . $cid . "&cidExpireAt=" . $cidExpireAt . "&key=" . $key . "&nonce=" . $nonce . "&unitId=" . $unitId . "&accountId" . $accountId;
                                                                                      $signatureString = hash_hmac("sha512", $infoMessage, $secretKey);
                                                                                      
                                                                                      $token = base64_encode($infoMessage . "&signature=" . $signatureString);
                                                                                      const SECRET_KEY = 'secretKey';
                                                                                      const cid = "i103020";
                                                                                      const cidExpireAt = 1601375568244;
                                                                                      const key = 'partner123';
                                                                                      const nonce = Date.now();
                                                                                      const unitId = 987654321;
                                                                                      const accountId = 1230567;
                                                                                      
                                                                                      const urlEncodedParams =
                                                                                          'cid='+encodeURIComponent(cid)
                                                                                          +'&cidExpireAt='+encodeURIComponent(cidExpireAt)
                                                                                          +'&key='+encodeURIComponent(key)
                                                                                          +'&nonce='+encodeURIComponent(nonce)
                                                                                          +'&unitId='+encodeURIComponent(unitId)
                                                                                          +'&accountId='+encodeURIComponent(accountId);
                                                                                      const signature = CryptoJS.HmacSHA512(urlEncodedParams, SECRET_KEY);
                                                                                      const signatureHex = CryptoJS.enc.Hex.stringify(signature);
                                                                                      const finalParams = urlEncodedParams + '&signature='+encodeURIComponent(signatureHex);
                                                                                      
                                                                                      const token = CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(finalParams));
                                                                                      Результаты поиска
                                                                                        Ничего не найдено
                                                                                        Оглавление
                                                                                        Встраивание в iframe

                                                                                        Встраивание в iframe

                                                                                        Код для вставки виджета в iframe

                                                                                        // DEV окружение
                                                                                        <iframe
                                                                                            src="https://fps-ui.dev.mnxsc.tech/withdrawal?frame=true&token={ONE_TIME_TOKEN}"
                                                                                            style="
                                                                                            width: 400px;
                                                                                            height: 600px;
                                                                                            border: 1px solid #CCC;
                                                                                            border-radius: 10px">
                                                                                        </iframe>
                                                                                        
                                                                                        
                                                                                        // PROD окружение
                                                                                        <iframe
                                                                                            src="https://fps-ui.prod.mnxsc.tech/withdrawal?frame=true&token={OONE_TIME_TOKEN"
                                                                                            style="
                                                                                            width: 400px;
                                                                                            height: 600px;
                                                                                            border: 1px solid #CCC;
                                                                                            border-radius: 10px">
                                                                                        </iframe>
                                                                                        • Рекомендуемые размеры iframe: 400 x 600
                                                                                        • формирование ONE_TIME_TOKEN описано в разделе генерации токена партнера.

                                                                                        Ограничения использования iframe

                                                                                        ОграничениеРешение
                                                                                        Не работает вставка https iframe в http родителя.Браузеры ограничивают возможности таких iframe, поэтому для тестов нужен https родитель. Например: https://localhost:8080

                                                                                        Получение событий из iframe

                                                                                        Виджет отправляет родительской странице события, которые можно обработать в js коде:

                                                                                        // код на сайте:
                                                                                        
                                                                                        window.addEventListener("message", receiveMessage, false);
                                                                                        
                                                                                        function receiveMessage(event) {
                                                                                        
                                                                                          // событие от виджета
                                                                                          if(event.origin === 'https://fps-ui.prod.mnxsc.tech'){
                                                                                        
                                                                                              const data = event.data || {};
                                                                                              console.log(data.type);
                                                                                          }
                                                                                        }
                                                                                        Тип событияОписание
                                                                                        initializedВиджет инициализирован
                                                                                        errorПроизошла ошибка отображения виджета, при этом data.error будет содержать код ошибки
                                                                                        loggedOutПользователь завершил работу с виджетом
                                                                                        verificationFinishedВерификация пользователя завершена, при этом в поле data.status будет результат операции: ‘SUCCESS’ либо ‘FAILED’
                                                                                        withdrawalFinishedВывод завершен, при этом в поле data.status будет результат операции: ‘SUCCESS’ либо ‘FAILED’
                                                                                        Результаты поиска
                                                                                          Ничего не найдено
                                                                                          Оглавление
                                                                                          Уведомления о событиях

                                                                                          Уведомления о событиях

                                                                                          Операции перевода формируются сервисом Moneta SBP/FPS в статусе Операция создана и для продолжения операции необходимо воспользоваться методом PaymentRequest MONETA.MerchantAPI, указав в поле payee номер операции с ведущим нулем.

                                                                                          Результат подготовки операции перевода будет передан на указанный маркетплейсом при регистрации callback url в виде POST запроса с JSON объектом содержащим параметры:

                                                                                          • operationId - номер операции с ведущим нулем, который необходимо указать в PaymentRequest в поле payee
                                                                                          • messageId - номер сообщения СБП, его необходимо указать в operationInfo в поле SECUREDFIELD:unsBo_79

                                                                                          Информация, подтверждающая валидность сообщения, будет замещена в заголовке HTTP запроса X-Digest.Сервис Moneta SBP/FPS размещает в этом заголовке подпись данных из тела запроса, созданную при помощи ApiSecret, предоставленного при регистрации маркетплейса с использованием алгоритма HMAC-SHA512.

                                                                                          Уведомление на callback url считается успешно доставленным в случае получения от маркетплейса HTTP ответа с кодом 200. В противном случае, сервис Moneta SBP/FPS будет пытаться повторить доставку уведомления до достижения таймаута, после которого проведение перевода будет невозможно.

                                                                                          Результаты поиска
                                                                                            Ничего не найдено
                                                                                            Оглавление
                                                                                            Пример запроса PaymentRequest

                                                                                            Пример запроса PaymentRequest

                                                                                            Запрос формируется согласно интерфейсу MONETA.MerchantAPI.

                                                                                            {
                                                                                                "Envelope": {
                                                                                                    "Header": {
                                                                                                        "Security": {
                                                                                                            "UsernameToken": {
                                                                                                                "Username": "USERNAME",
                                                                                                                "Password": "PASSWORD"
                                                                                                            }
                                                                                                        } 
                                                                                                    },
                                                                                                    "Body": {
                                                                                                        "PaymentRequest": {
                                                                                                            "payer": "номер ЭСП МОНЕТА.РУ",
                                                                                                            "payee": "0operationId",
                                                                                                            "amount": "10",
                                                                                                            "isPayerAmount": false,
                                                                                                            "paymentPassword": "010101010",
                                                                                                            "operationInfo": {
                                                                                                            "attribute": [
                                                                                                                {
                                                                                                                    "key": "SECUREDFIELD:unsBo_79",
                                                                                                                    "value": "1234123452345345645674567578"
                                                                                                                }
                                                                                                            ] }
                                                                                            
                                                                                                        }
                                                                                                    }
                                                                                                }
                                                                                            }
                                                                                            Результаты поиска
                                                                                              Ничего не найдено
                                                                                              Оглавление
                                                                                              Просмотр истории транзакций

                                                                                              Просмотр истории транзакций

                                                                                              Сервис Moneta SBP/FPS позволяет просмотреть историю транзакций. История отображается в убывающем по дате создания транзакции порядке и позволяет посмотреть детальную информацию по выбранной транзакции на отдельной странице. Данные в истории обновляются автоматически с определенным периодом. Для отображения истории необходимо:

                                                                                              • сформировать и подписать токен доступа;
                                                                                              • открыть URL “<BASE_URL>/wallet/wallets/transactions”, передав сформированный токен в качестве параметра.
                                                                                              // DEV окружение
                                                                                              <iframe
                                                                                                  src="https://fps-ui.dev.mnxsc.tech/wallet/wallets/transactions?frame=true&token={ONE_TIME_TOKEN}"
                                                                                                  style="
                                                                                                  width: 400px;
                                                                                                  height: 600px;
                                                                                                  border: 1px solid #CCC;
                                                                                                  border-radius: 10px">
                                                                                              </iframe>
                                                                                              
                                                                                              
                                                                                              // PROD окружение
                                                                                              <iframe
                                                                                                  src="https://fps-ui.prod.mnxsc.tech/wallet/wallets/transactions?frame=true&token={ONE_TIME_TOKEN}"
                                                                                                  style="
                                                                                                  width: 400px;
                                                                                                  height: 600px;
                                                                                                  border: 1px solid #CCC;
                                                                                                  border-radius: 10px">
                                                                                              </iframe>