• Модуль: salescenter
  • Путь к файлу: ~/bitrix/modules/salescenter/lib/integration/salemanager.php
  • Класс: BitrixSalesCenterIntegrationSaleManager
  • Вызов: SaleManager::onSalePsServiceProcessRequestBeforePaid
static function onSalePsServiceProcessRequestBeforePaid(Event $event)
{
	$result = new EventResult(EventResult::SUCCESS, null, 'sale');

	try
	{
		/** @var Payment $payment */
		$payment = $event->getParameter('payment');
		$order = $payment->getOrder();

		$constructor = new AnalyticsLabelConstructor();

		AddEventToStatFile('salescenter', 'salescenterPayment', $payment->getId(), $constructor->getPaySystemTag($payment), 'pay_system');
		AddEventToStatFile('salescenter', 'salescenterPayment', $payment->getId(), $payment->getSum(), 'amount');
		AddEventToStatFile('salescenter', 'salescenterPayment', $payment->getId(), $payment->getField('CURRENCY'), 'currency');
		AddEventToStatFile('salescenter', 'salescenterPayment', $payment->getId(), $constructor->getContextLabel($order), 'context');

		if ($order instanceof CrmOrderOrder)
		{
			AddEventToStatFile('salescenter', 'salescenterPayment', $payment->getId(), $constructor->getChannelLabel($order), 'channel');
			AddEventToStatFile('salescenter', 'salescenterPayment', $payment->getId(), $constructor->getChannelNameLabel($order), 'channel_name');
		}
	}
	finally
	{
		return $result;
	}
}