EditProfileRequest базового профиля

Рекомендуем маркетплейсу приступать к заполнению созданного личного кабинета (юнита) клиента после получения 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) для передачи информации.

Last updated