Knowledge Center

Knowledge Center > Subscriptions > Orders > Orders Tutorials > Create a Subscription

Create a Subscription

This feature is only available if you have the Orders feature enabled. We are actively soliciting feedback from a small set of early adopters. If you wish to have access to the feature, submit a request at Zuora Global Support.

This tutorial demonstrates how to create a subscription by creating an order. You will set the duration of the first term to be 12 months. You will also set the duration of the renewal term to be 12 months.

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 subscription
  • The service activation date of the subscription
  • The customer acceptance date of the subscription
  • The start date of the first term of the subscription

Use the Zuora Application

To create a subscription by creating an order in the Zuora application:

  1. Navigate to Customers > Orders.

    The Orders page opens.

  2. Click "+" at the top right:


    The Create New Order page opens.

  3. In the Account field, enter the name of the account that will own the order.

    By default, the account that owns the order will also own the subscription.

  4. Click Create New Subscription.

  5. In the Initial Term and Renewal Term fields, enter 12:


  6. Click Continue.

  7. In the Products and Charges area, search for the name of a product, then click Add to select a rate plan:


    You can select more than one rate plan. If you select a rate plan by mistake, click Add again to deselect the rate plan.

  8. Click Add Product at the bottom of the page.

    You can then modify the charges in the selected rate plan by clicking more details underneath each charge name.

  9. Click Continue.

    Zuora displays an overview of the order.

  10. Click Active to activate the order.

Use the REST API

You can use the "Create and activate order" operation to create a subscription.

Prior to the Orders feature being enabled, you would have used the "Create subscription", "Subscribe", or "Create account" operation.

To create a subscription by creating an order:

  1. Determine the values of the following variables:

    Variable Description
    $AccountNum The number of the account that will own the order and the subscription. For example, A00000001.
    $ProductRPId The ID of the product rate plan to subscribe to. For example, 2c92c0f85e5019d7015e513826e650f7.
    $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": [
          "orderActions": [
              "type": "CreateSubscription",
              "triggerDates": [
                  "name": "ContractEffective",
                  "triggerDate": "$Today"
                  "name": "ServiceActivation",
                  "triggerDate": "$Today"
                  "name": "CustomerAcceptance",
                  "triggerDate": "$Today"
              "createSubscription": {
                "terms": {
                  "initialTerm": {
                    "startDate": "$Today",
                    "period": 12,
                    "periodType": "Month",
                    "termType": "TERMED"
                  "renewalTerms": [
                      "period": 12,
                      "periodType": "Month"
                "subscribeToRatePlans": [
                    "productRatePlanId": "$ProductRPId"
      "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 new 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.

Last modified


This page has no custom tags.


(not set)