Техническое задание: Серверная логика управления подписками
Цель проекта
Создать независимую серверную систему для полного контроля жизненного цикла платных подписок, интегрированную с существующей платежной экосистемой.
Текущая ситуация
На сайте уже подключена сторонняя платежная система. Тестовые платежи и подписки работают по ее стандартному сценарию. Требуется вынести ключевую бизнес-логику продлений на собственную инфраструктуру.
Основные требования
Логика работы подписок:
- Пользователь оформляет пробную подписку стоимостью 33 рубля на 14 дней.
- После окончания пробного периода система должна автоматически инициировать списание полной стоимости подписки - 299 рублей за 30 дней.
- Все последующие списания (продления) также должны управляться вашим серверным решением.
Ключевые функции системы:
- Отслеживание окончания пробных и платных периодов подписки для каждого пользователя.
- Автоматический запуск попыток списания средств в нужные моменты времени.
- Работа параллельно или вместо стандартных механизмов списания платежной системы.
- Обработка успешных и неуспешных транзакций с соответствующей бизнес-логикой (например, повторные попытки, уведомления пользователя, отмена подписки).
- Ведение журнала всех операций и статусов подписок.
Технические аспекты
- Интеграция с существующим API платежного шлюза для проведения транзакций.
- Разработка надежного планировщика задач (cron, queue worker) для отслеживания сроков.
- Создание административной панели или инструментов для мониторинга состояния подписок и транзакций.
- Обеспечение безопасности и отказоустойчивости при обработке финансовых операций.
Результат
Полностью работоспособная серверная система, которая берет на себя управление рекуррентными платежами, снижая зависимость от встроенных механизмов стороннего платежного провайдера.