Секция billingBeta

Секция billing в JSON-файле конфигурации сервиса содержит следующую информацию:

  • Стоимость тарифного плана.

  • Длительность отчетного периода для тарификации.

  • Периодичность, с которой Marketplace запрашивает у брокера отчеты об использовании ресурсов.

  • Порядок действий с неиспользованными бонусами.

  • Шаг изменения для тарифных опций типа integer.

  • Стоимость тарифных опций плана. Поддерживаются следующие типы платных тарифных опций:

    • Числовой (integer, number). Поддерживается предоплатная и постоплатная тарификация.
    • Логический (boolean). Поддерживается предоплатная тарификация.

Подробнее о типах тарификации — в разделе Тарификация.

Применяемый тип тарификации зависит от того, где в секции schemas описаны тарифные опции:

  • Если опции описаны в секциях service_instance.create и service_instance.update, применяется предоплатная тарификация.
  • Если опции описаны в секции service_instance.resource_usages, применяется постоплатная тарификация.

Секция billing имеет следующую структуру:

"billing": {            "cost": <СТОИМОСТЬ>,            "billing_cycle_flat": <ОТЧЕТНЫЙ_ПЕРИОД>,            "billing_cycle_step": <ПЕРИОДИЧНОСТЬ_ПРОВЕРКИ>,            "refundable": <ПОДЛЕЖИТ_ВОЗВРАТУ>,            "options": {              "<ИМЯ_ОПЦИИ>": {                <БИЛЛИНГ_ОПЦИИ>                },              ...              }            }

Здесь:

  • <СТОИМОСТЬ> — стоимость плана за отчетный период без учета платных тарифных опций. Задается в валюте страны, где развернут Marketplace. Если план бесплатный, указывается значение 0. Поддерживается только предоплатная тарификация.

  • (Опционально) <ОТЧЕТНЫЙ_ПЕРИОД> — длительность отчетного периода для тарификации. Можно задать только для предоплатного тарифного плана.

    Задается в формате: <КОЛИЧЕСТВО_МЕСЯЦЕВ> mons <КОЛИЧЕСТВО_ДНЕЙ> days. Например, 1 mons 15 days или 30 days. Количество дней в месяце mons рассчитывается по календарю, поэтому периоды 1 mons 0 days и 0 mons 31 days не равны между собой.

  • (Опционально) <ПЕРИОДИЧНОСТЬ_ПРОВЕРКИ> — длительность периода, с которым Marketplace проверяет, есть ли в брокере необработанные отчеты. Подробнее — в разделе Тарификация. Можно задать только для тарифного плана с постоплатными тарифными опциями.

    Задается в формате: <КОЛИЧЕСТВО_МЕСЯЦЕВ> mons <КОЛИЧЕСТВО_ДНЕЙ> days. Например, 1 mons 15 days или 30 days. Количество дней в месяце mons рассчитывается по календарю, поэтому периоды 1 mons 0 days и 0 mons 31 days не равны между собой.

  • (Опционально) <ПОДЛЕЖИТ_ВОЗВРАТУ> — возвращать или нет на бонусный счет проекта денежные средства за оставшиеся дни расчетного периода, если пользователь изменил тарифный план или удалил инстанс сервиса. Можно указать только для предоплатного тарифного плана. По умолчанию — true.

    Параметр влияет на дату списания платы за сервис, когда пользователь изменяет тарифный план (редактирует тарифные опции или переходит на новый):

    • true — дата не изменяется.
    • false — дата обновляется до даты изменения тарифного плана.
  • (Опционально) Секция options описывает стоимость платных тарифных опций.

    • <ИМЯ_ОПЦИИ> — имя тарифной опции в JSON-файле конфигурации сервиса.
    • <БИЛЛИНГ_ОПЦИИ> — стоимость тарифной опции и параметры шага изменения для опции типа integer. Сама тарифная опция (тип, настройки значения) описывается в секции schemas.

Параметры секции <БИЛЛИНГ_ОПЦИИ> зависят от типа опции:

Имя

Описание

Формат

Обязательный

Предоплатная опция типа integer с шагом изменения

base

Определяет стандартное значение тарифной опции, входящее в стоимость тарифного плана.

Стандартное значение — это минимальное значение, которое может задать пользователь.

Если параметр не задан, стандартное значение равно 0

integer

Секция billing

cost

Определяет стоимость шага, на который можно изменить значение тарифной опции. Если указан 0, изменение опции бесплатно

float64, >= 0

Секция billing

unit

Определяет параметры шага изменения опции

Секция billing

Секция billing

Параметры секции unit

unit.size

Определяет размер шага, на который можно изменить значение тарифной опции

integer, > 0

Секция billing

unit.measurement

Определяет единицы измерения шага, заданного в параметре unit.size

string, до 255 символов

Секция billing

Предоплатная опция-переключатель boolean

cost

Определяет стоимость опции

float64, >= 0

Секция billing

Постоплатная опция типа integer или number

cost

Определяет стоимость единицы тарифной опции.

float64, >= 0

Секция billing

unit

Определяет параметры шага изменения опции

Секция billing

Секция billing

Параметры секции unit

unit.size

Определяет размер шага изменения опции. Значение должно быть равно 1

integer

Секция billing

unit.measurement

Определяет единицы измерения опции

string, до 255 символов

Секция billing

Примеры описания секции billing