Paid Member Subscriptions Discount Codes - плагин для WordPress, который расширяет функциональность Paid Member Subscriptions, позволяя создавать и управлять скидочными кодами. С помощью этого плагина пользователи могут легко генерировать уникальные скидочные коды для проведения специальных акций для своих клиентов.

Версия плагина: 1.3.9
 
WordPress плагин Paid Member Subscriptions Discount Codes

Особенности плагина

Интегрируясь непрерывно с Paid Member Subscriptions, этот плагин позволяет владельцам веб-сайтов привлекать больше подписчиков и увеличивать свой доход. Предоставляя скидки с помощью пользовательских кодов, они могут поощрять потенциальных клиентов подписаться на премиум контент или планы подписки. Будь то предложение ограниченной акции или вознаграждение постоянным клиентам, этот плагин предоставляет гибкость в создании и управлении скидочными кодами.

Paid Member Subscriptions Discount Codes обеспечивает простой в использовании интерфейс с интуитивно понятными параметрами для создания скидочных кодов. С помощью нескольких простых кликов владельцы веб-сайтов могут указать процент или сумму скидки, установить срок действия кода, ограничить его использование и многое другое. Кроме того, они могут выбрать применение кодов к определенным уровням подписки или предлагать их для всех планов.

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

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

В заключение, плагин Paid Member Subscriptions Discount Codes является ценным инструментом для владельцев веб-сайтов на платформе WordPress, которые хотят проводить эффективные акции и увеличить прибыль своего подписочного бизнеса. С его простым в использовании интерфейсом, обширными функциями для управления скидочными кодами и безопроблемной интеграцией с Paid Member Subscriptions, этот плагин предлагает простое и эффективное решение для управления и продвижения планов подписки.

Спецификации:

Дата выхода: 11-10-2019
Дата обновления: 10-09-2020
Тип расширения: Платный
Лицензия: GPL
Тематика: Интернет-коммерция
Совместимость: W5.x
Включает в себя: Плагин
Языковые пакеты: Английский
Разработчик: CozmosLabs

Рейтинг:
4.5482625482625 1 1 1 1 1 (Оценок: 259)
4.5482625482625 259

Скачивание по подписке!

Вам необходимо авторизоваться на сайте и приобрести клубную подписку!

Поделись с друзьями!

 

Руководство по настройке Paid Member Subscriptions Discount Codes для подписок WordPress

Paid Member Subscriptions Discount Codes нужен не просто для раздачи купонов, а для управляемых промо-кампаний внутри сайта с платными подписками: скидка должна применяться к правильному тарифу, в правильный момент и только для нужной группы пользователей. В этом руководстве разберём, как подготовить сайт, создать код, проверить его на формах регистрации и в личном кабинете, связать скидку с апгрейдом, массово импортировать промокоды и диагностировать ситуации, когда код не срабатывает.

Обложка руководства по Paid Member Subscriptions Discount Codes для WordPress
Обложка показывает главную идею руководства: администратор настраивает промокод, пользователь применяет его к тарифу, а сайт фиксирует результат в подписках и платежах.

Материал рассчитан на владельца членского сайта, редактора, маркетолога или вебмастера, который уже использует Paid Member Subscriptions или только готовит подписочную модель. Здесь нет инструкций по покупке, активации лицензии или обходу ограничений. Фокус другой: как безопасно внедрить скидки в рабочую воронку, не сломать оплату, не выдать скидку не тем пользователям и проверить результат до публикации акции.

В тексте встречаются точные пункты интерфейса, поэтому они оформлены как Paid Member Subscriptions, Discount Codes, Add New, Save Discount, Payments и похожие элементы. Если в вашей сборке названия слегка отличаются, ориентируйтесь на смысл раздела и проверяйте официальную документацию к установленной версии.

Где скидочные коды находятся в логике членского сайта

Скидка в подписочном проекте отличается от обычного купона интернет-магазина. В магазине купон чаще всего уменьшает сумму в корзине. В членском сайте скидка влияет на доступ к тарифу, оплату первого периода, повторные списания, апгрейд, продление, повторную попытку оплаты и отчётность. Поэтому перед настройкой важно понять, какую задачу решает конкретный код: привлечь новых участников, вернуть пользователей с истекшей подпиской, подтолкнуть к апгрейду, выдать индивидуальную скидку партнёру или раздать одноразовые коды на мероприятии.

Paid Member Subscriptions Discount Codes работает внутри экосистемы Paid Member Subscriptions. Официальная документация подтверждает, что коды создаются в разделе Paid Member Subscriptions - Discount Codes, применяются к выбранным subscription plans и могут использоваться в регистрационной форме, форме аккаунта и форме списка подписок. Это означает, что скидка не живёт отдельно от тарифов: если план не создан, не активен или не выбран в настройках кода, пользователь не сможет применить промокод к нужной покупке.

Типовой путь выглядит так: администратор создаёт тарифы, настраивает платёжный шлюз, включает тестовый режим, создаёт discount code, ограничивает его планами и лимитами, затем проверяет поведение на публичной форме. Пользователь вводит код при регистрации, при повторной оплате, при покупке плана из списка подписок или при апгрейде в аккаунте. После оплаты администратор проверяет платежи и отчёт, где можно увидеть использование discount codes.

