Skip to content

Репозиторий для дипломного проекта

License

Notifications You must be signed in to change notification settings

Rusich90/graduate_work

Repository files navigation

Проектная работа: Billing API

Описание:

Billing API: Сервис для оплаты подписок пользователями

Screenshot

Возможности:

  • Подключение и оплата ежемесячной подписки с автопродлением
  • Отключение подписки
  • Возврат средств за подписку
  • Просмотр текущих подписок пользователя с датами окончания или списания средств
  • Просмотр всех транзакций по картам
  • Просмотр типов подписок

Changelog:

Реализовано:

  • Интеграция с аггрегатором оплаток
  • Эндпоинты для оплаты
  • Эндпоинты для вывода транзакций и подписок пользователя
  • Эндпоинты для отмены подписок и возврата средств за подписки
  • Эндпоинт с видами подписок
  • Шедулер проверяющий закончившиеся подписки и проводящий автопродление через аггрегатора
  • В сервис с админкой подключены все транзакции и подписки

В разработке:

  • Отправлять информацию в кафку о новых подписчиках (для Auth сервиса)
  • Отправлять информацию в кафку об истекших подписках (для Auth сервиса)
  • Отправлять информацию в Rabbit об успешных оплатках (для сервиса Notification)
  • Отправлять логи в ELK
  • Добавить в шедулер проверку не оплаченных транзакций
  • Отправлять из сервиса админки данные о типах подписок и получать их в биллинг сервисе

Инструкция по запуску:

В корне нужно создать .env файл и скопировать в него данные из .env_example

Для реальной проверки оплаток нужно прописать реальный BILLING_ID, BILLING_TOKEN

Команда для старта приложения:

docker-compose up -d

Для миграций:

docker-compose -f docker-compose.yaml exec -T app alembic upgrade head

Swagger доступен по ссылке http://localhost/api/openapi

About

Репозиторий для дипломного проекта

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published