Configuring Offers

This section describes how to configure Office 365 offers.

Important: Before configuring Office 365 offers, you must read Restrictions and Limitations.

The Office 365 application supports two types of offers: License and Add-on. The term License denotes an offer that can be ordered separately or in combination with a compatible offer. The term Add-on denotes an offer that requires a subscription to another offer (parent) and cannot be ordered separately.

There are two groups of offers in the Microsoft cloud: offers that support only monthly billing frequency, and offers that support both monthly billing frequency and yearly billing frequency. For offers of the first group, you can create service plans with only monthly billing periods (the Billing Period setting is set to Monthly). For offers of the second group, you can create service plans with monthly billing periods (the Billing Period setting is set to Monthly) or yearly billing periods (the Billing Period setting is set to either Yearly or Custom <a number of years> Year(s)).

Notes:

1. Microsoft did not release new separate yearly offers, only enabled yearly billing frequency for some existing CSP offers without changing their Offer IDs. You can see offers that support yearly billing frequency in your latest Cloud Reseller Offer Matrix.

2. If you plan to have several Office 365 application instances on your installation, make sure that the names of resource types, service templates, and service plans that belong to those application instances conform with one of the following naming schemes: (1) The names of resource types, service templates, and service plans of one application instance have no prefix. The names of resource types, service templates, and service plans of the other application instances have unique prefixes that end with a colon (:). For example: No prefix is used for the first application instance; O365INST2: and O365INST3: are used for the second and the third. (2) The names of resource types, service templates, and service plans of each application instance have unique prefixes that end with a colon (:). For example: O365INST1: is used for the first application instance; O365INST2: is used for the second application instance.

3. The application supports only the Edit Configuration mode of the Product Configuration Manager (PCM). This means that you must perform the initial configuration of Office 365 offers either manually or automatically with the autoconf.py script, as described in this guide. After you perform the initial offer configuration, you can use any suitable means to reconfigure your offers: manual reconfiguration, automated reconfiguration with the autoconf.py script, or using the Edit Configuration mode of the PCM.

General Procedure

The offer configuration procedure consists of the following steps:

  1. Creating license types. See Creating License Types for details.
  2. Creating add-on types. See Creating Add-on Types for details.
  3. Creating Office 365 resource types. See Creating Office 365 Resource Types for details.
  4. Creating the Office 365 service template. See Creating Office 365 Service Template for details.
  5. Creating Office 365 service plans. See Creating Office 365 Service Plans for details.
  6. Creating Office 365 resource and sales categories. See Creating 'Office 365' Resource and Sales Categories for details.
  7. Setting up units of measure for Office 365 License and Office 365 Add-on resources. See Setting Up Units of Measure for 'Office 365 License' and 'Office 365 Add-on' Resources for details.

Automated Procedure