Главная проверка перед запуском акции - совпадает ли настройка кода с реальным местом, где пользователь будет покупать или менять подписку. Если промокод рассчитан на регистрацию, тестируйте регистрацию. Если он рассчитан на апгрейд, тестируйте путь через аккаунт, а не только новую регистрацию в чистом браузере.

Какие задачи лучше всего решаются через discount codes

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

  • Промокод для новых участников, если нужно снизить барьер входа, но не менять базовую цену тарифа.
  • Код для ограниченной группы тарифов, если скидка должна работать только на годовой план, премиальный доступ или отдельную линейку подписок.
  • Код для апгрейда, если вместе с Advanced Subscription Toolkit нужно поощрить переход на старший план.
  • Код с лимитом использований, если кампания распространяется через партнёра, вебинар, закрытый список или ручную поддержку.
  • Коды массового импорта, если нужно выдать много уникальных значений вместо одного общего промокода.

Плохой сценарий - использовать один бессрочный код без лимита и без привязки к планам. Такой код быстро теряет управляемость: его сложно остановить без ручной проверки, трудно отделить новых покупателей от продлений, а в отчётах будет меньше смысла, потому что одна акция смешает разные каналы.

Кому подойдёт этот инструмент, а кому лучше выбрать другой подход

Paid Member Subscriptions Discount Codes особенно уместен для сайтов, где основная продажа строится вокруг подписочных планов Paid Member Subscriptions. Это могут быть закрытые материалы, обучающие программы, клубы, консультационные пакеты, платные сообщества, каталоги для участников, закрытые разделы WooCommerce или комбинация платного доступа и публичного контента. Если подписка уже задаёт права доступа, промокод становится частью той же логики, а не отдельным маркетинговым слоем.

Инструмент подходит администраторам, которым нужна понятная настройка без отдельной системы купонов. В документации описаны тип, сумма, выбранные subscription plans, maximum uses, limit uses per user, start date, expiration date, status, recurring payments и new users only. Этого достаточно для большинства промо-кампаний: можно создать процентную или фиксированную скидку, ограничить её датами, отключить без удаления, задать лимит и решить, будет ли скидка применяться к будущим повторным платежам.

Инструмент может не подойти, если скидочная логика полностью живёт в WooCommerce checkout, а не в формах Paid Member Subscriptions. У Paid Member Subscriptions есть WooCommerce-интеграция и членские скидки для товаров, но это отдельный сценарий. Если сайт продаёт в основном товары, наборы, доставки и сложные корзины, а подписка только дополняет магазин, иногда удобнее строить купоны вокруг WooCommerce и использовать членские скидки по планам отдельно.

Ещё один случай - сложные CRM-кампании с уникальными персональными кодами, автоматической сегментацией, внешней аналитикой и многошаговыми письмами. Paid Member Subscriptions поддерживает массовый импорт кодов, но если нужно постоянно синхронизировать тысячи персональных купонов с внешней системой, сначала проверьте, хватает ли стандартного импорта и отчётов. Не стоит обещать себе автоматизацию, которой нет в подтверждённой документации.

Когда лучше не давать скидку через код

Скидочный код не всегда лучший инструмент. Если вы хотите дать постоянную меньшую цену всем участникам определённой группы, лучше рассмотреть отдельный subscription plan или членскую скидку в WooCommerce-интеграции. Если нужно временно открыть доступ без платежа, иногда проще создать бесплатный план с ограничением по правилам доступа. Если акция зависит от ручной проверки заявки, код может утечь дальше, чем планировалось.

Практический ориентир: если скидка должна быть публичной, короткой и проверяемой - используйте discount code. Если цена должна стать постоянной частью модели доступа - создавайте отдельный план или настройку членской цены.

Что проверить перед установкой и первым запуском

Перед настройкой промокодов не начинайте с кнопки Add New. Скидка зависит от нескольких слоёв: установлена ли базовая версия Paid Member Subscriptions, активна ли нужная платная сборка или add-on, есть ли subscription plans, настроены ли платежи, созданы ли страницы с формами, работает ли тестовый платёжный режим и не мешают ли кеш, тема или сторонние плагины.

Официальная инструкция по установке подтверждает базовую последовательность: установить и активировать основной плагин, пройти первичную настройку, создать страницы с shortcodes, подключить нужные payment gateways, создать subscription plans и настроить ограничение контента. Для платных сборок после изменения модели пакетов важно понимать, что на сайте могут быть установлены основной плагин и платная версия Basic, Pro или Agency. В самом руководстве по Discount Codes расширенные параметры привязаны к Advanced Subscription Toolkit, который включён в платные планы.

Технический чек-лист перед скидками

  • На сайте есть хотя бы один активный subscription plan, потому что discount code применяется к выбранным планам.
  • Страницы с [pms-register], [pms-account] или [pms-subscriptions] опубликованы и доступны в нужном пользовательском сценарии.
  • В Settings - Payments выбран корректный режим: тестовый для проверки, рабочий для опубликованного сайта.
  • Валюта в настройках Paid Member Subscriptions согласована с валютой платёжного шлюза, особенно если используется PayPal.
  • Если нужен recurring discount, на сайте включён подходящий сценарий повторных платежей и соответствующий шлюз.
  • Если нужен апгрейд, в структуре тарифов есть иерархия или планы, между которыми пользователь может перейти.
  • Если используется кеш страниц, регистрация, аккаунт и страницы оплаты исключены из агрессивного кеширования.

