103 lines
5.2 KiB
Markdown
103 lines
5.2 KiB
Markdown
## Работа с выплатами
|
||
|
||
Выплата — это сумма денег, которую вы переводите физическому лицу или самозанятому. С помощью API вы можете создать выплату и получить о ней актуальную информацию.
|
||
|
||
Выплаты используются в следующих платежных решениях ЮKassa:
|
||
|
||
* Выплаты — вы как компания переводите деньги физическим лицам и самозанятым (например, выплачиваете кэшбек пользователям).
|
||
* Безопасная сделка — ваша платформа в рамках созданной сделки переводит оплату от одного физического лица другому.
|
||
|
||
SDK позволяет проводить выплаты, а также получать информацию о них.
|
||
|
||
Объект выплаты `PayoutResponse` содержит всю информацию о выплате, актуальную на текущий момент времени. Он формируется при создании выплаты и приходит в ответ на любой запрос, связанный с выплатами.
|
||
|
||
Набор возвращаемых параметров зависит от статуса объекта (значение параметра status) и того, какие параметры вы передали в запросе на создание выплаты.
|
||
|
||
* [Запрос на выплату продавцу](#Запрос-на-выплату-продавцу)
|
||
* [Получить информацию о выплате](#Получить-информацию-о-выплате)
|
||
|
||
---
|
||
|
||
### Запрос на выплату продавцу <a name="Запрос-на-выплату-продавцу"></a>
|
||
|
||
[Выплата продавцу в документации](https://yookassa.ru/developers/api?lang=php#create_payout)
|
||
|
||
Запрос позволяет перечислить продавцу оплату за выполненную услугу или проданный товар в рамках Безопасной сделки.
|
||
Выплату можно сделать на банковскую карту или на кошелек ЮMoney.
|
||
|
||
В ответ на запрос придет объект выплаты - `PayoutResponse` в актуальном статусе.
|
||
|
||
```php
|
||
require_once 'vendor/autoload.php';
|
||
|
||
$client = new \YooKassa\Client();
|
||
$client->setAuth('xxxxxx', 'test_XXXXXXX');
|
||
|
||
$request = array(
|
||
'amount' => array(
|
||
'value' => '80.00',
|
||
'currency' => 'RUB',
|
||
),
|
||
'payout_destination_data' => array(
|
||
'type' => PaymentMethodType::SBP,
|
||
'bank_id' => '100000000111',
|
||
'phone' => '79001002030',
|
||
),
|
||
'description' => 'Выплата по заказу №37',
|
||
'metadata' => array(
|
||
'order_id' => '37',
|
||
),
|
||
'payment_method_id' => '2a217a2d-000f-5000-9000-1bd6f124af9c',
|
||
'self_employed' => array('id' => 'se-285c0ab7-0003-5000-9000-0e1166498fda'),
|
||
'receipt_data' => array(
|
||
'service_name' => 'Оказание услуг по доставке товара',
|
||
'amount' => array(
|
||
'value' => '10.00',
|
||
'currency' => 'RUB',
|
||
),
|
||
),
|
||
'personal_data' => array(
|
||
array(
|
||
'id' => 'pd-285c0ab7-0003-5000-9000-0e1166498fda',
|
||
),
|
||
),
|
||
);
|
||
$idempotenceKey = uniqid('', true);
|
||
try {
|
||
$result = $client->createPayout($request, $idempotenceKey);
|
||
} catch (\Exception $e) {
|
||
$result = $e;
|
||
}
|
||
|
||
var_dump($result);
|
||
```
|
||
[Подробнее о проведении выплат](https://yookassa.ru/developers/solutions-for-platforms/safe-deal/integration/payouts)
|
||
|
||
---
|
||
|
||
### Получить информацию о выплате <a name="Получить-информацию-о-выплате"></a>
|
||
|
||
[Информация о выплате в документации](https://yookassa.ru/developers/api?lang=php#get_payout)
|
||
|
||
Запрос позволяет получить информацию о текущем состоянии выплаты по ее уникальному идентификатору.
|
||
|
||
Данные для [аутентификации](https://yookassa.ru/developers/using-api/interaction-format#auth) запросов зависят от того, какое платежное решение вы используете — [обычные выплаты](https://yookassa.ru/developers/payouts/overview) или выплаты в рамках [Безопасной сделки](https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics).
|
||
|
||
В ответ на запрос придет объект выплаты - `PayoutResponse` в актуальном статусе.
|
||
|
||
```php
|
||
require_once 'vendor/autoload.php';
|
||
|
||
$client = new \YooKassa\Client();
|
||
$client->setAuth('xxxxxx', 'test_XXXXXXX');
|
||
|
||
$payoutId = 'po-285c0ab7-0003-5000-9000-0e1166498fda';
|
||
try {
|
||
$response = $client->getPayoutInfo($payoutId);
|
||
} catch (\Exception $e) {
|
||
$response = $e;
|
||
}
|
||
|
||
var_dump($response);
|
||
```
|