DISCOUNT_ID — ID скидки (правило корзины)
$days — кол-во дней, сколько будет действовать скидка
$coupon — вернется код купона
$activeFrom = new \Bitrix\Main\Type\DateTime();
$activeTo = new \Bitrix\Main\Type\DateTime();
$activeTo = $activeTo->add($days.' day');
$coupon = \Bitrix\Sale\Internals\DiscountCouponTable::generateCoupon(true);
$addDb = \Bitrix\Sale\Internals\DiscountCouponTable::add(array(
'DISCOUNT_ID' => 3,
'COUPON' => $coupon,
'TYPE' => \Bitrix\Sale\Internals\DiscountCouponTable::TYPE_ONE_ORDER,
'ACTIVE_FROM' => $activeFrom,
'ACTIVE_TO' => $activeTo,
'MAX_USE' => 1,
// 'USER_ID' => 0,
'DESCRIPTION' => ''
));
if ($addDb->isSuccess()){
echo $coupon;
} else {
echo $addDb->getErrorMessages();
}
