Community News

Expand all | Collapse all

Decoupling Metrics from Orders

  • 1.  Decoupling Metrics from Orders

    Posted 02-21-2020 10:00

    As of Sept 2019, we introduced the capability to remove the dependency of generating Order Metrics from the creation of the Order itself.

     

    This is an enhancement to the product, where previously the generation of an Order and its associated metrics were tightly coupled together, and failure in metrics generation also led to failure in Order generation. After this change, Orders will be created even when metrics generation fails.

     

    The main goal of this enhancement is to unblock your business so that issues in metrics generation do not block you from processing orders. A side effect will be the absence of metrics for Orders where metrics generation fails.

     

    When metrics are generated successfully, this is an example of what you might see:
    {
        "success": true,
        "order": {
        "orderNumber": "O-00000005",
        "orderDate": "2020-02-01",
        "createdDate": "2020-01-19 01:44:52",
        "createdBy": "402881e522cf4f9b0122cf5d82860002",
        "updatedDate": "2020-01-19 01:44:52",
        "updatedBy": "402881e522cf4f9b0122cf5d82860002",
        "existingAccountNumber": "A00000001",
        "currency": "USD",
        "status": "Completed",
        "subscriptions": [
        {
           "subscriptionNumber": "A-S00000002",
           "customFields": {},
           "baseVersion": 1,
           "newVersion": 2,
           "orderActions": [
           {
           "type": "UpdateProduct",
           "sequence": 0,
           "triggerDates": [
              {
              "triggerDate": "2020-02-01",
              "name": "ContractEffective"
              },
              {
              "triggerDate": "2020-02-01",
              "name": "ServiceActivation"
              },
              {
              "triggerDate": "2020-02-01",
              "name": "CustomerAcceptance"
              }
           ],
           "updateProduct": {
              "ratePlanId": "402880e66fbc10d3016fbd2fadc93cae",
              "uniqueToken": null,
              "specificUpdateDate": null,
              "newRatePlanId": "402880e66fbc10d3016fbd3082c73ccf",
              "productRatePlanId": "402880e66fbc10d3016fbd2ea5da3ca4",
              "chargeUpdates": [],
              "customFields": {}
           },
           "customFields": {},
           "orderItems": [
              {
              "id": "402880e66fbc10d3016fbd30db733ce1",
              "startDate": "2020-02-01",
              "endDate": "2020-11-30",
              "quantity": 10,
              "orderActionId": "402880e66fbc10d3016fbd30d9543cdf",
              "scId": "402880e66fbc10d3016fbd3082c73cd0"
              }
           ],
           "orderMetrics": [
              {
              "productRatePlanChargeId": "402880e66fbc10d3016fbd2f20ee3ca6",
              "originRatePlanId": "402880e66fbc10d3016fbd2fadc93cae",
              "tcb": [
              {
                 "subscriptionOwner": "A00000001",
                 "invoiceOwner": "A00000001",
                 "amount": 1000,
                 "endDate": "2020-11-30",
                 "orderItemId": "402880e66fbc10d3016fbd30db733ce1",
                 "termNumber": 1,
                 "generatedReason": "IncreaseQuantity",
                 "type": "Regular",
                 "startDate": "2020-02-01"
              }
              ],
              "quantity": [
              {
                 "subscriptionOwner": "A00000001",
                 "invoiceOwner": "A00000001",
                 "amount": 10,
                 "endDate": "2020-11-30",
                 "orderItemId": "402880e66fbc10d3016fbd30db733ce1",
                 "termNumber": 1,
                 "generatedReason": "IncreaseQuantity",
                 "startDate": "2020-02-01"
              }
              ],
              "productRatePlanId": "402880e66fbc10d3016fbd2fadb23cab",
              "tcv": [
              {
                 "subscriptionOwner": "A00000001",
                 "invoiceOwner": "A00000001",
                 "amount": 1000,
                 "endDate": "2020-11-30",
                 "orderItemId": "402880e66fbc10d3016fbd30db733ce1",
                 "termNumber": 1,
                 "generatedReason": "IncreaseQuantity",
                 "type": "Regular",
                 "startDate": "2020-02-01"
              }
              ],
              "chargeNumber": "C-00000002",
              "elp": [
              {
                 "subscriptionOwner": "A00000001",
                 "invoiceOwner": "A00000001",
                 "amount": 1000,
                 "endDate": "2020-11-30",
                 "orderItemId": "402880e66fbc10d3016fbd30db733ce1",
                 "termNumber": 1,
                 "generatedReason": "IncreaseQuantity",
                 "type": "Regular",
                 "startDate": "2020-02-01"
              }
              ],
              "mrr": [
              {
                 "subscriptionOwner": "A00000001",
                 "invoiceOwner": "A00000001",
                 "amount": 100,
                 "endDate": "2020-11-30",
                 "orderItemId": "402880e66fbc10d3016fbd30db733ce1",
                 "termNumber": 1,
                 "generatedReason": "IncreaseQuantity",
                 "type": "Regular",
                 "startDate": "2020-02-01"
              }
              ]
              }
           ]
           }
           ]
        }
        ],
        "customFields": {}
        }
    }

     


    If metrics generation fails, then the following will be present instead:
    {
        "success": true,
        "order": {
        "orderNumber": "O-00000006",
        "orderDate": "2020-02-04",
        "createdDate": "2020-01-19 01:49:37",
        "createdBy": "402881e522cf4f9b0122cf5d82860002",
        "updatedDate": "2020-01-19 01:49:37",
        "updatedBy": "402881e522cf4f9b0122cf5d82860002",
        "existingAccountNumber": "A00000001",
        "currency": "USD",
        "status": "Completed",
        "subscriptions": [
        {
           "subscriptionNumber": "A-S00000002",
           "customFields": {},
           "baseVersion": 2,
           "newVersion": 3,
           "orderActions": [
           {
           "type": "UpdateProduct",
           "sequence": 0,
           "triggerDates": [
              {
              "triggerDate": "2020-02-04",
              "name": "ContractEffective"
              },
              {
              "triggerDate": "2020-02-04",
              "name": "ServiceActivation"
              },
              {
              "triggerDate": "2020-02-04",
              "name": "CustomerAcceptance"
              }
           ],
           "updateProduct": {
              "ratePlanId": "402880e66fbc10d3016fbd3082c73ccf",
              "uniqueToken": null,
              "specificUpdateDate": null,
              "newRatePlanId": "402880e66fbc10d3016fbd34e0ea3cf1",
              "productRatePlanId": "402880e66fbc10d3016fbd2ea5da3ca4",
              "chargeUpdates": [],
              "customFields": {}
           },
           "customFields": {},
           "orderItems": [],
           "orderMetrics": []
           }
           ]
        }
        ],
        "customFields": {}
        }
    }

     

    This feature will be turned on over the next month for tenants that had Orders enabled after Sept 2019, without requiring any action on your part. If your tenant had Orders enabled prior to that, please contact Zuora Global Support to enable this feature.

     

    Notes:

    1. If you do not use the OrderItem and OrderElp fields, we strongly suggest turning off those fields completely. This will ensure that the metrics generation never fails. Contact Zuora Global Support to turn off these fields.
    2. For further details and to enable decoupling of metrics from Orders, please contact Zuora Global Support.

     

     

     


    #Announcement


  • 2.  Decoupling Metrics from Orders

    Posted 05-27-2021 23:16

    The following Order Metrics have been deprecated. Any new customers who onboard on Orders or Orders Harmonization will not get these metrics.

    • The Order ELP and Order Item objects
    • The "Generated Reason" and "Order Item ID" fields in the Order MRR, Order TCB, Order TCV, and Order Quantity objects

    Existing Orders customers who have these metrics will continue to be supported, as you can refer to our knowledgecenter Key_Metrics_for_Orders .