When Renewal Execution Mode is set to OnDemand, CPQ automatically renews all assets on the account (possibly from different agreements) based on the defined Renewal Lead Time after you click a custom button on the account. You may want to renew an existing opportunity in OnDemand renewal mode:

  • During one-time legacy asset data migrations
  • During one time renewal agreement creation for existing active asset base
  • When minimal changes are required on the renewal agreements because of any ABO changes

The following diagram describes the flow of OnDemand renewals. In this diagram, Renewal Lead Time is 120 days.

Over a period of time, you sell some products/services through different agreements, which might have varying end dates. After the original agreements are converted into orders and the order are activated, assets are generated. All assets are visible on the account. When you want to renew the assets that will expire in 120 days from today, you click the custom button on the account. CPQ compares the asset line items' end dates with the Renewal Lead Time defined and triggers the creation of renewal agreements for all those assets (from different agreements) that will expire in 120 days.


  • The Renewal Business Object Type is set to Agreement.
  • The Renewal Execution Mode is set to OnDemand.
  • The custom button is created on the account.
  • The Renewal Lead Time is defined.
  • The Renewal Group Fields are defined.
  • The AssetRenewalJobScheduler batch job is scheduled.

How OnDemand Renewal Mode Works

  1. In the Salesforce org, select Apttus Contract Management.
  2. Create an agreement.

  3. Add products to the cart and finalize it.
  4. Click Generate to generate an agreement document.
  5. After the negotiations are complete with your customer, click Activate to bring the agreement in effect.
  6. After you activate the order, assets are generated. The assets are active and visible on the account.
  7. Click the custom button on the account when you want to trigger the creation of renewal agreements.
  8. CPQ creates renewal agreements based on the defined Renewal Lead Time, considering the expiry date of assets (from different agreements).
    By default, CPQ groups asset line items by Account and the Price List. However, if other parameters are configured in Renewal Group Fields, CPQ groups asset line items accordingly. If some assets had Auto Renew flag set to True or False, there will be two renewed agreements: one for the asset lines with Auto Renew = True and the other for asset lines with Auto Renew = False.

    Renewal agreement that has assets with Auto Renew = True: On the expiry date of the asset, CPQ automatically processes the renewal agreement and renews the asset for the next term. The agreement will be automatically set to Accepted without any intervention (this is called Touchless Renewal).

    Renewal agreement that has assets with Auto Renew = False: You need to manually process the agreement.

    After CPQ triggers renewal agreement creation, on the Account page, the renewed asset groups are listed under Temp Renew Asset Groups in the New status. After the AssetRenewalJobScheduler job is executed, the status of asset groups changes to Completed and the renewal agreement is created. The name of the renewal agreement will be Renew:<name_of_price_list>-<agreement_end_date>.

  9. When you configure products in this renewal agreement, CPQ takes you to the Cart page directly where assets with renewed Start Dare, End Date, and Selling Term are available. The Line Status of assets is Renewed and asset pricing calculated according to the renewed Start Dare, End Date, and Selling Term.

    On the new renewal agreement, the Start Date = Parent agreement's End Date + 1 and End Date = New Start Date + Selling Term.

    The Approval Stage of the agreement is marked back to Draft allowing you to perform any changes to the renewal configuration. Any change or update to the assets are reflected in the opportunity based renewal agreement.

  10. Add products to the cart if required.
  11. Click Finalize to navigate back to the agreement.
  12. Click Generate to generate an agreement document.
  13. After you accept the agreement, an order is generated.