Manage Flexible Discounts

Partners can get flexible discounts for a product in a specific market segment and country. These discounts can be applied while placing the order or creating a subscription. For detailed guidance on managing Flexible Discounts through APIs, refer to Manage Flexible Discounts using APIs.

Testing flexible discounts in Sandbox

You can explore and test the Flexible Discounts feature in the Sandbox environment using the following options:

View the available flexible discounts

Go to Portal Resources > View Available Flex Discounts to view the available flexible discounts, as shown in the following figure:

Available Flexible Discounts

You can view Flexible Discounts applicable for all countries by selecting All Countries, as shown in the following figure:

All countries option

The UI displays a list of current discounts, including the following details:

You can use the discount code while placing an order using the Create Order API.

Note: In the Sandbox environment, Flexible Discounts that include the term "FAILURE" in both the name and the code are specifically intended for validating failure scenarios. These codes are designed to always fail when used in PREVIEW and NEW order flows. All other discount codes can be used to validate successful application scenarios. Example:

Flex discounts with name and code with the term FAILURE in it

Edit reusable flexible discounts

Reusable flexible discounts allow partners to continue using a discount for a customer even after the discount end date, provided the discount is still within its discount lock end date and the customer has already used the discount before the original end date.

The discount lock end date is exposed in the Get Flexible Discounts API response and in the UI for reusable flexible discounts:

Edit reusable flexible discounts

Partners can edit the end date of reusable flexible discounts of customers belong to them. This capability allows partners to continue using a reusable discount after its end date but before the discountLockEndDate. You can modify the end date of a reusable discount in the Edit Reusable Flex Discounts tab, as described in the workflow below. The updated end date must be later than the flexible discount start date and earlier than the discountLockEndDate.

Note: The time displayed in the UI, the Get Flexible Discounts API, and the Get Orders API is in UTC.

Workflow to reuse a flexible discount after its end date

To allow a customer to continue using a reusable flexible discount after its end date but before the discount lock end date, partners can perform the following steps:

  1. Discover reusable flexible discounts

    Use the Get Flexible Discounts API and identify reusable flexible discounts by checking the presence of the discount lock end date.

  2. Use the flexible discount before its end date

    Place an order for the customer using the reusable flexible discount before the discount end date.

  3. Update the discount end date using the UI

    After the order is completed, go to Portal Resources > View Available Flex Discounts > Edit Reusable Flex Discounts.

  4. Select the relevant reusable flexible discount and update its end date to a date that is later than the order creation date.

  5. Reuse the flexible discount after its end date

    Even though the discount end date has passed, the reusable flexible discount can still be used for the same customer as long as the current date is before the discount lock end date.

  6. Also customer can do PREVIEW_RENEWAL without line items to see how reusable discount is auto applied in preview renewal response, and can later enjoy same discount in Auto renewal order.

Example for editing the end date of reusable flexible discounts:

Note: The time displayed in the Edit Reusable Flex Discounts UI tab, the Get Flexible Discounts API, and the Get Orders API is in UTC.

Create, view, and manage closed discounts

Closed discounts are discounts that are not returned by default in the Get Flexible Discount API. However, you can retrieve a closed discount through the GET Flexble Discount API by searching with the specific discount code.

In the Sandbox environment, you can browse the available closed discount templates, create closed discount codes for your customers based on those templates, and manage those codes by navigating to the following tabs under Portal Resources > View Available Flex Discounts:

View closed discount templates

The Closed Discount Templates tab displays the closed discount templates available for closed discount creation. Select a market segment, such as COM, to view the templates available for that segment.

Closed discount templates

The list includes the following columns:

Note: Templates with FAILURE in the label are always-fail variants intended for validating failure of order scenarios.

View closed discount codes

The Closed Discounts (Customer-Specific) tab lists all closed discount codes created by your distributor, across all customers and statuses. The list includes the following columns:

Closed discount codes

Search and filter

You can search and filter closed discount codes by code, customer ID, label, template ID, or status. Searches are case-insensitive and support partial matches.

Create a closed discount code

To create a closed discount code:

  1. On the Closed Discounts (Customer-Specific) tab, select Create Closed Discount Code. The Create Closed Discount Code dialog opens.

    Closed Discount Dialog

  2. Complete the following fields:

    • Market Segment
    • Customer ID
    • Flex Discount Template
    • Expiry Date and Expiry Time
  3. Select Create.

  4. After the code is created successfully, the Closed Discount Code Created dialog displays the generated discount code and the Customer ID, each with a copy button. Select Done to close the dialog.

    Closed discount code created

  5. If an active code already exists for that customer and template, the same code is returned with an Existing Code Returned message, showing the existing active code and customer ID.

    Existing code returned

    Code reuse message

You can use the generated code while placing an order using the Create Order API. Depending on the renewal preferences, you can also use the code with the Update Subscription API.

Note: Customer specific closed discount codes are unique to a customer can only be used by the customer for whom they were generated.

Delete a closed discount code

To delete a closed discount code, select Delete for the corresponding code in the Closed Discounts (Customer-Specific) tab.

You can delete closed discount codes in any redemption status, including ACTIVE, REDEEMED, and EXPIRED. Deleting unused or no longer needed codes helps free up available slots for creating new closed discount codes.

Note: A distributor can have a maximum of 20 closed discount codes in the Sandbox environment at any given time, across all customers and redemption statuses. If you reach this limit, delete one or more existing closed discount codes before creating additional codes.

Error messages

When creating a closed discount code, you may encounter the following validation errors:

View flexible discounts applied to an Order

If a Flexible Discount is applied during order placement, its details can be viewed from the Order screen. For example, in Manage Records > Orders, the discount information appears within the lineItems section, as illustrated in the following figure:

View Flexible Discounts applied to an order

The flexDiscounts section displays the discount code and indicates whether it was successfully applied to the order.

View flexible discounts applied to a Subscription

In Manage Records > Customers, the subscription details display any flexible discounts applied for the upcoming renewal. Points to note:

Flexible discounts for 3YC and mid-term upgrades

You can test 3YC and mid-term upgrade (also known as anytime upgrade) discounts in Sandbox. Unlike the discounts that were originally on the sandbox that always succeed or always fail, these discounts will have slight validations associated with them to ensure you are integrating with the new criteria correctly.

Read more about the 3YC eligibility critera and mid-term eligibility criteria.