Задать вопрос
@iiiajlyn
(づ ◕‿◕ )づ

Как убрать платежную систему при оформлении заказа в 1с-Битрикс?

function checkStockBeforePayment(&$arResult) {
	$paymentAvailability = true;
	if ($paymentAvailability) {
		$excludedPaySystemId = 13; // ID способа оплаты, который нужно запретить
		// Фильтруем массив доступных платежных систем
		foreach ($arResult['PAY_SYSTEM'] as $key => $paySystem) {
			if ($paySystem['ID'] == $excludedPaySystemId) {
				unset($arResult['PAY_SYSTEM'][$key]);
			}
		}
	}
}

AddEventHandler("sale", 'OnSaleComponentOrderOneStepPaySystem', 'checkStockBeforePayment');


Если делать так то он удаляет из массива платежную систему но при оформлении заказа она весе равно есть =((

В админ панели нет нужных свойств ограничения.
Как правильно реализовать данный функционал?
  • Вопрос задан
  • 106 просмотров
Подписаться 1 Средний 4 комментария
Решения вопроса 1
Аргументы в обработчик должны приниматься по ссылке, а не по значению, только так массивы можно изменить не только в контексте этой функции.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
установите на нее ограничение
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы