Убил кучу времени на поиск решения и общение с ТП, так что оставлю здесь, чтобы было...
[CODE]use Bitrix\Main;
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
'sale',
'OnSaleOrderBeforeSaved',
'onSaleOrderBeforeSaved'
);
function onSaleOrderBeforeSaved(Bitrix\Main\Event $event){
$order = $event->getParameter("ENTITY");
$paymentCollection = $order->getPaymentCollection();
$service = \Bitrix\Sale\PaySystem\Manager::getObjectById(1);// id пс
$newPayment = $paymentCollection->createItem($service);
// Устанавливаем сумму новой оплаты
$newPayment->setField('SUM', $order->getPrice()*0.85);
}[/CODE]
[CODE]use Bitrix\Main;
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
'sale',
'OnSaleOrderBeforeSaved',
'onSaleOrderBeforeSaved'
);
function onSaleOrderBeforeSaved(Bitrix\Main\Event $event){
$order = $event->getParameter("ENTITY");
$paymentCollection = $order->getPaymentCollection();
$service = \Bitrix\Sale\PaySystem\Manager::getObjectById(1);// id пс
$newPayment = $paymentCollection->createItem($service);
// Устанавливаем сумму новой оплаты
$newPayment->setField('SUM', $order->getPrice()*0.85);
}[/CODE]