80 KiB
YooKassa API SDK
Class: \YooKassa\Client
Namespace: \YooKassa
Summary:
Класс клиента API
Examples
Создание клиента
require_once '../vendor/autoload.php';
$client = new \YooKassa\Client();
// по логин/паролю
$client->setAuth('xxxxxx', 'test_XXXXXXX');
// или по oauth токену
$client->setAuthToken('token_XXXXXXX');
Constants
| Visibility | Name | Flag | Summary |
|---|---|---|---|
| public | ME_PATH | Точка входа для запроса к API по магазину | |
| public | PAYMENTS_PATH | Точка входа для запросов к API по платежам | |
| public | REFUNDS_PATH | Точка входа для запросов к API по возвратам | |
| public | WEBHOOKS_PATH | Точка входа для запросов к API по вебхукам | |
| public | RECEIPTS_PATH | Точка входа для запросов к API по чекам | |
| public | IDEMPOTENCY_KEY_HEADER | Имя HTTP заголовка, используемого для передачи idempotence key | |
| public | DEFAULT_DELAY | Значение по умолчанию времени ожидания между запросами при отправке повторного запроса в случае получения ответа с HTTP статусом 202 | |
| public | DEFAULT_TRIES_COUNT | Значение по умолчанию количества попыток получения информации от API если пришёл ответ с HTTP статусом 202 | |
| public | DEFAULT_ATTEMPTS_COUNT | Значение по умолчанию количества попыток получения информации от API если пришёл ответ с HTTP статусом 202 | |
| public | SDK_VERSION | Текущая версия библиотеки |
Properties
| Visibility | Name | Flag | Summary |
|---|---|---|---|
| protected | $apiClient | CURL клиент | |
| protected | $attempts | Количество повторных запросов при ответе API статусом 202 | |
| protected | $config | Настройки для CURL клиента | |
| protected | $logger | Объект для логирования работы SDK | |
| protected | $login | shopId магазина | |
| protected | $password | Секретный ключ магазина | |
| protected | $timeout | Время через которое будут осуществляться повторные запросы |
Methods
| Visibility | Name | Flag | Summary |
|---|---|---|---|
| public | __construct() | Constructor | |
| public | addWebhook() | Создание Webhook | |
| public | cancelPayment() | Отменить незавершенную оплату заказа. | |
| public | capturePayment() | Подтверждение платежа | |
| public | createPayment() | Создание платежа. | |
| public | createReceipt() | Отправка чека в облачную кассу | |
| public | createRefund() | Проведение возврата платежа | |
| public | getApiClient() | Возвращает CURL клиента для работы с API | |
| public | getConfig() | Возвращает настройки клиента | |
| public | getPaymentInfo() | Получить информацию о платеже | |
| public | getPayments() | Получить список платежей магазина | |
| public | getReceiptInfo() | Получить информацию о чеке | |
| public | getReceipts() | Получить список чеков магазина | |
| public | getRefundInfo() | Получить информацию о возврате | |
| public | getRefunds() | Получить список возвратов платежей | |
| public | getWebhooks() | Список созданных Webhook | |
| public | me() | Информация о магазине | |
| public | removeWebhook() | Удаление Webhook | |
| public | setApiClient() | Устанавливает CURL клиента для работы с API | |
| public | setAuth() | Устанавливает авторизацию по логин/паролю | |
| public | setAuthToken() | Устанавливает авторизацию по Oauth-токену | |
| public | setConfig() | Устанавливает настройки клиента | |
| public | setLogger() | Устанавливает логгер приложения | |
| public | setMaxRequestAttempts() | Установка значения количества попыток повторных запросов при статусе 202 | |
| public | setRetryTimeout() | Установка значения задержки между повторными запросами | |
| protected | decodeData() | Декодирует JSON строку в массив данных | |
| protected | delay() | Задержка между повторными запросами | |
| protected | encodeData() | Кодирует массив данных в JSON строку | |
| protected | execute() | Выполнение запроса и обработка 202 статуса | |
| protected | handleError() | Выбрасывает исключение по коду ошибки |
Details
- File: lib/Client.php
- Package: YooKassa
- Class Hierarchy:
- \YooKassa\Client\BaseClient
- \YooKassa\Client
Tags
| Tag | Version | Description |
|---|---|---|
| since | 1.0.1 |
Constants
ME_PATH
Inherited from \YooKassa\Client\BaseClient
Точка входа для запроса к API по магазину
ME_PATH = '/me'
PAYMENTS_PATH
Inherited from \YooKassa\Client\BaseClient
Точка входа для запросов к API по платежам
PAYMENTS_PATH = '/payments'
REFUNDS_PATH
Inherited from \YooKassa\Client\BaseClient
Точка входа для запросов к API по возвратам
REFUNDS_PATH = '/refunds'
WEBHOOKS_PATH
Inherited from \YooKassa\Client\BaseClient
Точка входа для запросов к API по вебхукам
WEBHOOKS_PATH = '/webhooks'
RECEIPTS_PATH
Inherited from \YooKassa\Client\BaseClient
Точка входа для запросов к API по чекам
RECEIPTS_PATH = '/receipts'
IDEMPOTENCY_KEY_HEADER
Inherited from \YooKassa\Client\BaseClient
Имя HTTP заголовка, используемого для передачи idempotence key
IDEMPOTENCY_KEY_HEADER = 'Idempotence-Key'
DEFAULT_DELAY
Inherited from \YooKassa\Client\BaseClient
Значение по умолчанию времени ожидания между запросами при отправке повторного запроса в случае получения ответа с HTTP статусом 202
DEFAULT_DELAY = 1800
DEFAULT_TRIES_COUNT
Inherited from \YooKassa\Client\BaseClient
Значение по умолчанию количества попыток получения информации от API если пришёл ответ с HTTP статусом 202
DEFAULT_TRIES_COUNT = 3
DEFAULT_ATTEMPTS_COUNT
Inherited from \YooKassa\Client\BaseClient
Значение по умолчанию количества попыток получения информации от API если пришёл ответ с HTTP статусом 202
DEFAULT_ATTEMPTS_COUNT = 3
SDK_VERSION
Текущая версия библиотеки
SDK_VERSION = '2.1.5'
Properties
protected $apiClient : null|\YooKassa\Client\ApiClientInterface
Summary
CURL клиент
Type: ApiClientInterface
Details:
- Inherited From: \YooKassa\Client\BaseClient
protected $attempts : int
Summary
Количество повторных запросов при ответе API статусом 202
Description
Значение по умолчанию 3
Type: int
Details:
- Inherited From: \YooKassa\Client\BaseClient
protected $config : array
Summary
Настройки для CURL клиента
Type: array
Details:
- Inherited From: \YooKassa\Client\BaseClient
protected $logger : \Psr\Log\LoggerInterface|null
Summary
Объект для логирования работы SDK
Type: LoggerInterface|null
Details:
- Inherited From: \YooKassa\Client\BaseClient
protected $login : string|int
Summary
shopId магазина
Type: string|int
Details:
- Inherited From: \YooKassa\Client\BaseClient
protected $password : string
Summary
Секретный ключ магазина
Type: string
Details:
- Inherited From: \YooKassa\Client\BaseClient
protected $timeout : int
Summary
Время через которое будут осуществляться повторные запросы
Description
Значение по умолчанию - 1800 миллисекунд.
Type: int значение в миллисекундах Details:
- Inherited From: \YooKassa\Client\BaseClient
Methods
public __construct() : mixed
public __construct(\YooKassa\Client\ApiClientInterface|null $apiClient = null, \YooKassa\Helpers\Config\ConfigurationLoaderInterface|null $configLoader = null) : mixed
Summary
Constructor
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Client\ApiClientInterface OR null |
apiClient | |
\YooKassa\Helpers\Config\ConfigurationLoaderInterface OR null |
configLoader |
Returns: mixed -
public addWebhook() : \YooKassa\Model\Webhook\Webhook|null
public addWebhook(\YooKassa\Model\Webhook\Webhook|array $request, string|null $idempotencyKey = null) : \YooKassa\Model\Webhook\Webhook|null
Summary
Создание Webhook
Description
Запрос позволяет подписаться на уведомления о событии (например, на переход платежа в статус successed).
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Model\Webhook\Webhook OR array |
request | |
string OR null |
idempotencyKey | Ключ идемпотентности |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \Exception |
Returns: \YooKassa\Model\Webhook\Webhook|null -
Examples:
Создание Webhook:
// В данном примере мы устанавливаем вебхуки для succeeded и canceled уведомлений.
// А так же проверяем, не установлены ли уже вебхуки. И если установлены на неверный адрес, удаляем.
try {
$webHookUrl = 'https://merchant-site.ru/payment-notification';
$needWebHookList = array(
\YooKassa\Model\NotificationEventType::PAYMENT_SUCCEEDED,
\YooKassa\Model\NotificationEventType::PAYMENT_CANCELED
);
$currentWebHookList = $client->getWebhooks()->getItems();
foreach ($needWebHookList as $event) {
$hookIsSet = false;
foreach ($currentWebHookList as $webHook) {
if ($webHook->getEvent() !== $event) {
continue;
}
if ($webHook->getUrl() !== $webHookUrl) {
$client->removeWebhook($webHook->getId());
} else {
$hookIsSet = true;
}
break;
}
if (!$hookIsSet) {
$client->addWebhook(array('event' => $event, 'url' => $webHookUrl));
}
}
$response = 'SUCCESS';
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public cancelPayment() : \YooKassa\Request\Payments\Payment\CancelResponse|null
public cancelPayment(string $paymentId, string|null $idempotencyKey = null) : \YooKassa\Request\Payments\Payment\CancelResponse|null
Summary
Отменить незавершенную оплату заказа.
Description
Отменяет платеж, находящийся в статусе waiting_for_capture. Отмена платежа значит, что вы
не готовы выдать пользователю товар или оказать услугу. Как только вы отменяете платеж, мы начинаем
возвращать деньги на счет плательщика. Для платежей банковскими картами отмена происходит мгновенно.
Для остальных способов оплаты возврат может занимать до нескольких дней.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
string |
paymentId | Идентификатор платежа |
string OR null |
idempotencyKey | Ключ идемпотентности |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \Exception |
Returns: \YooKassa\Request\Payments\Payment\CancelResponse|null -
Examples:
Отменить незавершенную оплату заказа:
$paymentId = '24e89cb0-000f-5000-9000-1de77fa0d6df';
try {
$response = $client->cancelPayment($paymentId, uniqid('', true));
echo $response->getStatus();
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public capturePayment() : \YooKassa\Request\Payments\Payment\CreateCaptureResponse|null
public capturePayment(\YooKassa\Request\Payments\Payment\CreateCaptureRequestInterface|array $captureRequest, string $paymentId, string|null $idempotencyKey = null) : \YooKassa\Request\Payments\Payment\CreateCaptureResponse|null
Summary
Подтверждение платежа
Description
Подтверждает вашу готовность принять платеж. Платеж можно подтвердить, только если он находится
в статусе waiting_for_capture. Если платеж подтвержден успешно — значит, оплата прошла, и вы можете выдать
товар или оказать услугу пользователю. На следующий день после подтверждения платеж попадет в реестр,
и ЮKassa переведет деньги на ваш расчетный счет. Если вы не подтверждаете платеж до момента, указанного
в expire_at, по умолчанию он отменяется, а деньги возвращаются пользователю. При оплате банковской картой
у вас есть 7 дней на подтверждение платежа. Для остальных способов оплаты платеж необходимо подтвердить
в течение 6 часов.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Request\Payments\Payment\CreateCaptureRequestInterface OR array |
captureRequest | |
string |
paymentId | Идентификатор платежа |
string OR null |
idempotencyKey | Ключ идемпотентности |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \Exception |
Returns: \YooKassa\Request\Payments\Payment\CreateCaptureResponse|null -
Examples:
Подтверждение платежа:
$paymentId = '24e89cb0-000f-5000-9000-1de77fa0d6df';
try {
$response = $client->capturePayment(
array(
'amount' => array(
'value' => '1500.00',
'currency' => 'RUB',
),
'transfers' => array(
array(
'account_id' => '123',
'amount' => array(
'value' => '1000.00',
'currency' => 'RUB',
),
),
array(
'account_id' => '456',
'amount' => array(
'value' => '500.00',
'currency' => 'RUB',
),
),
),
),
$paymentId,
uniqid('', true)
);
echo $response->getStatus();
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public createPayment() : \YooKassa\Request\Payments\CreatePaymentResponse|null
public createPayment(\YooKassa\Request\Payments\CreatePaymentRequestInterface|array $payment, string|null $idempotenceKey = null) : \YooKassa\Request\Payments\CreatePaymentResponse|null
Summary
Создание платежа.
Description
Чтобы принять оплату, необходимо создать объект платежа — Payment. Он содержит всю необходимую информацию
для проведения оплаты (сумму, валюту и статус). У платежа линейный жизненный цикл, он последовательно
переходит из статуса в статус.
Необходимо указать один из параметров:
- payment_token — оплата по одноразовому PaymentToken, сформированному виджетом YooKassa JS;
- payment_method_id — оплата по сохраненным платежным данным;
- payment_method_data — оплата по новым платежным данным.
Если не указан ни один параметр и confirmation.type = redirect, то в качестве confirmation_url
возвращается ссылка, по которой пользователь сможет самостоятельно выбрать подходящий способ оплаты.
Дополнительные параметры:
- confirmation — передается, если необходимо уточнить способ подтверждения платежа;
- recipient — указывается при наличии нескольких товаров;
- metadata — дополнительные данные (передаются магазином).
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Request\Payments\CreatePaymentRequestInterface OR array |
payment | |
string OR null |
idempotenceKey | Ключ идемпотентности |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
Returns: \YooKassa\Request\Payments\CreatePaymentResponse|null -
Examples:
Запрос на создание платежа:
try {
$idempotenceKey = uniqid('', true);
$response = $client->createPayment(
array(
'amount' => array(
'value' => '1.00',
'currency' => 'RUB',
),
'confirmation' => array(
'type' => 'redirect',
'return_url' => 'https://merchant-site.ru/payment-notification',
),
'description' => 'Оплата заказа на сумму 1 руб',
'metadata' => array(
'orderNumber' => 1001
),
'capture' => true,
),
$idempotenceKey
);
$confirmation = $response->getConfirmation();
$redirectUrl = $confirmation->getConfirmationUrl();
// Далее производим редирект на полученный URL
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public createReceipt() : \YooKassa\Request\Receipts\AbstractReceiptResponse|null
public createReceipt(\YooKassa\Request\Receipts\CreatePostReceiptRequestInterface|array $receipt, string|null $idempotenceKey = null) : \YooKassa\Request\Receipts\AbstractReceiptResponse|null
Summary
Отправка чека в облачную кассу
Description
Создает объект чека — Receipt. Возвращает успешно созданный чек по уникальному идентификатору
платежа или возврата.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Request\Receipts\CreatePostReceiptRequestInterface OR array |
receipt | |
string OR null |
idempotenceKey | Ключ идемпотентности |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \YooKassa\Common\Exceptions\AuthorizeException | Ошибка авторизации. Не установлен заголовок. |
| \Exception |
Returns: \YooKassa\Request\Receipts\AbstractReceiptResponse|null -
Examples:
Запрос на создание чека:
try {
$response = $client->createReceipt(
array(
'customer' => array(
'email' => 'johndoe@yoomoney.ru',
'phone' => '79000000000',
),
'type' => 'payment',
'payment_id' => '24e89cb0-000f-5000-9000-1de77fa0d6df',
'on_behalf_of' => '123',
'send' => true,
'items' => array(
array(
'description' => 'Платок Gucci',
'quantity' => '1.00',
'amount' => array(
'value' => '3000.00',
'currency' => 'RUB',
),
'vat_code' => 2,
'payment_mode' => 'full_payment',
'payment_subject' => 'commodity',
),
),
'tax_system_code' => 1,
),
uniqid('', true)
);
echo $response->getStatus();
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public createRefund() : \YooKassa\Request\Refunds\CreateRefundResponse|null
public createRefund(\YooKassa\Request\Refunds\CreateRefundRequestInterface|array $request, string|null $idempotencyKey = null) : \YooKassa\Request\Refunds\CreateRefundResponse|null
Summary
Проведение возврата платежа
Description
Создает объект возврата — Refund. Возвращает успешно завершенный платеж по уникальному идентификатору
этого платежа. Создание возврата возможно только для платежей в статусе succeeded. Комиссии за проведение
возврата нет. Комиссия, которую ЮKassa берёт за проведение исходного платежа, не возвращается.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Request\Refunds\CreateRefundRequestInterface OR array |
request | |
string OR null |
idempotencyKey | Ключ идемпотентности |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \Exception |
Returns: \YooKassa\Request\Refunds\CreateRefundResponse|null -
Examples:
Запрос на создание возврата:
try {
$response = $client->createRefund(
array(
'payment_id' => '24e89cb0-000f-5000-9000-1de77fa0d6df',
'amount' => array(
'value' => '1000.00',
'currency' => 'RUB',
),
'sources' => array(
array(
'account_id' => '456',
'amount' => array(
'value' => '1000.00',
'currency' => 'RUB',
)
),
),
),
uniqid('', true)
);
echo $response->getStatus();
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public getApiClient() : \YooKassa\Client\ApiClientInterface
public getApiClient() : \YooKassa\Client\ApiClientInterface
Summary
Возвращает CURL клиента для работы с API
Details:
- Inherited From: \YooKassa\Client\BaseClient
Returns: \YooKassa\Client\ApiClientInterface -
public getConfig() : array
public getConfig() : array
Summary
Возвращает настройки клиента
Details:
- Inherited From: \YooKassa\Client\BaseClient
Returns: array -
public getPaymentInfo() : \YooKassa\Model\PaymentInterface|null
public getPaymentInfo(string $paymentId) : \YooKassa\Model\PaymentInterface|null
Summary
Получить информацию о платеже
Description
Запрос позволяет получить информацию о текущем состоянии платежа по его уникальному идентификатору. Выдает объект платежа {@link} в актуальном статусе.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
string |
paymentId | Идентификатор платежа |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
Returns: \YooKassa\Model\PaymentInterface|null - Объект платежа
Examples:
Получить информацию о платеже:
try {
$response = $client->getPaymentInfo('24e89cb0-000f-5000-9000-1de77fa0d6df');
echo $response->getStatus();
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public getPayments() : \YooKassa\Request\Payments\PaymentsResponse|null
public getPayments(\YooKassa\Request\Payments\PaymentsRequestInterface|array|null $filter = null) : \YooKassa\Request\Payments\PaymentsResponse|null
Summary
Получить список платежей магазина
Description
Запрос позволяет получить список платежей, отфильтрованный по заданным критериям.
В ответ на запрос вернется список платежей с учетом переданных параметров. В списке будет информация о платежах,
созданных за последние 3 года. Список будет отсортирован по времени создания платежей в порядке убывания.
Если результатов больше, чем задано в limit, список будет выводиться фрагментами. В этом случае в ответе
на запрос вернется фрагмент списка и параметр next_cursor с указателем на следующий фрагмент.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Request\Payments\PaymentsRequestInterface OR array OR null |
filter |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \Exception |
Returns: \YooKassa\Request\Payments\PaymentsResponse|null -
Examples:
Получить список платежей магазина с фильтрацией:
$cursor = null;
$params = array(
'limit' => 30,
'status' => \YooKassa\Model\PaymentStatus::CANCELED,
'payment_method' => \YooKassa\Model\PaymentMethodType::BANK_CARD,
'created_at_gte' => '2021-01-01T00:00:00.000Z',
'created_at_lt' => '2021-03-30T23:59:59.999Z',
);
try {
do {
$params['cursor'] = $cursor;
$payments = $client->getPayments($params);
foreach ($payments->getItems() as $payment) {
echo $payment->getCreatedAt()->format('Y-m-d H:i:s') . ' - ' .
$payment->getStatus() . ' - ' .
$payment->getId() . "\n";
}
} while ($cursor = $payments->getNextCursor());
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public getReceiptInfo() : \YooKassa\Request\Receipts\ReceiptResponseInterface|null
public getReceiptInfo(string $receiptId) : \YooKassa\Request\Receipts\ReceiptResponseInterface|null
Summary
Получить информацию о чеке
Description
Запрос позволяет получить информацию о текущем состоянии чека по его уникальному идентификатору. Выдает объект чека {@link} в актуальном статусе.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
string |
receiptId | Идентификатор чека |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
Returns: \YooKassa\Request\Receipts\ReceiptResponseInterface|null -
Examples:
Получить информацию о чеке:
try {
$response = $client->getReceiptInfo('ra-27ed1660-0001-0050-7a5e-10f80e0f0f29');
echo $response->getStatus();
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public getReceipts() : \YooKassa\Request\Receipts\ReceiptsResponse
public getReceipts(\YooKassa\Model\PaymentInterface|\YooKassa\Model\RefundInterface|array|null $filter = null) : \YooKassa\Request\Receipts\ReceiptsResponse
Summary
Получить список чеков магазина
Description
Запрос позволяет получить список чеков, отфильтрованный по заданным критериям.
Можно запросить чеки по конкретному платежу, чеки по конкретному возврату или все чеки магазина.
В ответ на запрос вернется список чеков с учетом переданных параметров. В списке будет информация о чеках,
созданных за последние 3 года. Список будет отсортирован по времени создания чеков в порядке убывания.
Если результатов больше, чем задано в limit, список будет выводиться фрагментами.
В этом случае в ответе на запрос вернется фрагмент списка и параметр next_cursor с указателем на следующий фрагмент.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Model\PaymentInterface OR \YooKassa\Model\RefundInterface OR array OR null |
filter |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \Exception |
Returns: \YooKassa\Request\Receipts\ReceiptsResponse -
Examples:
Получить список чеков магазина с фильтрацией:
$cursor = null;
$params = array(
'limit' => 30,
'status' => \YooKassa\Model\ReceiptRegistrationStatus::SUCCEEDED,
'payment_id' => '1da5c87d-0984-50e8-a7f3-8de646dd9ec9',
'created_at_gte' => '2021-01-01T00:00:00.000Z',
'created_at_lt' => '2021-03-30T23:59:59.999Z',
);
try {
do {
$params['cursor'] = $cursor;
$receipts = $client->getReceipts($params);
foreach ($receipts->getItems() as $receipt) {
echo $receipt->getStatus() . ' - ' . $receipt->getId() . "\n";
}
} while ($cursor = $receipts->getNextCursor());
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public getRefundInfo() : \YooKassa\Request\Refunds\RefundResponse|null
public getRefundInfo(string $refundId) : \YooKassa\Request\Refunds\RefundResponse|null
Summary
Получить информацию о возврате
Description
Запрос позволяет получить информацию о текущем состоянии возврата по его уникальному идентификатору. В ответ на запрос придет объект возврата {@link} в актуальном статусе.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
string |
refundId | Идентификатор возврата |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \Exception |
Returns: \YooKassa\Request\Refunds\RefundResponse|null -
Examples:
Получить информацию о возврате:
try {
$response = $client->getRefundInfo('216749f7-0016-50be-b000-078d43a63ae4');
echo $response->getStatus();
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public getRefunds() : \YooKassa\Request\Refunds\RefundsResponse|null
public getRefunds(\YooKassa\Request\Refunds\RefundsRequestInterface|array|null $filter = null) : \YooKassa\Request\Refunds\RefundsResponse|null
Summary
Получить список возвратов платежей
Description
Запрос позволяет получить список возвратов, отфильтрованный по заданным критериям.
В ответ на запрос вернется список возвратов с учетом переданных параметров. В списке будет информация о возвратах,
созданных за последние 3 года. Список будет отсортирован по времени создания возвратов в порядке убывания.
Если результатов больше, чем задано в limit, список будет выводиться фрагментами. В этом случае в ответе
на запрос вернется фрагмент списка и параметр next_cursor с указателем на следующий фрагмент.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Request\Refunds\RefundsRequestInterface OR array OR null |
filter |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \Exception |
Returns: \YooKassa\Request\Refunds\RefundsResponse|null -
Examples:
Получить список возвратов платежей магазина с фильтрацией:
$cursor = null;
$params = array(
'limit' => 30,
'status' => \YooKassa\Model\RefundStatus::SUCCEEDED,
'payment_id' => '1da5c87d-0984-50e8-a7f3-8de646dd9ec9',
'created_at_gte' => '2021-01-01T00:00:00.000Z',
'created_at_lt' => '2021-03-30T23:59:59.999Z',
);
try {
do {
$params['cursor'] = $cursor;
$refunds = $client->getRefunds($params);
foreach ($refunds->getItems() as $refund) {
echo $refund->getCreatedAt()->format('Y-m-d H:i:s') . ' - ' .
$refund->getStatus() . ' - ' .
$refund->getId() . "\n";
}
} while ($cursor = $refunds->getNextCursor());
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public getWebhooks() : \YooKassa\Request\Webhook\WebhookListResponse|null
public getWebhooks() : \YooKassa\Request\Webhook\WebhookListResponse|null
Summary
Список созданных Webhook
Description
Запрос позволяет узнать, какие webhook есть для переданного OAuth-токена.
Details:
- Inherited From: \YooKassa\Client
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \YooKassa\Common\Exceptions\AuthorizeException | Ошибка авторизации. Не установлен заголовок. |
Returns: \YooKassa\Request\Webhook\WebhookListResponse|null -
Examples:
Список созданных Webhook:
// В данном примере мы устанавливаем вебхуки для succeeded и canceled уведомлений.
// А так же проверяем, не установлены ли уже вебхуки. И если установлены на неверный адрес, удаляем.
try {
$webHookUrl = 'https://merchant-site.ru/payment-notification';
$needWebHookList = array(
\YooKassa\Model\NotificationEventType::PAYMENT_SUCCEEDED,
\YooKassa\Model\NotificationEventType::PAYMENT_CANCELED
);
$currentWebHookList = $client->getWebhooks()->getItems();
foreach ($needWebHookList as $event) {
$hookIsSet = false;
foreach ($currentWebHookList as $webHook) {
if ($webHook->getEvent() !== $event) {
continue;
}
if ($webHook->getUrl() !== $webHookUrl) {
$client->removeWebhook($webHook->getId());
} else {
$hookIsSet = true;
}
break;
}
if (!$hookIsSet) {
$client->addWebhook(array('event' => $event, 'url' => $webHookUrl));
}
}
$response = 'SUCCESS';
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public me() : array|null
public me() : array|null
Summary
Информация о магазине
Description
Запрос позволяет получить информацию о магазине для переданного OAuth-токена.
Details:
- Inherited From: \YooKassa\Client
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \YooKassa\Common\Exceptions\AuthorizeException | Ошибка авторизации. Не установлен заголовок. |
Returns: array|null - Массив с информацией о магазине
Examples:
Информация о магазине:
try {
$response = $client->me();
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public removeWebhook() : \YooKassa\Model\Webhook\Webhook|null
public removeWebhook(string $webhookId, string|null $idempotencyKey = null) : \YooKassa\Model\Webhook\Webhook|null
Summary
Удаление Webhook
Description
Запрос позволяет отписаться от уведомлений о событии для переданного OAuth-токена. Чтобы удалить webhook, вам нужно передать в запросе его идентификатор.
Details:
- Inherited From: \YooKassa\Client
Parameters:
| Type | Name | Description |
|---|---|---|
string |
webhookId | Идентификатор Webhook |
string OR null |
idempotencyKey | Ключ идемпотентности |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | Неожиданный код ошибки. |
| \YooKassa\Common\Exceptions\BadApiRequestException | Неправильный запрос. Чаще всего этот статус выдается из-за нарушения правил взаимодействия с API. |
| \YooKassa\Common\Exceptions\ForbiddenException | Секретный ключ или OAuth-токен верный, но не хватает прав для совершения операции. |
| \YooKassa\Common\Exceptions\InternalServerError | Технические неполадки на стороне ЮKassa. Результат обработки запроса неизвестен. Повторите запрос позднее с тем же ключом идемпотентности. |
| \YooKassa\Common\Exceptions\NotFoundException | Ресурс не найден. |
| \YooKassa\Common\Exceptions\ResponseProcessingException | Запрос был принят на обработку, но она не завершена. |
| \YooKassa\Common\Exceptions\TooManyRequestsException | Превышен лимит запросов в единицу времени. Попробуйте снизить интенсивность запросов. |
| \YooKassa\Common\Exceptions\UnauthorizedException | Неверное имя пользователя или пароль или невалидный OAuth-токен при аутентификации. |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException | Требуемое PHP расширение не установлено. |
| \Exception |
Returns: \YooKassa\Model\Webhook\Webhook|null -
Examples:
Удаление Webhook:
// В данном примере мы устанавливаем вебхуки для succeeded и canceled уведомлений.
// А так же проверяем, не установлены ли уже вебхуки. И если установлены на неверный адрес, удаляем.
try {
$webHookUrl = 'https://merchant-site.ru/payment-notification';
$needWebHookList = array(
\YooKassa\Model\NotificationEventType::PAYMENT_SUCCEEDED,
\YooKassa\Model\NotificationEventType::PAYMENT_CANCELED
);
$currentWebHookList = $client->getWebhooks()->getItems();
foreach ($needWebHookList as $event) {
$hookIsSet = false;
foreach ($currentWebHookList as $webHook) {
if ($webHook->getEvent() !== $event) {
continue;
}
if ($webHook->getUrl() !== $webHookUrl) {
$client->removeWebhook($webHook->getId());
} else {
$hookIsSet = true;
}
break;
}
if (!$hookIsSet) {
$client->addWebhook(array('event' => $event, 'url' => $webHookUrl));
}
}
$response = 'SUCCESS';
} catch (\Exception $e) {
$response = $e;
}
var_dump($response);
public setApiClient() : $this
public setApiClient(\YooKassa\Client\ApiClientInterface $apiClient) : $this
Summary
Устанавливает CURL клиента для работы с API
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Client\ApiClientInterface |
apiClient |
Returns: $this -
public setAuth() : $this
public setAuth(string $login, string $password) : $this
Summary
Устанавливает авторизацию по логин/паролю
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
string |
login | |
string |
password |
Returns: $this -
Examples:
Пример авторизации:
$client->setAuth('xxxxxx', 'test_XXXXXXX');
public setAuthToken() : $this
public setAuthToken(string $token) : $this
Summary
Устанавливает авторизацию по Oauth-токену
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
string |
token |
Returns: $this -
Examples:
Пример авторизации:
$client->setAuthToken('token_XXXXXXX');
public setConfig() : mixed
public setConfig(array $config) : mixed
Summary
Устанавливает настройки клиента
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
array |
config |
Returns: mixed -
public setLogger() : mixed
public setLogger(null|callable|object|\Psr\Log\LoggerInterface $value) : mixed
Summary
Устанавливает логгер приложения
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
null OR callable OR object OR \Psr\Log\LoggerInterface |
value | Инстанс логгера |
Returns: mixed -
public setMaxRequestAttempts() : $this
public setMaxRequestAttempts(int $attempts) : $this
Summary
Установка значения количества попыток повторных запросов при статусе 202
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
int |
attempts |
Returns: $this -
public setRetryTimeout() : $this
public setRetryTimeout(int $timeout) : $this
Summary
Установка значения задержки между повторными запросами
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
int |
timeout |
Returns: $this -
protected decodeData() : array
protected decodeData(\YooKassa\Common\ResponseObject $response) : array
Summary
Декодирует JSON строку в массив данных
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Common\ResponseObject |
response |
Returns: array -
protected delay() : mixed
protected delay(\YooKassa\Common\ResponseObject $response) : mixed
Summary
Задержка между повторными запросами
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Common\ResponseObject |
response |
Returns: mixed -
protected encodeData() : string
protected encodeData(array $serializedData) : string
Summary
Кодирует массив данных в JSON строку
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
array |
serializedData |
Throws:
| Type | Description |
|---|---|
| \Exception |
Returns: string -
protected execute() : mixed|\YooKassa\Common\ResponseObject
protected execute(string $path, string $method, array $queryParams, null $httpBody = null, array $headers = array()) : mixed|\YooKassa\Common\ResponseObject
Summary
Выполнение запроса и обработка 202 статуса
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
string |
path | |
string |
method | |
array |
queryParams | |
null |
httpBody | |
array |
headers |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | |
| \YooKassa\Common\Exceptions\AuthorizeException | |
| \YooKassa\Common\Exceptions\ApiConnectionException | |
| \YooKassa\Common\Exceptions\ExtensionNotFoundException |
Returns: mixed|\YooKassa\Common\ResponseObject -
protected handleError() : mixed
protected handleError(\YooKassa\Common\ResponseObject $response) : mixed
Summary
Выбрасывает исключение по коду ошибки
Details:
- Inherited From: \YooKassa\Client\BaseClient
Parameters:
| Type | Name | Description |
|---|---|---|
\YooKassa\Common\ResponseObject |
response |
Throws:
| Type | Description |
|---|---|
| \YooKassa\Common\Exceptions\ApiException | |
| \YooKassa\Common\Exceptions\BadApiRequestException | |
| \YooKassa\Common\Exceptions\ForbiddenException | |
| \YooKassa\Common\Exceptions\InternalServerError | |
| \YooKassa\Common\Exceptions\NotFoundException | |
| \YooKassa\Common\Exceptions\ResponseProcessingException | |
| \YooKassa\Common\Exceptions\TooManyRequestsException | |
| \YooKassa\Common\Exceptions\UnauthorizedException |
Returns: mixed -
Top Namespaces
Reports
This document was automatically generated from source code comments on 2021-09-16 using phpDocumentor
© 2021 YooMoney