Подписка на Woocommerce — добавить купон к существующей подписке

#wordpress #woocommerce #stripe-payments #subscription

#wordpress #woocommerce #stripe-платежи #подписка

Вопрос:

Я хочу добавить функцию, в которой я могу предложить пользователю код скидки, который влияет на их следующую сумму подписки.

Например:

  • Я даю клиенту код 1234, чтобы предоставить им скидку 10% на продление в следующие месяцы
  • Они вводят код в свой личный кабинет, а затем Stripe узнает, что в следующем месяце с них будет взиматься на 10% меньше обычной суммы.

Я видел здесь несколько вопросов, в которых задавалось что-то подобное, но ответов не было, поэтому подумал, что спрошу себя и посмотрю, может ли кто-нибудь предложить свою помощь.

Комментарии:

1. Вы читали руководство по купонам на подписку в Woocommerce? Похоже, это именно то, что вам нужно: документы. woocommerce.com/document/subscriptions/store-manager-guide /…

2. Привет, да, я прошел через это. По умолчанию вам разрешено добавлять купон только с начала подписки. Т.Е. повторяющаяся или первоначальная скидка. Я говорю о добавлении купона, когда у кого-то уже есть подписка, поэтому она действует как скидка на продление в следующие месяцы

3. @JamesDeadman вы нашли решение?

Ответ №1:

Это то, что сработало для меня. Купон имеет скидку типа% на повторяющийся продукт, и он применяется при следующем продлении (продлениях). Вы можете указать, на сколько продлений он применяется. Код для его применения:

 $subscription->apply_coupon('your-coupon-code');
  

И я использую это так в обработчике формы:

 if(isset($_POST['sid']) amp;amp; $_POST['sid'] != ""){
            $subscription = wcs_get_subscription( $_POST['sid'] );
            if($subscription->get_status()=="active"){
                $subscription->apply_coupon($_POST['coupon']); // returns true on success
            }
        }