Добавлена поддержка платежных табличек pos_links. Добавлены loan_declined, loan_declined_by_payer, loan_application_expired в причинах отмены платежа

Добавлено поле `metadata` в сохраненных методах оплаты
Увеличено максимальное значение числа цифр параметра `oktmo` в данных платежных поручений `PaymentOrder`
This commit is contained in:
Александра Д. Спиридонова
2026-08-12 16:21:33 +03:00
parent 2dbe18f268
commit 7a7f5cafa8
579 changed files with 12016 additions and 540 deletions
@@ -27,6 +27,7 @@
namespace YooKassa\Model\SavePaymentMethod;
use YooKassa\Common\AbstractObject;
use YooKassa\Model\Metadata;
use YooKassa\Model\SavePaymentMethod\Confirmation\AbstractConfirmation;
use YooKassa\Model\SavePaymentMethod\Confirmation\ConfirmationFactory;
use YooKassa\Validator\Constraints as Assert;
@@ -48,6 +49,7 @@ use YooKassa\Validator\Constraints as Assert;
* @property SavePaymentMethodHolder $holder Данные магазина, для которого сохраняется способ оплаты.
* @property string $title Название способа оплаты.
* @property AbstractConfirmation $confirmation Выбранный сценарий подтверждения привязки. Присутствует, когда привязка ожидает подтверждения от пользователя.
* @property Metadata $metadata Любые дополнительные данные, которые нужны вам для работы (например, ваш внутренний идентификатор заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов, значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
*/
abstract class AbstractSavePaymentMethod extends AbstractObject implements SavePaymentMethodInterface
{
@@ -115,6 +117,15 @@ abstract class AbstractSavePaymentMethod extends AbstractObject implements SaveP
#[Assert\Type(AbstractConfirmation::class)]
protected ?AbstractConfirmation $_confirmation = null;
/**
* Любые дополнительные данные, которые нужны вам для работы (например, ваш внутренний идентификатор заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от ЮKassa.
*
* @var Metadata|null
*/
#[Assert\AllType('string')]
#[Assert\Type(Metadata::class)]
protected ?Metadata $_metadata = null;
/**
* Возвращает type.
*
@@ -278,5 +289,28 @@ abstract class AbstractSavePaymentMethod extends AbstractObject implements SaveP
$this->_confirmation = $this->validatePropertyValue('_confirmation', $confirmation);
return $this;
}
/**
* Возвращает metadata.
*
* @return Metadata|null
*/
public function getMetadata(): ?Metadata
{
return $this->_metadata;
}
/**
* Устанавливает metadata.
*
* @param Metadata|array|null $metadata Любые дополнительные данные, которые нужны вам для работы (например, ваш внутренний идентификатор заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от ЮKassa.
*
* @return self
*/
public function setMetadata(mixed $metadata = null): self
{
$this->_metadata = $this->validatePropertyValue('_metadata', $metadata);
return $this;
}
}