Цель проекта

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

Текущая проблема

  • После первой оплаты подписка у клиента не создаётся.
  • Повторные списания не происходят.
  • Отсутствует привязка карты и управление подпиской.

Основные задачи

1. Настройка первого платежа с параметрами рекуррентности

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

2. Обработка callback-уведомлений от платёжного шлюза

  • Настройка и защита эндпоинтов для приёма вебхуков.
  • Обработка различных статусов платежей (успех, отказ, отмена).
  • Обновление статуса подписки пользователя на основе полученных уведомлений.

3. Хранение и управление данными подписки

  • Создание структуры в базе данных для хранения:
    • Статуса подписки (активна, приостановлена, отменена).
    • Даты следующего списания.
    • Истории всех транзакций по подписке.
    • Токена сохранённой карты.
  • Привязка подписки к учётной записи пользователя.

4. Автоматизация последующих списаний

  • Реализация механизма (например, cron-задача или очередь) для запуска регулярных списаний по расписанию (например, раз в месяц).
  • Интеграция с API платёжного шлюза для проведения повторных транзакций с использованием сохранённого токена карты.
  • Обработка результатов списания и обновление данных подписки.

5. Функционал отмены подписки

  • Реализация возможности для пользователя отменить подписку в личном кабинете.
  • Реализация возможности для администратора системы приостановить или отменить подписку.
  • Корректная остановка будущих списаний при отмене.

Требования к результату

  • Полностью рабочая система рекуррентных платежей.
  • Надёжное хранение данных и безопасная работа с платёжными токенами.
  • Чёткий процесс обработки успешных и неуспешных списаний.
  • Интерфейс для управления подпиской для пользователя и администратора.
  • Документация по реализованной логике и API.

Исправление ошибок отображения изображений и настройка единого размера в интернет-магазине

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