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(); }