Настройка WooCommerce Subscriptions (подписки)

Наша компания занимается разработкой, поддержкой и обслуживанием сайтов любой сложности. От простых одностраничных сайтов до масштабных кластерных систем построенных на микро сервисах. Опыт разработчиков подтвержден сертификатами от вендоров.
Разработка и обслуживание любых видов сайтов:
Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Предлагаемые услуги
Показано 1 из 1 услугВсе 2065 услуг
Настройка WooCommerce Subscriptions (подписки)
Средняя
~2-3 рабочих дня
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1214
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1161
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    852
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1041
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    823
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    815

Настройка WooCommerce Subscriptions (подписки)

WooCommerce Subscriptions — платный плагин от WooThemes/Automattic, добавляющий механику повторяющихся платежей поверх стандартного WooCommerce. Без него реализовать подписочную модель на WordPress нельзя без глубокой кастомной разработки.

Что делает плагин

Плагин вводит тип продукта «Subscription» с двумя вариантами: простая подписка и вариативная. Для каждого продукта задаются:

  • Billing period — every N days/weeks/months/years
  • Billing interval — как часто списывать внутри периода
  • Free trial — бесплатный пробный период до первого списания
  • Sign-up fee — разовый платёж при активации сверх регулярного

Технически плагин создаёт дополнительные таблицы wcs_* и расширяет wp_posts / wp_postmeta для хранения данных подписки, расписания и токенов платёжного метода.

Поддерживаемые платёжные шлюзы

WooCommerce Subscriptions требует шлюз с поддержкой автоматического списания (automatic recurring payments). Не все шлюзы это умеют — они должны явно объявить поддержку через хук supports:

// Пример проверки поддержки шлюзом recurring payments
$gateway = WC()->payment_gateways()->get_available_payment_gateways()['stripe'];
if ( $gateway->supports( 'subscriptions' ) ) {
    // шлюз умеет автоматические списания
}

Совместимые «из коробки»: Stripe (через WooCommerce Payments или WooCommerce Stripe Gateway), PayPal Reference Transactions, Authorize.Net, Braintree. Для CloudPayments, ЮKassa, Tinkoff — нужна проверка их плагинов на объявление add_support('subscriptions').

Если шлюз не поддерживает automatic recurring — подписка переходит в режим manual renewal, покупателю присылается invoice-письмо, он платит вручную. Это работает, но конверсия ниже.

Установка и базовая конфигурация

  1. Загрузить плагин из WooThemes, установить через Плагины → Добавить → Загрузить плагин.
  2. Активировать лицензионный ключ в WooCommerce → Subscriptions → License.
  3. В WooCommerce → Settings → Subscriptions задать:
    • Mixed checkout — разрешать ли одновременную покупку подписки и обычного товара
    • Maximum failed payments — количество ошибок списания до отмены подписки (обычно 3)
    • Renewal payment email — от кого идут письма о продлении

Создание продукта-подписки

Товары → Добавить товар
→ Тип товара: Simple subscription
→ Subscription price: 990 руб / month
→ Free trial: 7 days
→ Sign-up fee: 0
→ Expire after: Never (или конкретный срок)

Вариативные подписки (разные тарифы — Basic/Pro/Enterprise) создаются как Variable subscription с атрибутами.

Управление подписками

В разделе WooCommerce → Subscriptions отображается список всех активных, приостановленных и отменённых подписок. Каждую можно:

  • Изменить дату следующего платежа вручную
  • Применить купон к будущим списаниям
  • Переключить покупателя на другой тариф (апгрейд/даунгрейд)
  • Инициировать принудительное списание вне расписания

Хуки для кастомизации

// Действие после успешного renewal payment
add_action( 'woocommerce_subscription_renewal_payment_complete', function( $subscription, $last_order ) {
    $user_id = $subscription->get_user_id();
    $plan    = $subscription->get_items(); // тарифный план
    // обновить роль пользователя, отправить бонус и т.д.
}, 10, 2 );

// Действие при отмене подписки
add_action( 'woocommerce_subscription_status_cancelled', function( $subscription ) {
    $user_id = $subscription->get_user_id();
    // снять доступ, уведомить команду
} );

Интеграция с WooCommerce Memberships

Подписки часто работают в паре с Memberships — подписка оплачивает членство, членство ограничивает доступ к контенту. Связь настраивается в WooCommerce → Memberships → Membership Plans → Edit Plan → Grant Access.

Проблемы, которые встречаются при настройке

Самая частая — платёжный шлюз не поддерживает tokenization. Симптом: при оформлении подписки Stripe/PayPal работают, местный шлюз нет. Решение: проверить, что плагин шлюза версии не ниже рекомендованной для WCS, и что он вызывает $this->supports[] = 'subscriptions'.

Вторая проблема — cron-задачи не выполняются. WCS завязан на WP-Cron для запуска renewal payments. На хостингах с отключённым встроенным cron нужно настроить системный cron:

# /etc/cron.d/wp-cron
*/5 * * * * www-data wget -q -O /dev/null "https://example.com/wp-cron.php?doing_wp_cron"

Или использовать Action Scheduler (уже входит в WCS) с внешним тригером.

Сроки

Базовая настройка с одним тарифом и Stripe — 1–2 рабочих дня. Несколько тарифных планов, апгрейды/даунгрейды, интеграция с Memberships, локальные шлюзы — 3–5 дней.