EditProfileRequest подпрофиля руководителя

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

Запрос:
{  
   "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) для передачи информации.

Last updated