Не все пункты относятся только к Discount Codes, но каждый из них влияет на то, будет ли скидка видна пользователю. Например, код может быть настроен правильно, но пользователь не увидит поле, если тестируется не та форма. Или код может быть активен, но не сработает на Silver plan, если администратор привязал его только к Gold plan.

Безопасная среда для проверки

Платёжные сценарии нельзя проверять только на глаз в админ-панели. Документация Paid Member Subscriptions рекомендует тестировать платежи до выхода сайта в рабочий режим. В тестовом режиме запросы для PayPal уходят в sandbox, а пользовательский путь можно пройти без реального списания. Для Stripe и других шлюзов используйте официальные тестовые данные соответствующего провайдера.

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

Установка и первичная проверка раздела Discount Codes

Для базового сценария скидок сначала убедитесь, что Paid Member Subscriptions установлен как обычный WordPress-плагин: через Plugins - Add New - Upload Plugin или через каталог WordPress, если используется бесплатная версия. После активации в админ-панели появляется раздел Paid Member Subscriptions, где находятся настройки, планы, платежи и страницы управления подписками.

Если у вас платная версия, официальная документация описывает модель с основным плагином и платным пакетом Basic, Pro или Agency. После установки нужной сборки add-ons активируются через страницу Add-ons. Для расширенных условий на скидочных кодах нужен Advanced Subscription Toolkit: он добавляет upgrade-only availability, expired-only availability, time-limited discount и исключение signup fee для discount code. Если этих блоков в интерфейсе нет, не предполагайте, что они скрыты. Сначала проверьте, активирован ли нужный add-on и доступен ли он в вашей лицензии.

Первичная проверка в админ-панели

  1. Откройте Paid Member Subscriptions - Discount Codes.
  2. Проверьте, есть ли кнопка Add New и список существующих кодов.
  3. Откройте создание нового кода и убедитесь, что видны основные поля: title, promotion code, type, amount, subscriptions, maximum uses, dates, status и дополнительные флажки.
  4. Не сохраняйте рабочий код сразу. Сначала создайте тестовый код с понятным названием, например для внутренней проверки.
  5. После сохранения вернитесь в список и проверьте, что код можно найти, отсортировать, отфильтровать и при необходимости деактивировать.

На этом этапе цель не в том, чтобы запустить маркетинговую кампанию. Нужно убедиться, что административный экран доступен, код сохраняется, план можно выбрать, а статус меняется без ошибок. Если раздел отсутствует или выдаёт ошибку, не переходите к публичной форме. Сначала проверьте установленные версии, активные add-ons, права текущего пользователя и журнал ошибок WordPress.

Минимальный тестовый код

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

Если вы тестируете повторные платежи, отдельно решите, включать ли настройку Apply discount to all future recurring payments. Это одна из самых чувствительных опций: скидка на первый платёж и скидка на все будущие платежи имеют разный финансовый смысл. Для кампании привлечения обычно безопаснее начинать со скидки на первый период, а постоянную скидку включать только при осознанной модели удержания.

Карта настроек скидочного кода

Раздел настройки - самая важная часть работы с Paid Member Subscriptions Discount Codes. Ошибка обычно происходит не потому, что администратор не нашёл кнопку сохранения, а потому что одно поле противоречит другому: сумма указана как фиксированная, но ожидается процент; план не выбран; дата окончания уже прошла; лимит на пользователя равен нулю, хотя ожидалось одно применение; скидка включена для повторных платежей без расчёта экономики подписки.

Карта полей настройки скидочного кода в Paid Member Subscriptions Discount Codes
Схема показывает, какие поля отвечают за значение скидки, применимость к тарифам, лимиты, период действия и повторные платежи.

Ниже - практическая расшифровка основных параметров. Названия могут немного отличаться в интерфейсе, но логика подтверждена официальной документацией Discount Codes.

Название и значение кода

Title нужен администратору. Делайте его понятным для отчётов: канал, цель, тариф, период кампании. Например, название может отражать не публичный код, а внутреннюю задачу: рассылка для старых клиентов, партнёрская акция, скидка на апгрейд, персональный код поддержки. Это поможет позже отличить один код от другого в списке и отчётах.

Promotion Code/Voucher - то, что вводит пользователь. Не используйте слишком похожие значения для разных кампаний. Избегайте пробелов, неоднозначных символов и длинных фраз. Хороший код легко прочитать в письме, продиктовать в поддержке и вставить в URL-параметр без ошибок.

Тип скидки и сумма

Type определяет, как считать скидку: процент или фиксированная сумма. Процент удобен для разных тарифов, потому что масштабируется вместе с ценой. Фиксированная сумма удобна для точного предложения, но её нужно проверять на каждом тарифе: слишком большая фиксированная скидка может обнулить недорогой план или сделать экономику кампании бессмысленной.

