Продление Подписки

Метод создает новый Заказ на продление Подписки и возвращает ID и тело созданного Заказа, а также происходит создание Платежа.

 

POST /api/vendor/v1/subscriptions/:id/renew.json?api_token={api_token}&plan_period_id={plan_period_id}&promo_code={promo_code}

Аргументы

Название

Тип параметра

Тип данных

Обязательный/ Опциональный

Описание

idpathintegerОбязательныйID существующей подписки
api_tokenquerystringОбязательныйAPI токен Сотрудника, выполняющего операцию (см. Просмотр и обновление информации о сотруднике в ActivePlatform. Панель управления Оператора).
plan_period_idqueryintegerОбязательныйID периода тарифного плана подписки

promo_code

query

string

Опциональный

Промо-код для получения скидки

Модель ответа

Название

Тип данных

Описание

id

integer

ID заказа.

document_id

string

Номер заказа

status

string

Статус заказа. Может иметь следующие значения:

  • waiting for payment - заказ был осуществлен, ожидается его оплата;
  • provisioning - заказ был подтвержден, услуга предоставляется;
  • provisioning failed - заказ был подтвержден, но услуга не предоставляется;
  • completed - заказ был успешно обработан;
  • cancelled - заказ был отменен.

account_id

integer

ID аккаунта, с которого произведена оплата.

type

string

Тип заказа. Может иметь следующие значения:

  • SalesOrder - заказ на новую подписку;
  • RenewalOrder  - заказ на продление подписки;
  • ChangeOrder - заказ на изменение ресурсов подписки и т.п.;
  • SwitchOrder  - заказ на переключение с одного тарифного плана на другой.

created_at

date

Дата и время создания заказа.

updated_at

date

Дата и время последнего изменения заказа.

expiration_date

date

Дата окончания, до которой заказ должен быть оплачен. Дата окончания рассчитывается исходя из установленного значения "Период отсрочки платежа" в "Правиле предоставления" (см. Создание правила предоставления в ActivePlatform. Панель управления Оператора).

total

float

Общая сумма заказа.

promo_code

string

Промо-код, если данный код применялся при создании заказа (см. Создание Скидки по Промо-коду в ActivePlatform. Панель управления Оператора).

payment_id

integer

ID платежа, который связан с заказом.

items

arrayПеречень позиций в заказе:
  • id - ID позиции заказа;
  • target_id - ID сущности (услуги или дополнительного ресурса), которая относится к данной позиции заказа;

  • target_type - тип сущности, которая относится к данной позиции заказа:

    • Subscription - подписка;

    • SubscriptionResource - дополнительный ресурс подписки;

  • type - внутренний класс позиции заказа:

    • "ProvisioningItem::Upgrade" - увеличение количества ресурсов подписки;

    • "ProvisioningItem::New" - новая подписка;

    • "ProvisioningItem::RegisterDomain" - регистрация домена;

    • "ProvisioningItem::Renew" - продление подписки;

    • "ProvisioningItem::SwitchPlan" - изменение тарифного плана в рамках подписки;

    • "ProvisioningItem::Downgrade" - уменьшение количества ресурсов подписки;

    • "ProvisioningItem::TransferDomain" - перенос домена;

    • "ProvisioningItem::RegisterCertificate" - регистрация SSL-сертификата.

  • status - текущий статус позиции заказа:

    • waiting for payment - заказ был осуществлен, ожидается его оплата;
    • provisioning - заказ был подтвержден, услуга предоставляется;
    • provisioning failed - заказ был подтвержден, но услуга не предоставляется;
    • completed - заказ был успешно обработан;
    • cancelled - заказ был отменен.
  • description - краткое описание позиции заказа.

charges

array

Список списаний, сформированных по данному заказу:

  • id -  ID списания;
  • subscription_id - ID подписки;
  • subscription_resource_id - ID ресурса в подписке;
  • subscription_resource_name - имя ресурса в подписке;
  • plan_resource_id - ID ресурса в тарифном плане;
  • resource_id - ID ресурса;
  • quantity - количество заказанных единиц;
  • operate_from - дата начала оплаченного периода;
  • operate_to - дата окончания оплаченного периода;
  • duration - доля оплаченного периода в месяце;
  • description - подробная информация о списании;
  • unit_price - стоимость одной единицы;
  • amount - общая сумма списания;
  • status - текущий статус списания:
    • new - клиент еще не оплатил услугу;
    • opened - услуга заказана, списание не оплачено клиентом, денежные средства на балансе клиента не заблокированы (для CSP подписок);
    • blocked - услуга заказана, списание не оплачено клиентом, денежные средства на балансе клиента были заблокированы;
    • wating for a refund - клиент осуществил операцию, по которой ожидается подтверждение Сотрудником возврата денежных средств;
    • closed - клиент оплатил списание, денежные средства списаны с баланса клиента;
    • deleted - запись была удалена;
    • refunded - клиент осуществил операцию, по которой произошел успешный возврат денежных средств. 
    • waiting for approve - клиент осуществил операцию, по которой ожидается подтверждение операции Сотрудником.
  • type - внутренний класс списания:
    • "Charge::Setup" - списание за установку подписки;
    • "Charge::Recurring" - списание за абонентскую плату подписки;
    • "Charge::Renewal" - списание за обновление подписки;
    • "Charge::RecurringResource" - списание за абонентскую плату ресурса подписки;
    • "Charge::SetupResource" - списание за установку ресурсов подписки;
    • "Charge::Transfer" - списание за перенос домена.
  • order_id - ID заказа, по которому произведено списание;
  • close_date - дата, когда списание должно быть закрыто;
  • created_at - дата и время создания записи;
  • updated_at - дата и время последнего изменения записи.

Пример запроса

POST http://billing.activeplatform.com:80/api/vendor/v1/subscriptions/2005882/renew?api_token=654321&plan_period_id=2001243

 

Пример ответа

{
  "id": 2010311,
  "document_id": "RN002935",
  "status": "waiting_for_payment",
  "account_id": 2000532,
  "type": "RenewalOrder",
  "created_at": "2016-08-12T16:21:52.055+03:00",
  "updated_at": "2016-08-12T16:21:52.950+03:00",
  "expiration_date": "2016-08-12",
  "total": 230,
  "promo_code": null,
  "payment_id": 2006907,
  "items": [
    {
      "id": 16559,
      "target_id": 2005882,
      "target_type": "Subscription",
      "type": "ProvisioningItem::Renew",
      "status": "waiting_for_payment",
      "description": "Fusion Manager"
    }
  ],
  "charges": [
    {
      "id": 754065,
      "subscription_id": 2005882,
      "subscription_resource_id": null,
      "subscription_resource_name": null,
      "plan_resource_id": null,
      "resource_id": null,
      "quantity": 1,
      "operate_from": "2017-07-15",
      "operate_to": "2017-07-30",
      "duration": 0.484,
      "description": "Renewal subscription (recurring fee) #2005882 \"Fusion Manager\"",
      "unit_price": 20,
      "amount": 9.68,
      "status": "new",
      "type": "Charge::Recurring",
      "order_id": 2010311,
      "close_date": "2017-07-30",
      "created_at": "2016-08-12T16:21:52.823103+0300",
      "updated_at": "2016-08-12T16:21:52.823103+0300"
    }
  ]
}