Перейти к содержанию

Жизненный цикл подписки

Здесь описаны состояния услуг пользователя в биллинге MEGOGO — подписок (SVOD), аренды (TVOD) и покупок (DTO), — а также то, как поддерживать одинаковое состояние в вашей системе и в MEGOGO.

Ведущая система — ваша: вы продаете услуги и списываете оплату с пользователей, а MEGOGO лишь регистрирует услуги, которые вы передаете. Billing API не отправляет уведомлений в вашу систему.

Подписка (SVOD)

stateDiagram-v2
    state "Активна" as Active
    state "Приостановлена" as Suspended
    state "Завершена" as Ended
    [*] --> Active: subscribe
    Active --> Active: subscribe (продление партнером, +1 период)
    Active --> Suspended: suspend
    Suspended --> Active: resume
    Active --> Ended: unsubscribe
    Suspended --> Ended: unsubscribe
    Active --> Ended: дата окончания (продление партнером)
    Ended --> Active: subscribe
Состояние В user/subscriptions Пользователь может смотреть
Активна Да, в svod, с dateFinish Да
Приостановлена Нет Нет. Оплаченное время сохраняется до resume
Завершена Нет Нет

Режим продления услуги определяет, как подписка остается в состоянии «Активна»:

Режим Что сохраняет подписку активной
Автоматическое продление MEGOGO продлевает подписку на каждый следующий период, пока вы не отправите unsubscribe
Продление партнером Каждый subscribe добавляет один период. Без нового subscribe подписка заканчивается в момент dateFinish

Запросы описаны в инструкции Продажа подписки.

ПРИМЕЧАНИЕ

Приостановленная и завершенная подписки в user/subscriptions выглядят одинаково: подписки в ответе нет. Поэтому состояние «приостановлена» храните в своей системе.

Аренда (TVOD)

stateDiagram-v2
    state "Ожидает просмотра" as Unwatched
    state "Просмотр начат" as Started
    [*] --> Unwatched: buyMovie
    Unwatched --> Started: первый /stream с src
    Started --> [*]: dateFinish
Состояние status в user/subscriptions dateFinish
Ожидает просмотра unwatched Нет
Просмотр начат started Окончание периода аренды

Период аренды начинается не в момент покупки, а с первого ответа /stream с src. См. Продажа отдельного видео.

Покупка (DTO)

buyMovie с тарифом DTO открывает пользователю доступ на срок тарифа, например на 3 650 дней. Покупка передается в массиве dto ответа user/subscriptions — без status и без dateFinish.

Отмена покупки

В Billing API нет запроса для отмены аренды или покупки (buyMovie). Если нужно вернуть пользователю деньги, обратитесь к вашему менеджеру MEGOGO.

Сверка

Регулярно сверяйте свои данные с данными MEGOGO — например, раз в день, — а также после каждого запроса, который завершился ошибкой или тайм-аутом:

  1. Отправьте user/subscriptions для каждого пользователя, у которого в вашей системе есть активная услуга.
  2. Сравните услуги и даты окончания.
  3. Устраните расхождения:
Ваша система MEGOGO Что делать
Активная подписка Нет в svod Если в вашей системе подписка приостановлена, ничего делать не нужно. Иначе отправьте subscribe
Нет подписки Есть в svod Отправьте unsubscribe
Дата окончания Другое значение dateFinish Используйте dateFinish из MEGOGO. Не вычисляйте дату окончания самостоятельно
Покупка (DTO) или аренда, которая еще не закончилась Нет в tvod или dto Повторно отправьте buyMovie с тем же tariff_id. Код 400 означает, что покупка уже зарегистрирована

Прежде чем отправлять subscribe в режиме «продление партнером», убедитесь, что подписки нет в svod: каждый subscribe добавляет один период.


Версия руководства 1.4.1, 2026-10-31 · Сообщить о проблеме на этой странице