Поле Amount требует аккуратности. В документации для процента указано ограничение значений от 1 до 100. Если нужна бесплатная пробная логика, не всегда стоит делать скидку 100 процентов. Иногда правильнее использовать free trial в настройках subscription plan, потому что пробный период лучше отражает продуктовую механику, чем купон, который пользователь может ожидать использовать повторно.

Subscription(s) как главный фильтр применимости

Поле выбора subscription plans решает, к каким тарифам применяется код. Это не косметическая настройка. Если код создан для Gold plan, а пользователь выбирает Silver plan, он получит ошибку или код не даст ожидаемого результата. В статье документации есть пример wrong discount code именно для ситуации, когда скидка настроена на один план, а пользователь пытается использовать её для другого.

Не оставляйте применимость к тарифам неосознанной. Перед запуском акции выпишите, для каких планов код должен работать: новый пользователь, продление, апгрейд, годовой план, отдельная группа тарифов. Затем проверьте каждый вариант в форме, а не только один удачный путь.

Лимиты, даты и статус

Maximum Uses ограничивает общее число применений. Значение для неограниченного использования в документации обозначено как 0, но публичные кампании лучше запускать с лимитом, если вы не уверены в канале распространения. Limit Discount Uses per User управляет тем, сколько раз один пользователь может применить код. Для индивидуальных или партнёрских кампаний это поле особенно важно.

Start Date и Expiration Date задают период действия. Если дата окончания находится в прошлом, код не будет работать. Это простая, но частая причина жалоб от пользователей после копирования старой акции. Status позволяет держать код активным или неактивным без удаления. Для остановки акции безопаснее сначала деактивировать код, проверить новые регистрации, а уже потом решать, нужно ли удаление.

Recurring Payments и New Users Only

Опция для recurring payments отвечает за применение скидки ко всем будущим повторным платежам, а не только к первому платежу. Включайте её только тогда, когда кампания действительно обещает постоянную скидку. Для временной акции, где пользователь должен заплатить меньше только при входе, лучше оставить повторные списания без скидки и ясно объяснить условия в тексте предложения на сайте.

New Users Only нужен, если скидка предназначена только для новых пользователей, а не для продлений. Это помогает отделить привлечение от удержания. Но не полагайтесь на название поля как на единственный контроль. Проверьте сценарий под уже зарегистрированным пользователем и под новым аккаунтом, потому что пользовательский путь может отличаться между формой регистрации, аккаунтом и списком подписок.

Какие настройки проверять перед сохранением скидочного кода
Блок Что решить Как проверить
Тип и сумма Процент или фиксированная сумма, первый платёж или более широкая скидка. Сравнить итоговую цену на каждом выбранном плане.
Планы К каким subscription plans код должен применяться. Попробовать правильный и неправильный план в форме.
Лимиты Сколько раз код можно использовать всего и одним пользователем. Повторить покупку тестовым аккаунтом или проверить ограничение в закрытой среде.
Даты Когда код начинает и прекращает работать. Проверить, что период действия не противоречит дате запуска кампании.
Повторные платежи Скидка действует один раз или на будущие списания. Посмотреть настройки плана, шлюза и текст предложения на сайте.

Где пользователь вводит код и почему это важно для тестов

Документация описывает несколько мест, где discount code может быть использован: registration form, account form и list of subscription plans form. Это не одно и то же. Новая регистрация, повторная попытка оплаты, апгрейд и покупка плана уже зарегистрированным пользователем имеют разные состояния пользователя, разные кнопки и разные причины ошибки.

Схема применения промокода в формах регистрации и аккаунта Paid Member Subscriptions
Пользовательский путь помогает понять, где именно тестировать скидку: на регистрации, при повторной оплате, при апгрейде или в списке доступных подписок.

Регистрационная форма

Форма регистрации создаётся через [pms-register]. Документация по shortcodes подтверждает, что все активные subscription plans по умолчанию отображаются в этой форме, а параметр subscription_plans может показать только выбранные планы. Это важно для скидок: если страница регистрации показывает не тот план, администратор может подумать, что код сломан, хотя пользователь просто не видит подходящий тариф.

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

Account form и повторная оплата

Форма аккаунта создаётся через [pms-account]. Она позволяет участникам видеть, обновлять, продлевать, отменять и менять подписки. В документации указано, что при неуспешной первой оплате пользователь может повторить оплату из аккаунта. Discount code может использоваться в таком retry payment сценарии, поэтому проверка только новой регистрации не покрывает весь функционал.

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

Апгрейд и список подписок

Для апгрейда пользователь входит в аккаунт и выбирает upgrade. Если в настройках платежей включены downgrade или change, логика может расширяться на переходы между планами. В расширенных настройках Advanced Subscription Toolkit есть отдельная возможность сделать discount code доступным только для upgrades. Это полезно, когда скидка должна мотивировать рост тарифа, но не снижать цену входа для новых участников.

List of subscription plans form подходит зарегистрированным пользователям, которые ещё не купили план или хотят выбрать доступный тариф из списка. В таком сценарии важно проверить, что форма показывает нужные планы, код принимает нужный план и после покупки пользователь видит активную подписку.

