Combine an Upgrade with an Early Custom-Price Renewal of a Data-Limited Subscription
retain-phase-combine-upgrade-with-early-full-price-renewal-of-data-limited-subscription
If a customer's subscription's data-limit is expired, and they wish to upgrade to a custom-priced plan with a higher data limit and immediately renew their subscription to continue using your service, follow the steps below to renew their subscription:
Step 1: Show customer custom price of upgrade and immediate renewal
Call the Update Subscription Item API endpoint to generate a preview of the price that the customer will pay for the upgrade and renewal. In the API call, do the following:
- Submit the
SubscriptionIdthat belongs to the customer's subscription. - Submit the
ProductIdthat belongs to the product that the customer would like to upgrade to. - Set
GetCustomerPricePreviewOnlytotruein theAlignmentSettingsargument and setGenerateMailtofalseto generate a preview that will not be processed or communicated via email. - Set the price that the customer will pay for the renewal in the
CustomerPriceargument. - Set
TriggerImmediateRenewaltotrueto trigger the renewal immediately. - Set
ResetBillingIntervaltotrueso that a new billing interval starts immediately. - Set
UpdateActiontoUpdatefor reporting purposes.
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": false,
"ExtendInterval": false,
"GetCustomerPricePreviewOnly": true
},
"CustomerPrice" : {
"CurrencyId": USD,
"IsGross": true,
"Value": 215
}
"GenerateMail": false,
"ProductId": 123451,
"Quantity": 1,
"RunningNumber": 1,
"SubscriptionId": "S12345678",
"TriggerImmediateRenewal": true,
"ResetBillingInterval" : true,
"UpdateAction": "Update"
}'
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": false,
"ExtendInterval": false,
"GetCustomerPricePreviewOnly": false
},
"CustomerPrice" : {
"CurrencyId": USD,
"IsGross": true,
"Value": 215
}
"GenerateMail": true,
"ProductId": 123451,
"Quantity": 1,
"RunningNumber": 1,
"SubscriptionId": "S12345678",
"TriggerImmediateRenewal": true,
"ResetBillingInterval": true,
"UpdateAction": "Update"
}'
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).
Updated over 2 years ago