Application Packaging Standard

Last updated 18-Mar-2019

Configuration for BSS

In BSS, service plans are the products for sale presented in the online store and the customer control panel (CCP). They require some billing settings preliminary configured. That is why, the default section on the wizard data may contain two sections, one for billing settings and the other for the service plans.

In this document:

Billing Settings

The billing named list allows creating the billing components explained in the Product in BSS section.

Configuration Structure

The following structure presents all three categories.

"billing": {
   "planCategory": {
      "id": <ID unique in the current wizard data>,
      "name": <Default name of the plan category>,
      "description": <Default description of the plan category>
   },
   "salesCategory": {
      "id": <ID unique in the current wizard data>,
      "name": <Default name of the sales category>,
      "description": <Default description of the sales category>,
      "inCCP": <true or false>,
      "expand": <true or false>
   },
   "resourceCategory": {
      "id": <ID unique in the current wizard data>,
      "name": <Default name of the resource category>,
      "description": <Default description of the sales category>,
      "optional": <true or false>,
      "displayType": <"default" or "radio">
   }
}

The structure uses the following configuration elements:

  • id is a digital ID unique in scope of the present wizard data. For the sake of reliability, assign a negative digit to avoid confusion with an ID of a category existing in the platform.
  • name is an arbitrary name to assign to the new category. Try to use an application specific name to avoid confusion with other categories in the platform.
  • description is an arbitrary description of the new category.
  • inCCP specifies if the plans of the category must be available in the customer control panel (CCP) for sale.
  • expand defines if the sales category must be expanded in the list of all categories displayed for a customer in CCP or in the online store.
  • optional defines if resources of this category are optional for customers.
  • displayType defines one of the ways for a customer to choose resources in this category, either:
    • default – Resources are selected by means of check boxes.
    • radio – Only one of the resources can be selected by means of radio buttons.

Example

"billing": {
   "planCategory": {
      "id":-21,
      "name": "Plans for Initialization Wizard testing",
      "description": "Plans for testing Initialization Wizard"
   },
   "salesCategory": {
      "id":-22,
      "name": "Initialization Wizard testing plans",
      "description": "Group of Initialization Wizard testing plans on sale for testing",
      "inCCP": true,
      "expand": true
   },
   "resourceCategory": {
      "id":-23,
      "name": "Resource Category for the Initialization Wizard test",
      "description": "Additional resources ",
      "optional": true,
      "displayType": "default"
   }
}

Service Plans

A service plan is final and the most complex deployment component. Its configuration is based on all previously configured components.

Configuration Structure

The servicePlans is an array of service plans. Every service plan is presented by the following structure that contains general plan properties and optionally the resources array with a set of resource rates:

{
   "name": <Plan arbitrary name>,
   "id": <Digital ID unique in the present wizard data>,
   "stId": <ID of the service template>,
   "shortDescription": <Short service plan description>,
   "longDescription": <Short service plan description>,
   "planBillingPeriod": <Number of months>,
   "renewOrderInterval": <Digital code of the interval type>,
   "renewPointDays": <Number of days>,
   "subscrPeriodType": <Digital code of the unit to measure the period length>,
   "subscrRefundType": <Digital code of the refund type>,
   "subscrPeriod": <Number of billing periods>,
   "subscrRenewalFee": <Fee>,
   "subscrRecurringFee": <Fee>,
   "subscrDepositFee": <Fee>,
   "subscrTrial": <false or true>,
   "subscrSetupFee": <Fee>,
   "subscrTransferFee": <Fee>,
   "resources": [
      { <resource rate 1> },
      ...
   ]
}

General Properties

The servicePlans section contains the following service plan general properties:

  • id is a digital ID unique in scope of the present wizard data. For the sake of reliability, assign a negative digit to avoid confusion with an ID of a service plan existing in the platform.
  • name is an arbitrary name to assign to the new service plan. Try to use an application specific name to avoid confusion with other service plan in the platform.
  • description is an arbitrary description of the new category.
  • stId is the ID of a service template specified in the present wizard data.
  • shortDescription is an arbitrary description of the new service plan.
  • longDescription is an arbitrary long description of the new service plan.
  • planBillingPeriod is the length of the billing period in the number of months.
  • renewOrderInterval specifies when a renewal order must be generated (0 - auto-renewal is disabled, 5 - on the last statement day, 15 - before subscription expiration).
  • renewPointDays specifies a number of days before the subscription expiration date when a renewal order must be generated. This is valid when renewOrderInterval:15.