URL-параметр discount_code для рассылок и посадочных страниц

Одна из самых полезных возможностей - автоматическое добавление discount code через URL-параметр. Документация описывает параметр discount_code: если страница регистрации находится по адресу вида https://website.com/register, ссылка с кодом может выглядеть как https://website.com/register?discount_code=summer. Пользователь открывает ссылку, а код подставляется автоматически.

Эта функция особенно удобна для писем, баннеров на сайте, партнёрских материалов и закрытых посадочных страниц. Она снижает количество ошибок при ручном вводе и помогает пользователю быстрее увидеть итоговую цену. Но у неё есть обязательные условия: subscription plan должен быть предварительно выбран в регистрационной форме, а тот же план должен быть выбран в настройках discount code.

Как подготовить ссылку без ошибок

  1. Создайте или выберите страницу с [pms-register].
  2. Ограничьте форму нужным планом через параметр shortcode или используйте ссылку с предварительным выбором плана, если это уместно для вашей структуры.
  3. Создайте discount code и привяжите его к тому же subscription plan.
  4. Соберите ссылку с параметром discount_code и точным значением промокода.
  5. Откройте ссылку в чистом браузере, проверьте выбранный план, поле кода и итоговую сумму.
  6. Проверьте неправильный план, чтобы убедиться, что скидка не применяется там, где не должна.

Если в ссылке уже есть параметр subscription_plan, второй параметр добавляется через &, а не через второй знак вопроса. Пример структуры:

https://example.com/register?subscription_plan=15&discount_code=summer

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

Расширенные условия для апгрейдов и истекших подписок

Advanced Subscription Toolkit расширяет Discount Codes дополнительными правилами. Согласно официальной странице add-on и документации, для discount codes доступны upgrade-only availability, expired-only availability, time-limited discount и исключение signup fee. Эти настройки нужны, когда простого процента или фиксированной суммы уже недостаточно.

Смысл этих правил - не давать скидку всем подряд. Можно сделать код только для апгрейда, только для пользователей с истекшей подпиской или только в ограниченное окно после активации подписки. Для платного сообщества это часто полезнее, чем общий промокод: вы управляете поведением конкретного сегмента, а не снижаете цену для каждого нового пользователя.

Upgrade-only availability

Эта настройка делает код доступным только для апгрейдов. Документация уточняет, что это работает с subscription plans в одной tier-структуре, где возможны upgrades и downgrades. Перед использованием убедитесь, что планы действительно связаны как уровни одной линейки. Если планы независимы, пользователь может не увидеть ожидаемый путь апгрейда.

Хороший сценарий: пользователь купил базовый курс, получил письмо с предложением перейти на расширенный доступ, открывает аккаунт, выбирает upgrade и применяет код. Плохой сценарий: тот же код опубликован на странице новой регистрации, где его пытаются использовать новые пользователи. Если условие upgrade-only включено, новая регистрация не должна получить такую скидку.

Expired-only availability

Expired-only availability делает скидку доступной пользователям с истекшей подпиской. Это сценарий возврата, а не привлечения. Его удобно использовать после периода неактивности: вместо того чтобы снижать цену всем новым участникам, вы предлагаете мягкий возврат тем, кто уже знаком с продуктом.

Проверьте этот сценарий тестовым аккаунтом со статусом expired. Не используйте активный аккаунт администратора и не делайте вывод по форме регистрации. Для диагностики важно видеть, что именно состояние подписки определяет доступность кода.

Time-limited discount и signup fee

Time-limited discount в документации описан как ограниченное окно использования после того, как пользователь приобрёл и активировал подписку. Это подходит для раннего апгрейда: например, участник только вошёл в базовый план и получает короткое предложение перейти на старший уровень. Такой код должен быть связан с понятной коммуникацией, иначе пользователь не поймёт, почему скидка доступна только в ограниченное время.

Опция exclude signup fee полезна, если у subscription plan есть отдельная вступительная плата. Тогда скидка уменьшает стоимость плана, но signup fee взимается полностью. Это важно для сайтов, где вступительная плата покрывает ручную проверку, стартовый пакет или организационные расходы. Если вы включаете это правило, прямо объясните в предложении, на что именно распространяется скидка.

Практический пример: акция для перехода с базового плана на расширенный

Разберём предметный сценарий. Сайт продаёт закрытую библиотеку материалов по подписке. Есть базовый план и расширенный план в одной линейке. Нужно предложить активным пользователям базового плана скидку на апгрейд, но не давать эту скидку новым пользователям и не применять её к продлению текущего базового тарифа.

Пример результата применения скидки на апгрейд в Paid Member Subscriptions Discount Codes
Визуальный пример показывает ожидаемый результат: код применяется только при переходе на старший план, а итоговая цена меняется в форме апгрейда.

Цель

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

Подготовка

  • Создайте два subscription plans в одной tier-структуре: базовый и расширенный.
  • Убедитесь, что пользователь может перейти с базового плана на расширенный через [pms-account].
  • Включите тестовый режим платежей на тестовом сайте или в закрытой проверочной среде.
  • Активируйте Advanced Subscription Toolkit, если требуется правило upgrade-only.
  • Подготовьте тестового пользователя с активным базовым планом.

