# Улучшения плагина Subscriptions

**URL:** https://meta.discourse.org/t/enhancements-to-the-subscriptions-plugin/373165
**Category:** Development
**Tags:** subscriptions
**Created:** [07.Июль.2025 11:45:25 UTC](https://meta.discourse.org/t/enhancements-to-the-subscriptions-plugin/373165 "2025-07-07T11:45:25Z")
**Posts on this page:** 1
**Showing post:** 1

<div class="post-metadata">

### Author: ![SubStrider](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/substrider/32/512604_2.png) [@SubStrider](https://meta.discourse.org/u/SubStrider)
#### Post date: [07.Июль.2025 11:45:25 UTC](https://meta.discourse.org/t/enhancements-to-the-subscriptions-plugin/373165/1 "2025-07-07T11:45:25Z")

</div>

Здравствуйте! Я внес следующие изменения в этот плагин и хотел бы узнать, готова ли команда Discourse принять pull request.

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

* * *

Оригинальный плагин является отличной основой, но в основном ориентирован на повторяющиеся подписки через Stripe. Я внес следующие изменения:

### Краткое описание новых функций и улучшений

**1. Система оплаты с поддержкой нескольких провайдеров (с Razorpay)** Плагин больше не привязан жестко к Stripe. Теперь используется архитектура на основе провайдеров, позволяющая подключать несколько платежных шлюзов.

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

**2. Разовые подписки с ограниченным сроком действия** Вводится новый гибкий тип продукта, выходящий за рамки стандартных повторяющихся подписок.

- **Истечение срока доступа:** Администраторы теперь могут создавать разовые тарифные планы, предоставляющие доступ к группе на фиксированный срок (например, пропуск на мероприятие на 7 дней, пробный период на 30 дней или пакет на 90 дней).
- **Автоматическое истечение срока:** Ежедневная фоновая задача автоматически проверяет истекшие подписки и удаляет пользователей из соответствующих групп, обеспечивая полное автоматизированное управление доступом.

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

- **Современный интерфейс на основе карточек:** Старый список продуктов заменен чистым, адаптивным макетом на основе карточек, который легче читать и сравнивать.
- **Адаптация к теме:** Новый дизайн использует переменные тем Discourse и полностью совместим как со светлой, так и с темной темой.
- **Оформление заказа на одной странице:** Весь процесс оформления заказа теперь происходит на странице цен. При нажатии кнопки «Подписаться» форма оплаты отображается прямо на странице, устраняя лишний шаг и снижая трение для пользователя.

**4. Продвинутые техники апсейлинга и отображения ценности** Новые карточки цен разработаны как мощные инструменты для апсейлинга.

- **Эффективная ежемесячная стоимость:** Интерфейс автоматически рассчитывает и отображает эффективную «стоимость в месяц» для _всех_ типов планов (включая разовые планы на 3 месяца или год), позволяя пользователям легко сравнивать выгоду различных вариантов.
- **Явная экономия:** На планах с более длительным сроком действия автоматически отображается значок «Экономия ₹X», четко сообщая о преимуществе выбора плана с большей ценностью по сравнению с базовым.

**5. Единые панели управления для администраторов и пользователей** Страницы выставления счетов как для администраторов, так и для пользователей были рефакторированы, чтобы стать проще и мощнее.

- **Единый обзор:** Вместо отдельных списков для разных типов платежей теперь есть одна таблица, отображающая все подписки от всех провайдеров (Stripe, Razorpay, Ручной).
- **Понятная информация:** Эти представления четко показывают провайдера, статус, дату истечения/продления и сумму для каждой транзакции, предоставляя как администраторам, так и пользователям полную историю их прав доступа.

 ![Screenshot 2025-07-07 at 2.02.03 PM](https://global.discourse-cdn.com/meta/original/4X/2/3/4/234fe4db780ff62ee2741a23a7bb5f5828f06933.jpeg)  
 ![Screenshot 2025-07-07 at 2.03.55 PM](https://global.discourse-cdn.com/meta/original/4X/9/7/2/97230628307b2fd5aa0297e4a144336930704636.jpeg)

**6. Ручное управление подписками для администраторов** Добавлен новый набор инструментов, дающий администраторам больше контроля.

- **Предоставление подписки:** Администраторы теперь могут вручную предоставить любой тарифный план любому пользователю на определенный срок. Это идеально подходит для обработки офлайн-платежей, предоставления бесплатного доступа или внесения исправлений.
- **Отзыв доступа:** Доступ для нереприродящихся планов может быть немедленно отозван из панели администратора.

**7. Критическое исправление ошибки в управлении группами**

- Исправлена серьезная ошибка в логике удаления из группы в оригинальном плагине. При отмене или отзыве подписки система теперь выполняет «проверку безопасности», чтобы узнать, есть ли у пользователя какие-либо _другие_ активные подписки на ту же группу. Пользователь будет удален из группы только в том случае, если у него нет другого законного способа доступа к ней, что предотвращает ошибочное удаление пользователей.

[https://github.com/rahul-rakesh/discourse-subscriptions](https://github.com/rahul-rakesh/discourse-subscriptions)

---

_[View the full topic](https://meta.discourse.org/t/enhancements-to-the-subscriptions-plugin/373165)._
