Combine Longer Billing Interval with Early Renewal (Monthly to Yearly)

A great way to grow your revenue is to convince your current customers that they should not only renew immediately, but upgrade to a longer plan. This makes customer churn less likely. To enable customers to upgrade to longer plans and renew early, integrate the following flow into your system:

Step 1: Show customer price of upgrade and immediate renewal

If a customer has a single-item subscription and would like to upgrade and start a new billing interval, call the Update Subscription Item API endpoint to generate a preview of the price that the customer will pay for the new plan. In the API call, do the following:

  • Submit the ProductId that belongs to the annual product.
  • Set AlignToCurrentInterval and GetCustomerPricePreviewOnly to true in the AlignmentSettings argument and set GenerateMail to false to generate a preview that will not be processed or communicated via email.
  • Set UpdateAction to Upgrade for reporting purposes.
  • Set ExtendInterval to true to apply the new renewal date.
curl --request POST \
  --url https://rest.cleverbridge.com/subscription/updatesubscriptionitem \
  --header 'accept: application/json' \
  --header 'content-type: application/json' \
  --header 'authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
  --data '{
    "AlignmentSettings": {
      "AlignToCurrentInterval": true,
      "ExtendInterval": true,
      "GetCustomerPricePreviewOnly": true
    },
    "GenerateMail": false,
    "ProductId": 123456,
    "Quantity": 1,
    "RunningNumber": 1,
    "SubscriptionId": "S12345678",
    "UpdateAction": "Upgrade"
  }'

For more information about the AlignmentSettings argument, see Alignment Settings.

Step 2: Process upgrade for customer

After the customer confirms the previewed price, set GetCustomerPricePreviewOnly to false in the AlignmentSettings argument and set GenerateMail to true. Call the Update Subscription Item API endpoint again. Cleverbridge will process the upgrade using the payment details that we have stored in our database and send a confirmation email to the customer.

curl --request POST \
  --url https://rest.cleverbridge.com/subscription/updatesubscriptionitem \
  --header 'accept: application/json' \
  --header 'content-type: application/json' \
  --header 'authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
  --data '{
    "AlignmentSettings": {
      "AlignToCurrentInterval": true,
      "ExtendInterval": true,
      "GetCustomerPricePreviewOnly": false
    },
    "GenerateMail": true,
    "ProductId": 123456,
    "Quantity": 1,
    "RunningNumber": 1,
    "SubscriptionId": "S12345678",
    "UpdateAction": "Upgrade"
  }'

Step 3: Cleverbridge sends you a PaidOrderNotification

For more information, see Step 3: Cleverbridge sends you a PaidOrderNotification in Combine Upgrade with Early Renewal (Basic to Premium).