Шаги настройки

  1. Откройте Paid Member Subscriptions - Discount Codes и нажмите Add New.
  2. Укажите внутреннее название кампании, например для апгрейда базового плана.
  3. Введите короткий promotion code, который не похож на другие активные коды.
  4. Выберите процентную скидку или фиксированную сумму, заранее рассчитанную для расширенного плана.
  5. В поле subscription plans выберите расширенный план, к которому применяется апгрейд.
  6. Задайте общий лимит и лимит на пользователя, чтобы один аккаунт не использовал предложение больше запланированного.
  7. Установите даты действия, если кампания ограничена по времени.
  8. Включите статус Active.
  9. В Advanced Options включите upgrade-only availability, если акция должна работать только при апгрейде.
  10. Нажмите Save Discount.

Проверка

Войдите под тестовым пользователем, откройте страницу аккаунта с [pms-account], выберите upgrade и введите промокод. Проверьте, что форма принимает код, цена меняется, а после тестовой оплаты подписка становится расширенной. Затем повторите негативную проверку: откройте страницу регистрации как новый пользователь и попробуйте применить тот же код. Если включено правило только для апгрейда, скидка не должна работать в сценарии новой покупки.

Мини-итог: успешная настройка подтверждается не только пересчётом цены, но и правильным статусом подписки после оплаты, записью в платежах и отсутствием применения кода в неподходящем сценарии.

Нюанс

Если апгрейд не отображается, проверьте структуру тарифов. В документации по shortcodes указано, что upgrade и downgrade появляются при наличии доступного перехода. Для некоторых переходов могут быть нужны дополнительные настройки платежей, например разрешение downgrade или change. Не меняйте сразу discount code, если проблема на самом деле в структуре subscription plans.

Массовый импорт кодов и контроль раздачи

Официальная документация Discount Codes описывает bulk import: на странице Discount Codes доступна кнопка Bulk Import Discount Codes, после чего можно загрузить CSV-файл с кодами. Там же доступен sample file, который можно скачать и отредактировать. Это полезно, когда один общий код небезопасен или плохо подходит для отчётности.

Схема массового импорта персональных discount codes в Paid Member Subscriptions
Массовый импорт полезен для партнёров, вебинаров и персональных предложений, когда каждый пользователь должен получить отдельный код.

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

Как подготовить CSV без хаоса

Не начинайте импорт с большого файла. Сначала скачайте sample file, создайте 3-5 тестовых строк и импортируйте их на тестовом сайте. Проверьте, что значения корректно распознаны, коды появляются в списке, ограничения сохраняются, а пользователь может применить один из кодов к нужному плану. Только после этого готовьте полный файл.

Внутренняя дисциплина важнее самого импорта. У каждого набора должен быть понятный префикс, канал, лимит и срок действия. Не смешивайте в одном CSV коды для разных тарифов и разных условий, если потом не сможете их легко проверить. Если кампания большая, разделите импорт по наборам: партнёрская рассылка, вебинар, личные компенсации, повторная активация старых участников.

Bulk delete и остановка кампании

Документация также описывает bulk delete: на странице Discount Codes можно выбрать коды, применить Delete Permanently и нажать Apply. Но удаление - не всегда первый шаг. Если кампания ещё анализируется, лучше деактивировать коды, выгрузить или зафиксировать результаты, проверить отчёты, а уже потом удалять лишнее. Удалённый код проще потерять из управленческой истории.

Для рабочих кампаний заведите правило: перед массовым удалением убедиться, что нет активной рассылки, партнёрской страницы или автоматического письма, где ссылка продолжает вести на старый код. Иначе пользователи будут приходить по старой ссылке и получать ошибку, хотя маркетинговый материал всё ещё доступен.

Проверка результата в платежах, отчётах и публичной части сайта

После создания discount code проверка не заканчивается на фразе "код применился". Нужно увидеть полный след: пользователь ввёл код, сумма изменилась, платёж прошёл или корректно перешёл в ожидающий статус, подписка получила правильный статус, а в отчётах можно понять использование кода. Paid Member Subscriptions имеет разделы Payments и Reports, а документация Reports отдельно указывает блок summary по discount codes и usage counts.

Проверка результата должна покрывать три поверхности: публичную форму, личный кабинет пользователя и админ-панель. В публичной части вы смотрите, понятен ли текст, виден ли ввод кода, меняется ли сумма. В аккаунте проверяете состояние подписки, доступные действия и возможность retry payment. В админ-панели смотрите платежи, статус, план, итоговую сумму и отчёты.

Минимальный протокол проверки

  1. Откройте страницу регистрации или аккаунта не под администратором.
  2. Выберите план, к которому код должен применяться.
  3. Введите код вручную и через URL-параметр, если он используется в рассылке.
  4. Проверьте пересчёт суммы до перехода к шлюзу.
  5. Завершите тестовую оплату или доведите её до ожидаемого статуса, если проверяете retry payment.
  6. Откройте Paid Member Subscriptions - Payments и проверьте запись.
  7. Откройте Reports и проверьте, что discount codes учитываются в summary.
  8. Проверьте отрицательный сценарий: неправильный план, неактивный код или пользователь, для которого действует ограничение.

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

