Bill Usage at a Custom Price

You can apply a negotiated or custom price to all future usage by a customer. The following contains relevant information about this use case:

Description

Livesplash is a company that offers a video storage and streaming platform subscription. The monthly billing amount for every customer is based on two subscription items:

ItemPrice
Access$50
Streaming Usage$7.50 per 1,000 streams
  1. On June 22nd, a customer contacts Livesplash to explore ways to contain the cost of their subscription, which, due to rapid growth in the customer’s business, has exceeded $10,000 per month.
  2. Concerned that the customer might shift some of their business to a competitor, you negotiate an offer to reduce the customer’s Streaming Usage price to $5.75 per 1,000 streams for all future billings.
  3. After the customer accepts the offer, Livesplash uses an intranet page to change the Streaming Usage item price for the customer’s subscription.
  4. At the end of the day on July 14th, a program running on Livesplash’s system does the following for each subscription with a renewal date of June 15th:
  • Calculates the quantity of usage during the billing interval
  • Uses the Update Subscription Item Price endpoint to update the subscription item’s quantity to 1,360 for 1,360,000 streams used during the billing interval
  1. On July 15th, the customer’s next billing date, the Cleverbridge platform automatically bills the customer $7,870, which is $50 for the Access subscription item plus $7,820 for usage (the quantity of 1,360 times the price of $5.75).

This use case calls the Update Subscription Item Price and the Update Subscription Item API endpoints as described below:

Update the price (first call)

The first call uses the Update Subscription Item Price API endpoint to update the price for the subscription item. If the API call is formatted as described below, it will:

  • Calculate the pro-rated billing amount if the subscription item is updated.
  • Return the pro-rated billing amount in the AlignmentCustomerGrossPrice parameter of the API response (so that it can be provided to the customer).
  • Not change any data in the Cleverbridge system.
ParameterSet to Value
SubscriptionIdThe unique identifier of the subscription.
RunningNumber2 (the Streaming Usage item is the second of two items in the subscription).
AlignmentSettingsAlignToCurrentInterval: false

GetCustomerPricePreviewOnly: false
UpdateActionSee the note below.
CustomerPriceCurrencyId: USD

IsGross: true

Value: 5.75

Update the quantity of usage (second call)

The second call, at the end of the billing interval, uses the Update Subscription Item API endpoint. If the API call is formatted as described below, it will update the subscription item’s price and quantity in the Cleverbridge platform.

ParameterSet to Value
SubscriptionIdThe unique identifier of the subscription.
RunningNumber2 (the Streaming Usage item is the second of two items in the subscription).
ProductIdThe product ID for the Streaming Usage subscription item.
Quantity1360
AlignmentSettingsAlignToCurrentInterval: false

GetCustomerPricePreviewOnly: false
UpdateActionSee the note below.

📘

Note

The UpdateAction parameter is currently used for documentation and tracking only. The value set does not affect transaction processing.

The supported values are as follows:

  • For upgrades, set the parameter to upgrade(or 1 for JSON)
  • For downgrades, set the parameter to downgrade, (or 2 for JSON)
  • For all other changes, set the parameter to update (or 0 for JSON)

Options

Although not utilized in this use case, the following option is also available:

  • Reduce the subscription billing amount by applying a discount coupon that was set up in the Cleverbridge platform.

👍

Tip

Get the customer's consent for changes to subscriptions. For more information, see Best Practices: Obtain Customer Consent.

Illustration