• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/controller/action/entity/initiatepayaction.php
  • Класс: BitrixSaleControllerActionEntityInitiatePayAction
  • Вызов: InitiatePayAction::updatePaymentMetadata
private function updatePaymentMetadata(): void
{
	SaleDiscountCouponsManagerBase::freezeCouponStorage();

	$result = $this->payment->setFields([
		'PAY_SYSTEM_ID' => $this->service->getField('ID'),
		'PAY_SYSTEM_NAME' => $this->service->getField('NAME')
	]);

	$result = $result->isSuccess() ? $this->order->save() : $result;

	SaleDiscountCouponsManagerBase::unFreezeCouponStorage();

	if (!$result->isSuccess())
	{
		throw new InitiatePayException(
			'cannot update payment',
			SaleControllerErrorEnumeration::INITIATE_PAY_ACTION_UNABLE_TO_UPDATE_PAYMENT
		);
	}
}