Что писать рядом с формой

Не перегружайте страницу юридическим текстом, но объясните пользователю ключевое: на какие планы действует скидка, применяется ли она только к первому платежу, есть ли ограничение для новых участников или апгрейда, куда обращаться при ошибке. Если скидка не распространяется на signup fee, это тоже стоит написать рядом с предложением.

Такие пояснения снижают нагрузку на поддержку. Пользователь не будет ожидать скидку на каждый будущий платёж, если на странице прямо сказано, что код действует на первый платёж. Он не будет пытаться применить код к Silver plan, если предложение называется скидкой на Gold plan. Хорошая скидочная кампания состоит из настройки в админ-панели и честного текста на странице, а не только из красивого кода.

Частые проблемы с discount codes и безопасная диагностика

Большинство проблем с Paid Member Subscriptions Discount Codes проверяется без правки кода. Начинайте с симптома, затем проверяйте применимость к плану, статус, даты, лимиты, состояние пользователя и форму, где код вводится. Только после этого ищите конфликт темы, кеша или другого плагина.

Диагностическая карта ошибок Paid Member Subscriptions Discount Codes
Диагностическая карта помогает пройти путь от симптома к причине: неверный план, истёкший период действия, лимит, неподходящий пользовательский сценарий или конфликт сайта.

Код не принимается на форме

Симптом: пользователь вводит код, но форма показывает ошибку или не меняет сумму. Возможные причины: код неактивен, дата окончания прошла, выбран не тот subscription plan, лимит использований исчерпан, пользователь не подходит под New Users Only или расширенное условие, например upgrade-only.

Что проверить: откройте discount code в админ-панели, убедитесь в статусе Active, проверьте выбранные планы и даты, затем повторите тест на той же форме, где ошибку видит пользователь. Если код автоматически подставляется через URL, проверьте точное значение параметра discount_code и отсутствие лишних символов.

Скидка применяется не к тому тарифу

Симптом: пользователь получает скидку на план, который не должен участвовать в акции. Возможная причина - в настройках кода выбрано слишком много subscription plans или форма регистрации показывает все активные планы вместо ограниченного набора. Проверьте поле Subscription(s) и параметры shortcode, особенно если страница регистрации используется для нескольких кампаний.

Исправление: ограничьте код нужными планами и, если нужно, создайте отдельную посадочную страницу с [pms-register subscription_plans="..."]. После изменения повторите отрицательный тест на исключённом плане.

Промокод из письма не подставляется автоматически

Симптом: ссылка открывается, но поле кода пустое или скидка не применяется. Возможные причины: параметр написан не как discount_code, в URL неправильный разделитель, форма не содержит предварительно выбранного subscription plan или код не привязан к этому плану. Документация прямо указывает, что для корректной работы автоматического применения план должен быть предварительно выбран и выбран в настройках discount code.

Исправление: соберите ссылку заново, проверьте её в чистом браузере, затем протестируйте тот же код ручным вводом. Если ручной ввод работает, проблема почти наверняка в ссылке или предварительном выборе плана.

Скидка затронула будущие платежи, хотя ожидался только первый период

Симптом: повторное списание или будущая подписка тоже учитывает скидку. Возможная причина - включена опция применения к будущим recurring payments. Проверьте настройку кода и текст кампании. Если пользователь уже получил обещание постоянной скидки, отключение без коммуникации может вызвать конфликт. Если это тестовая ошибка, деактивируйте код, создайте новый с корректной логикой и проверьте повторные платежи в тестовой среде.

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

После импорта часть кодов не работает

Симптом: некоторые коды из CSV появились, но не принимаются пользователями. Возможные причины: ошибочный формат строк, дубли значений, неправильные планы, неактивный статус, некорректные даты или лимиты. Исправление начинается с маленькой выборки: проверьте 2-3 конкретных кода из проблемного набора, сравните их настройки с рабочим кодом и убедитесь, что пользователи вводят значение без пробелов.

Если импорт большой, не исправляйте всё вручную вслепую. Подготовьте новый короткий CSV на основе sample file, импортируйте несколько тестовых кодов и только после успешной проверки повторите полный импорт.

Форма выглядит неправильно или поле кода скрыто стилями

Симптом: логика работает, но пользовательский интерфейс неудобен: поле промокода плохо видно, кнопка уехала, сообщение ошибки сливается с фоном. В общих настройках Paid Member Subscriptions есть параметр загрузки CSS, а документация рекомендует оставлять CSS плагина включённым и при необходимости переопределять стили через дочернюю тему или Appearance - Customize - Custom CSS.

Безопасная правка должна быть минимальной. Не меняйте файлы плагина. Добавьте CSS в кастомайзер или дочернюю тему, проверьте форму регистрации, аккаунт и мобильную ширину. Если правка не подошла, удалите CSS-фрагмент и вернитесь к стандартному виду.

Совместимость с WooCommerce, кешем, темой и правами доступа

