Управление денежными средствами на расчетных счетах клиентов
Перевод денежных средств клиентов в Федеральное Казначейство
Powered By GitBook
8. Управление размером комиссии маркетплейса
Маркетплейс может управлять размером комиссии, взимаемым с продавца в зависимости от категории товара или оборотов продавца.
Максимальный размер вознаграждения маркетплейса будет зафиксирован в договоре об информационно-техническом взаимодействии.
Значение комиссии маркетплейс передает в поле SOURCETARIFFMULTIPLIER в процентах в запросе на перевод с транзитного счета маркетплейса на расширенный счет продавца в системе МОНЕТА.РУ.
1
Запрос:
2
{
3
"Envelope": {
4
"Header": {
5
"Security": {
6
"UsernameToken": {
7
"Username": "логин",
8
"Password": "пароль"
9
}
10
}
11
},
12
"Body": {
13
"PaymentRequest": {
14
"payer": "НОМЕР ТРАНЗИТНОГО СЧЕТА ПЛОЩАДКИ",
15
"payee": "НОМЕРА РАСШИРЕННОГО СЧЕТА ПРОДАВЦА",
16
"amount": "сумма",
17
"clientTransaction": "внешний идентификатор транзакции",
18
"operationInfo": {
19
"attribute": [
20
{
21
"key": "PARENTID",
22
"value": "12345678"
23
},
24
{
25
"key": "SOURCETARIFFMULTIPLIER ",
26
"value": "0.015"
27
}
28
]
29
}
30
}
31
}
32
}
33
}
34
где "value": "0.015" значение в процентах.
35
Ответ:
36
37
"Envelope":{
38
  "Body":{
39
    "PaymentResponse":{
40
      "transaction": "номер операции в системе МОНЕТУ.РУ",
41
      "dateTime": "2019-01-25T15:35:32.000+03:00",
42
      "status": "SUCCESS",
43
      "clientTransaction": "внешний идентификатор транзакции"
44
    }
45
  }
46
}
Copied!
1
<?php
2
3
$sdkAppFileName = __DIR__ . "/../moneta-sdk-lib/autoload.php";
4
include_once($sdkAppFileName);
5
6
try {
7
$monetaSdk = new \Moneta\MonetaSdk();
8
$monetaSdk->checkMonetaServiceConnection();
9
10
$request = new \Moneta\Types\PaymentRequest();
11
12
//номер счёта (в системе МОНЕТА.РУ) для списания средств
13
$request->payer = '';
14
15
//номер счёта (в системе МОНЕТА.РУ) для зачисления средств
16
$request->payee = '';
17
18
//сумма перевода
19
$request->amount = '20.00';
20
21
//номер транзакции в учётной системе магазина/маркетплейса.
22
$request->clientTransaction = 'my-order-id-20';
23
24
//платёжный пароль магазина/маркетплейса.
25
$request->paymentPassword = '*******************';
26
27
$operation = new \Moneta\Types\OperationInfo();
28
29
//в параметре указывается номер базовой операции - это операция платежа на транзитный счёт магазина/маркетплейса.
30
$attribute = new \Moneta\Types\KeyValueAttribute();
31
$attribute->key = 'PARENTID';
32
$attribute->value = '';
33
$operation->addAttribute($attribute);
34
35
//в параметре указывается значение комиссии, которую взимает магазин/маркетплейс с организации/продавца.
36
$attribute = new \Moneta\Types\KeyValueAttribute();
37
$attribute->key = 'SOURCETARIFFMULTIPLIER';
38
$attribute->value = '0.015'; //1,5%
39
$operation->addAttribute($attribute);
40
41
$request->operationInfo = $operation;
42
43
//запрос на перевод средств внутри системы МОНЕТА.РУ
44
//с транзитного счёта магазина/маркетплейса на расширенный счёт организации(продавца)
45
$result = $monetaSdk->monetaService->Payment($request);
46
47
if (!$result['id']) {
48
throw new Exception(print_r($result, true));
49
}
50
51
echo "Запрос обработан.";
52
53
foreach ($result['attribute'] as $key => $attribute) {
54
if ('statusid' === $attribute['key']) {
55
if ((new \Moneta\Types\OperationStatus())::SUCCEED !== $attribute['value']) {
56
echo " Операция НЕ проведена полностью.";
57
}
58
break;
59
}
60
}
61
62
} catch (Exception $e) {
63
echo "Ошибка:<br />";
64
echo "<pre>" . $e->getMessage() . "</pre>";
65
}
Copied!
Все запросы маркетплейс отправляет с помощью интерфейса MONETA.MerchantAPI
Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.
Last modified 29d ago
Copy link