===== Сценарии работы для продажи подписок ===== :!: **Внимание!** Документация была немного переработана. Ознакомиться с новой версией можно по [[ru:apiv2:start|ссылке]] ---- ==== Создание подписки ==== Создание новой подписки всегда производится через создание заказа. При успешно созданном заказе будет создана и активирована новая подписка. Некоторые подписки (в зависимости от вендора) требуют заполнения лиц. формы. Одним из полей этой лиц. формы может стать согласие с дополнительными условиями поставки, использования и пр. (доп. соглашение) Когда заказывается подписка на нового пользователя, необходимо сперва получить поля активационной формы для заполнения. Реселлер на своей стороне создает уникальный идентификатор подписчика и посылает запрос на создание подписчика с этим идентификатором со всеми заполненными полями. Если метод не вернул ошибку, следовательно, подписчик создан и активрован на стороне вендора. ==== Редактирование подписок ==== {{page>terms:subscription}} Ниже представлен граф изменения статусов подписки. Из этого рисунка видно, что при остановке подписки из состояния активна или при запуске подписки из состояния остановлена, она не перейдет сразу в требуемое состояние. Ее статус изменится в определенный промежуточный статус. Система реселлера должна уметь периодически синхронизировать состояния изменившихся подписок. Для этого необходимо использовать методы [[ru:b2bv2:methods:getsubscription|]] и [[ru:b2bv2:methods:getsubscriptionsid|]]. Получив в первый раз все подписки (прислав запрос на получение подписок для 0 версии изменений), вместе с подписками следует сохранить пришедшую в ответе последнюю версию изменений. После этого периодически (например, раз в 10 минут) получайте изменившиеся подписки для вашей версии и перезаписывайте ее пришедшей последней версией изменений. {{:files:images:subscr_status.png?700|}} ==== Синхронизация цен ==== Для синхронизации цен в системе реселлера используйте метод [[ru:b2bv2:methods:getpricechanges|GetPriceChanges]] ==== Управление подписчиками ==== Перед созданием подписки необходимо получить, заполнить и передать правильно заполненную активационную форму с данными о подписчике. Информация о подписчике будет передана соответствующему вендору, и подписчик будет создан и активирован на стороне вендора. После этого можно размещать заказ, который будет содержать в себе подписку и активированного подписчика. В случае когда производится покупка на существующего пользователя (есть идентификатор подписчика, и он уже что-то ранее заказывал) необходимо "понять" нужно ли активировать подписчика у вендора. Для этого сначала вызывается метод [[ru:b2bv2:methods:issubscriberactivated|IsSubscriberActivated]]. Если метод вернул значение false вызывается метод получения активационной формы, а затем метод активации пользователя. ==== Синхронизация подписчиков ==== В API (аналогично синхронизации подписок) существуют 2 метода для синхронизации подписчиков. Если подписчики будут создаваться не только через API, но и через другие сторонние системы (например, через Edmont), может возникнуть необходимость в синхронизации списка подписчиков на стороне реселлера.