My APS package has a measurable resource:

<resource class="kb" id="diskspace_resource" limiting-setting="diskspace">
    <name>diskspace</name>
</resource>

Is it possible to give the end-user ability to upgrade it in packs? For example 50GB, 100GB, 150GB etc.

Resolution

  1. [POA] Create Resource Types:

    • based on 'Application' Resource Class
    • based on 'Application Resource (KB)' Resource Class
    • if your application has any other resources create them as well
  2. [POA] Create Service Template with Resource Types created on previous step.

  3. [PBA] Create new Resource Category ( Product Director > Resource Manager > Resource Categories), 'Webshop Display Type' should be 'Radio Button'.

  4. [PBA] Create a Composite Resource (Product Director > Resource Manager > Resource) for each choice (50GB/100GB/150GB):

    • Name will be displayed to user during switch, choose something like 'APPLICATION_NAME Diskspace 50GB'
    • Resource category created on step 3
    • Unit of Measure - GB
    • Type - Composite Resource

    Then navigate to 'Included Resources' in created composite resource > 'Add New Included Resource', find the resource you created on step 1 (based on 'Application Resource (KB)' Resource Class), specify amount (for example 50).

    Repeat the steps to create Composite Resources for 100GB and 150GB

  5. [PBA] Create Service Plan Add Resource Rates for composite resources created on step 4, check "Show in CP" and "Show in Store" for all resource rates.

    Since the resources packs can either be enabled or disabled the following limits should be setup:

    • Max units: 1
    • Min units: 0
    • Included units: 0 for all resources other than default.

    So if a 100GB pack should be provisioned when the subscription is provisioned 'included units' of this resource rate should be set to 1, the rest should be set to 0.

  6. To test the setup create an order for a customer, install application, navigate to Account > Buy Additional Resources, you should see a list of choices like this:

Upsell

Internal content

Link on internal Article