Paid Member Subscriptions может работать не только с обычными страницами подписок, но и с WooCommerce-интеграцией: ограничение просмотра и покупки товаров, member discounts, продажа subscription plans как продуктов. При этом discount codes для подписок и членские скидки WooCommerce - разные механики. Их можно использовать на одном сайте, но нужно понимать, какая скидка где считается.

В WooCommerce-интеграции документация описывает отдельные настройки: cumulative discounts, exclude products on sale и сообщение для пользователей, которым доступна членская скидка. Если вы одновременно используете discount code для подписки и member discount для товара, проверьте итоговую цену в каждом сценарии: покупка подписки, просмотр товара участником, товар со скидкой магазина, товар с членской скидкой.

Кеш особенно опасен для форм, где цена и состояние пользователя меняются динамически. Страницы регистрации, аккаунта, списка подписок, оплаты и личного кабинета не должны обслуживаться как статичная HTML-копия для всех. Если после настройки кода форма показывает старую цену, сначала очистите кеш страницы и проверьте исключения. Не отключайте весь кеш сайта без необходимости, но исключите страницы с персональным состоянием.

Тема и конструкторы страниц могут влиять на отображение shortcode-форм. Если вы используете Elementor, Gutenberg или другой редактор, размещайте shortcode в обычном блоке, не внутри скрытой вкладки, popup или сложного lazy-load контейнера, пока не проверите оплату. Для discount code важна не только видимость поля, но и корректная отправка формы.

Права доступа тоже имеют значение. Shortcodes Paid Member Subscriptions работают на страницах, созданных администратором, что снижает риск злоупотребления со стороны авторов контента. Для управления скидками используйте учётные записи с нужными административными правами, а не общий логин. Если маркетологу нужно создавать кампании, лучше настроить процесс проверки перед публикацией, чем выдавать слишком широкие права без контроля.

Ответы на вопросы, которые возникают при настройке

Можно ли использовать один код для нескольких тарифов?

Да, если эти subscription plans выбраны в настройках discount code. Но для кампаний с разной экономикой лучше создавать отдельные коды по группам тарифов. Так проще контролировать сумму скидки, лимиты и отчёты.

Почему код работает на регистрации, но не работает при апгрейде?

Проверьте, доступен ли сам путь апгрейда в структуре subscription plans и не включено ли условие, которое противоречит текущему состоянию пользователя. Для upgrade-only discount code нужен подходящий сценарий апгрейда, а не обычная новая регистрация.

Можно ли автоматически подставить код из письма?

Да, документация описывает параметр discount_code в URL. Но для корректной работы должен быть предварительно выбран subscription plan, а этот же план должен быть выбран в настройках discount code.

Как понять, применится ли скидка к повторным платежам?

Проверьте опцию применения скидки к будущим recurring payments. Если она включена, скидка может распространяться дальше первого платежа. Если акция рассчитана только на вход, не включайте постоянное применение без расчёта финансовой модели.

Что делать, если код надо выдать многим людям персонально?

Используйте bulk import через CSV и лимитируйте каждый код. Перед большим импортом протестируйте несколько строк на sample file, иначе можно загрузить десятки кодов с одинаковой ошибкой.

Почему пользователь видит ошибку wrong discount code?

Чаще всего выбран не тот план, код неактивен, истёк срок действия, исчерпан лимит или пользователь не подходит под условие new users only, expired-only или upgrade-only. Начинайте диагностику с привязки к плану и статуса кода.

Нужно ли добавлять CSS для поля промокода?

Только если тема плохо отображает стандартную форму. Сначала оставьте CSS плагина включённым, затем при необходимости добавьте минимальную правку через кастомайзер или дочернюю тему. Не редактируйте файлы плагина.

Можно ли использовать Discount Codes вместе с WooCommerce member discounts?

Можно, но это разные механики. Discount Codes относятся к покупкам подписок в PMS-сценариях, а WooCommerce member discounts управляют ценами товаров для участников. Проверьте каждый путь отдельно, особенно товары со скидкой магазина и членской скидкой.

Когда Paid Member Subscriptions Discount Codes будет удачным выбором

Этот инструмент стоит использовать, если вы уже строите платный доступ на Paid Member Subscriptions и хотите управлять промо-кампаниями внутри той же логики: планы, формы, аккаунт, платежи, отчёты и расширенные условия. Он хорошо закрывает практические задачи: скидка на первый вход, ограниченная кампания для конкретного плана, код для апгрейда, возврат истекших подписчиков, персональные коды через CSV и автоматическая подстановка через URL.

Перед публикацией рабочей акции проверьте три вещи: тариф выбран правильно, сценарий пользователя совпадает с назначением кода, а отчёты и платежи показывают ожидаемый результат. Если эти проверки пройдены, можно переходить к установочному файлу и безопасно протестировать продукт на своём сайте: получить версию для WordPress.

Если же скидки должны управлять сложным магазином, внешней CRM, уникальными пользовательскими сегментами или полностью другим checkout, сначала сравните альтернативы и не переносите всю финансовую логику в один промокод. Хороший discount code - это точечный инструмент кампании, а не замена продуманной модели подписок.

Автор: Редакция JoomFox.org

Вы не зарегистрированы, чтобы оставлять комментарии.