Skip to main content

Update a Product in a Subscription


Update a Product in a Subscription

The migration to full Orders is in Limited Availability. We are actively soliciting feedback from a small set of early adopters before releasing as generally available.

This tutorial demonstrates how to update a product in a subscription by creating an order. See Which product fields can I update? for the product fields you can update.

In this tutorial, you will set the following dates to today's date:

  • The date when the order is signed
  • The contract effective date of the product update
  • The service activation date of the product update
  • The customer acceptance date of the product update

Use the Zuora Application

To update a product to a subscription by creating an order in the Zuora application:

  1. Navigate to Customers > Orders.

    The Orders page opens.

  2. Click the CreateOrderIcon.png icon at the top right:


    The Create New Order page opens.

  3. In the Account field, specify the name of the account that will own the subscription. You can toggle between the Search by Account Name and 
    Specify complete Account Number radio buttons to choose the way of specifying an account.

  4. Click Modify Existing Subscription.

  5. In the Select an Existing Subscription area, search for the subscription to which you are to add products, then click Select to select a subscription.


  6. In the Subscriptions Details area, click the Included Products tab to display all the product rate plans previously selected in the subscription.

  7. Click the OptionIcon.png icon next to the product rate plan you are to update, then click Update Product.


    The Order Overview page opens.

  8. Specify Contract Effective DateService Activation Date, and Customer Acceptance Date for the operation. See Billing Trigger Dates for more information. 

  9. In the Products and Charges area, navigate to the charge to update, then update the appropriate charge fields, for example, PRICE, QUANTITY, and so on.


    Alternatively, you can click more details underneath a charge to display more charge information for a change. All the fields in green are available for updates.


  10. Click Continue.

    Zuora displays an overview of the order.

  11. Click Activate to activate the order.

Use the REST API

You can use the "Create and activate order" operation to update a product in a subscription.

Prior to the Orders feature being enabled, you would have used the "Update subscription", "Amend", or "CRUD: Create amendment" operation.

To update a product in a subscription by creating an order:

  1. Determine the values of the following variables:

    Variable Description
    $SubscriptionNum The number of the subscription to update. For example, A-S00000001.
    $AccountNum The number of the account that will own the order. For example, A00000001.
    $RPId The ID of the rate plan to update in the subscription. For example, 2c92c0f85d7d53d3015dac494dfc5cbf.
    $ChargeNum The number of the charge to update in the rate plan. For example, C-00000020.
    $Today Today's date. For example, 2017-09-30.
  2. Use the "Create and activate order" operation to create an order under an existing account:

    Request POST /v1/orders/
    Request Body
      "orderDate": $Today,
      "existingAccountNumber": $AccountNum,
      "subscriptions": [
          "subscriptionNumber": $SubscriptionNum,
          "orderActions": [
              "type": "UpdateProduct",
              "triggerDates": [
                  "name": "ContractEffective",
                  "triggerDate": $Today
                  "name": "ServiceActivation",
                  "triggerDate": $Today
                  "name": "CustomerAcceptance",
                  "triggerDate": $Today
              "updateProduct": {
                "ratePlanId": $RPId,
                "chargeUpdates": [
                    "chargeNumber": $ChargeNum,
                    "pricing": {
                      "recurringVolume": {
                        "quantity": 50
      "processingOptions": {
        "runBilling": false,
        "collectPayment": false

    To create the order under a new account instead of an existing account, specify the newAccount field instead of the existingAccountNumber field.

To preview invoices for the updated subscription, use the "Preview order" operation.

SOAP Migration Guidance

When the Orders feature is enabled in your Zuora tenant, the SOAP API is not available. You must migrate any SOAP integrations to use the REST API instead. See Migrating From the SOAP API for the SOAP equivalent of this tutorial.