Subscription Period Properties

In the default data, it is possible to specify parameters of one subscription period:

  • subscrPeriodType specifies the unit to measure the subscription period (2 - months, 3 - years).
  • subscrPeriod is the length of the subscription period measured in the units specified by subscrPeriodType.
  • subscrTrial defines if the subscription period is trial (1) or not (0).
  • subscrSetupFee is the setup fee for the first period.
  • subscrRecurringFee is the recurring fee (per billing period).
  • subscrRenewalFee is the renewal fee for the second and every subsequent period.
  • subscrTransferFee is the one time fee for transferring a domain. This is valid only for domain registration service plans.
  • subscrRefundType specifies a type of refund.
  • subscrDepositFee is a deposit amount included into the sales order and added as a credit to the customer balance.

Resource Rate Properties

A resource rate configuration in the resources array has the following structure:

{
   "id": <Digital ID unique in the present wizard data>,
   "rtID": <ID of a resource type>,
   "name": <Arbitrary resource rate name>,
   "inCP": <true or false>,
   "instore": <true or false>,
   "incl": <0 or 1>,
   "min": <Lower limit>,
   "max": <Upper limit>,
   "sFeePerUnit": <true or false>,
   "rFeePerUnit": <true or false>,
   "setupFee": <Fee>,
   "recFee": <Fee>
   "overFee": <Fee>,
   "measurable": <true or false>
}

There are the following configuration elements in the above structure:

  • id is the resource rate digital ID unique in the present wizard data.
  • rtID is the ID of a resource type, the resource rate presents.
  • name is an arbitrary name to assign to the resource rate .
  • inCP specifies if the resource must be shown (1) in the customer control panel or not (0).
  • instore specifies if the resource rate must be presented in the online store.
  • incl is the included amount of the resource.
  • min is the lower limit of the resource amount usage.
  • max is the upper limit of the resource amount usage.
  • sFeePerUnit specifies if the setup fee is assigned per the resource unit.
  • rFeePerUnit specifies if the recurring fee is assigned per the resource unit.
  • setupFee specifies the setup fee for the resource or for the resource unit.
  • recFee is the recurring fee (paid once per billing period) for the resource or for the resource unit.
  • overFee is the fee for the resource over the purchased amount. It is valid for measurable resources, where measurable:true.
  • measurable specifies if the resource is measurable (true) or not (false).

Example

{
   "planBillingPeriod": 1,
   "renewOrderInterval": 15,
   "stId": -500008,
   "subscrPeriodType": 2,
   "subscrRefundType": 0,
   "name": "AIW Cloud App Security",
   "subscrPeriod": 1,
   "subscrRenewalFee": 0,
   "id": -20,
   "longDescription": "This is a service plan for testing the Product Initialization Wizard",
   "renewPointDays": 1,
   "subscrRecurringFee": 4.25,
   "subscrDepositFee": 0,
   "shortDescription": "Testing Initialization Wizard",
   "subscrTrial": false,
   "subscrSetupFee": 0,
   "subscrTransferFee": 0,
   "resources": [
      {
         "inCP": false,
         "setupFee": 0,
         "id": -500003,
         "name": "VPS mainstream service profile",
         "overFee": 0,
         "rtID": -500003,
         "max": 1,
         "min": 1,
         "measurable": false,
         "rFeePerUnit": false,
         "instore": false,
         "recFee": 0,
         "sFeePerUnit": false,
         "incl": 1
      },
      {
         "inCP": true,
         "setupFee": 0,
         "id": -500006,
         "name": "VPS CPU Usage counter",
         "overFee": 4.25,
         "rtID": -500006,
         "max": -1,
         "min": 1,
         "measurable": false,
         "rFeePerUnit": true,
         "instore": true,
         "recFee": 4.25,
         "sFeePerUnit": false,
         "incl": 1
      }
   ]
}