• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/helpers/controller/action/entity/orderpaymentresolver.php
  • Класс: BitrixSaleHelpersControllerActionEntityOrderPaymentResolver
  • Вызов: OrderPaymentResolver::findPaymentEqualOrderSum
static function findPaymentEqualOrderSum(int $orderId): ?Payment
{
	$order = Order::load($orderId);
	if (!$order)
	{
		return null;
	}

	$paymentSum = $order->getPrice();

	$filter = [
		'ORDER_ID' => $order->getId(),
		'SUM' => $paymentSum,
	];

	$paymentRow = Payment::getList([
		'filter' => $filter,
		'select' => ['ORDER_ID', 'ID'],
		'limit' => 1
	]);
	if ($paymentData = $paymentRow->fetch())
	{
		$paymentId = (int)$paymentData['ID'];
		/** @var ?Payment $payment */
		$payment = $order->getPaymentCollection()->getItemById($paymentId);

		return $payment;
	}
	return null;
}