To configure offers automatically, perform the following actions:

  1. Prepare the CSP Deployment Assistant tool:

    1. Download the latest file of the CSP Deployment Assistant tool from https://www.dropbox.com/sh/flvexj79k532lma/AADVZXXgraLg7DbQilkqYnf1a?dl=0 to your workstation (Office365DeploymentAssistant.x.x.x.xlsx for Microsoft Cloud or Office365DeploymentAssistant.CN.x.x.x.xlsx for Office 365 operated by 21Vianet in China).
    2. Run the CSP Deployment Assistant tool.
  2. Prepare the offer auto-configuration script autoconf.py:

    1. Upload the Office 365 application package to the OA Operations Management Node.
    2. Unpack the package and extract the contents of the O365-Import.zip file.
    3. Go to the directory where the contents of the extracted O365-Import.zip file are located.
    4. Unpack the simplejson-2.3.2.tar file.
    5. Go to the simplejson-2.3.2 directory.
    6. Execute the python setup.py install command.
    7. Return to the parent directory.

    Important: If the version of Python on the OA Operations Management Node is older than 2.7.5, perform this step on the separate host. See the Prerequisites section for details. Also, set the corresponding values for the __dbhost, __dbname, __dbuser, __dbpass, __apihost parameters in the api_entry.py file.

  3. Create the following files using the instructions of the CSP Deployment Assistant tool:

    • CustomLicenseTypes.json (see the tab CSPLicenseTypes.json of the CSP Deployment Assistant tool)
    • CustomResourceCategories.json (see the tab CustomResourceCategories.json of the CSP Deployment Assistant tool)
    • CustomSalesCategories.json (see the tab CustomSalesCategories.json of the CSP Deployment Assistant tool)
    • CustomServicePlans.json (see the tab CSPServicePlans.json of the CSP Deployment Assistant tool)

    Place these files in the directory where the offer auto-configuration script autoconf.py is prepared.

    Note: We recommend that you check the files using a JSON validation tool. For example, you can use http://jsonlint.com/.

  4. Obtain the application instance ID of the required instance of the Office 365 application:

    1. In the Provider Control Panel, go to Services > Applications and open the APS Connectors tab.
    2. In the list of applications, click the Office 365 application.
    3. Select the Instances tab.
    4. Write down the identifier of the required instance.
  5. Specify the prepared application instance ID in the CSP Deployment Assistant tool.
  6. Execute the first auto-configuration script command provided in the CSP Deployment Assistant tool to create the add-on types, license types, Office 365 resource types, and the Office 365 service template. For example:

    python autoconf.py --license-types-json CustomLicenseTypes.json --resource-categories-json CustomResourceCategories.json --sales-categories-json CustomSalesCategories.json --service-plans-json CustomServicePlans.json --o365-app-instance-id 1

  7. Prepare a service plan that will be used as a template for Office 365 service plans. Make sure the following preconditions are satisfied:

    • The service plan is based on the Office 365 service template.
    • The service plan must have one subscription period (1 Year).
    • The Service Terms property of the service plan is set to Office 365. See the Creating the 'Office 365' Service Terms section for details.
    • The Auto-Renewal property of the service plan is enabled and configured.

    Write down the service plan ID of the service plan.

  8. Specify the prepared service plan ID of the template service plan in the CSP Deployment Assistant tool.
  9. Execute the second auto-configuration script command provided in the CSP Deployment Assistant tool to create Office 365 resource categories, sales categories, and service plans. For example:

    python autoconf.py --license-types-json CustomLicenseTypes.json --resource-categories-json CustomResourceCategories.json --sales-categories-json CustomSalesCategories.json --service-plans-json CustomServicePlans.json --o365-app-instance-id 1 --pba-stub-plan-id 100000 --langs en,de,fr

  10. Include the PBA resource type in the newly created Office 365 service template. The resource limit must be set to Unlimited.

    Note: The PBA resource type must be included if you need integration between the Office 365 application and OA Billing. This integration enables customers to adjust license limits and upgrade licenses from the application screen located at Office 365 > Licenses. If you do not need this integration, do not include the resource type in the Office 365 service template.

  11. Adjust the Microsoft 365 A1 service plan created by the script:

    1. Rename the service plan from its original name to Microsoft 365 A1 (1 license).
    2. Set Auto-Renewal to Disabled.
    3. Make sure that the duration of the subscription period is set to 6 Years.
    4. In the subscription period, set Setup Fee to 1 * <price per Microsoft 365 A1 license>, and then set Recurring Fee to 0.00.
    5. In the resource rate, set Inc. Amount, Min Amount, and Max Amount to 1.
    6. In the resource rate, set Setup Fee and Recurring Fee to 0.00.
    7. Since quantity upgrades are not supported for subscriptions to the Microsoft 365 A1 offer, create a few copies of the service plan for different included amounts (Microsoft 365 A1 (2 license), Microsoft 365 A1 (3 license), and so on). In each copy, in its subscription period, set Setup Fee to <number of included licenses> * <price per Microsoft 365 A1 license>; in its resource rate, set Inc. Amount, Min Amount, and Max Amount to <number of included licenses>.
  12. Validate properties of the created Office 365 service plans.

Notes:

1. If the version of Python on the OA Operations Management Node is older than 2.7.5, the offer auto-configuration script autoconf.py must be executed on the separate host. See the Prerequisites section for details.

2. You can use the --prefix option to add a prefix to the names of Office 365 resource types, Office 365 service templates, and Office 365 service plans that are created by the script. For example, if the ABC prefix is specified, the names will start with ABC:.

3. If HTTP authentication is turned on for the Odin Automation Public API, you must specify the name and password of an Odin Automation Public API user by using the --oa-api-user and --oa-api-user-password options of the script. We recommend that you specify the name and password of the user that you created during the deployment of the application (see the Preparing an Odin Automation Public API User section for details).

4. You can create your custom license types, add-on types, Office 365 resource types, Office 365 service templates, and Office 365 service plans by using the respective JSON files as templates.

5. See the Examples of Office 365 Service Plans section to obtain the complete example of the standard Office 365 offer configuration.

6. The script, in addition to sending log output to the console, writes log output to the log file autoconf_YYYY-MM-DD.log located in the same directory as the script. We recommend that you check the log file after running the script.

7. By default, in all Office 365 service plans created by the script, the Notification About Service Provisioning parameter is set to Welcome e-mail - Office 365. As a result, customers will receive certain email messages after subscribing to those Office 365 service plans. The contents of those email messages are defined in the Welcome e-mail - Office 365 system notification template and are the same for both CCP v1 and UX1 for Customers. If you need to customize those email messages, you can either customize that notification template or create your own notification templates for Office 365 service plans. Please refer to the Billing Provider Guide to learn more about notification templates and their configuration.

It is possible to run the script many times for existing installations of the Office 365 application. For instance, you can create custom configuration files containing new offers and run the script for your installation containing already configured offers. In this case, the script does the following:

  1. It creates license types for new offers.
  2. It creates add-on types for new add-on offers.
  3. It updates the lists of upgrades of all license types.
  4. It updates the lists of parent offers of all add-on types.
  5. It creates resource types for new offers and add-on offers.
  6. It updates the corresponding Office 365 service template.
  7. It creates Office 365 service plans for new offers.
  8. It updates the lists of allowed upgrades of all Office 365 service plans.

Note: If you have used a prefix for the initial offer configuration of an application instance, you must use the same prefix for further offer reconfiguration of that application instance. To view the prefix of resource types, service templates, and service plans that were created for a specific application instance, you can use this command: python autoconf.py --o365-app-instance-id <id> --search-prefix.

Manual Procedure

To configure offers manually, use the instructions provided in the sections below.

Note: See the Examples of Office 365 Service Plans section to obtain the complete example of the standard Office 365 offer configuration.