Orders performance guidance
This article provides a reference on the expected response times when you create and manage subscriptions via Orders. The data was collected via a sequential test of a single Create order operation call in the Zuora Product Copy Environment. The data was generated in Zuora Release 227.
The Orders API timeout limit is 120 seconds. As the following tables show, a number of factors can contribute to increased latency in Orders:
- Number of subscriptions in one Create order call
- Number of order actions in one subscription
- Number of charges processed by one order action
- Number of tiers in one charge (applicable only to the tiered pricing charge model)
The following tables provide a summary of performance data for Orders. The summary is also available for downloads as a CSV file: Zuora_performance_data_summary.csv. For a complete set of the performance data, download Zuora_performance_data_complete_datasheet.csv.
The performance data is the guidance of performance under ideal testing scenarios. Depending on your tenant situation, your results may vary from below. Integration with a third-party tax engine or using a configurable Tax app is not included in the testing scenario where the performance data is collected.
Limits on Orders API
The limit of orders allowed on a subscription is 1000.
Zuora has the following limits on the Orders synchronous API to prevent performance degradation:
- Up to 50 subscriptions are allowed in a single Create order or Preview order operation call.
- Up to 50 order actions are allowed in a single Create order or Preview order operation call.
- Up to 50 order actions are allowed on a single subscription in a Create order or Preview order operation call.
If you have an Order that exceeds any limits of the above, Zuora recommends you use the following asynchronous API operations:
Zuora has the following limits on the Orders asynchronous API operations to prevent performance degradation:
- Up to 300 subscriptions are allowed in a single Create order asynchronously or Preview order asynchronously operation call.
- Up to 300 order actions are allowed in a single Create order asynchronously or Preview order asynchronously operation call.
- Up to 300 order actions are allowed on a single subscription in a Create order asynchronously or Preview order asynchronously operation call.
If you have a need for a large order that exceeds any limits of the above, you can request a limit increase for the Orders asynchronous API by submitting a request at Zuora Global Support.
Create Subscription
The following table shows performance data for Create Subscription order actions. The data is broken down by charge model.
Charge Model | # Subscriptions | # Actions | # Charges | # Tiers | Response Time (Seconds) |
---|---|---|---|---|---|
Per Unit Pricing | 12 | 1 | 20 | N/A | 105 |
1 | 1 | 185 | N/A | 105 | |
115 | 1 | 1 | N/A | 106 | |
12 | 1 | 1 | N/A | 4 | |
Flat Fee Pricing | 13 | 1 | 19 | N/A | 108 |
1 | 1 | 195 | N/A | 113 | |
115 | 1 | 1 | N/A | 108 | |
13 | 1 | 1 | N/A | 4 | |
Tiered Pricing | 10 | 1 | 19 | 10 | 91 |
1 | 1 | 1 | 23500 | 106 | |
1 | 1 | 190 | 1 | 105 | |
115 | 1 | 1 | 1 | 107 | |
10 | 1 | 1 | 1 | 3 |
Cancel Subscription
The following table shows performance data for Cancel Subscription order actions. The data is broken down by charge model.
Charge Model | # Subscriptions | # Actions | # Charges | # Tiers | Response Time (Seconds) |
---|---|---|---|---|---|
Per Unit Pricing |
10 | 1 | 18 | N/A | 105 |
1 | 1 | 185 | N/A | 68 | |
100 | 1 | 1 | N/A | 109 | |
10 | 1 | 1 | N/A | 2 | |
Flat Fee Pricing | 8 | 1 | 16 | N/A | 111 |
1 | 1 | 190 | N/A | 72 | |
100 | 1 | 1 | N/A | 109 | |
8 | 1 | 1 | N/A | 2 | |
Tiered Pricing | 7 | 1 | 15 | 10 | 108 |
1 | 1 | 1 | 23500 | 83 | |
1 | 1 | 185 | 1 | 69 | |
100 | 1 | 1 | 1 | 106 | |
7 | 1 | 1 | 1 | 2 |
Increase Quantity
The following table shows performance data for Update Product order actions used to increase the quantity of products. The data is broken down by charge model.
Charge Model | # Subscriptions | # Actions | # Charges | # Tiers | Response Time (Seconds) |
---|---|---|---|---|---|
Per Unit Pricing | 5 | 4 | 8 | N/A | 105 |
1 | 1 | 145 | N/A | 113 | |
1 | 60 | 1 | N/A | 93 | |
80 | 1 | 1 | N/A | 105 | |
5 | 1 | 1 | N/A | 2 | |
Tiered Pricing | 4 | 5 | 6 | 10 | 90 |
1 | 1 | 1 | 15500 | 97 | |
1 | 1 | 190 | 1 | 102 | |
1 | 65 | 1 | 1 | 99 | |
90 | 1 | 1 | 1 | 95 | |
4 | 1 | 1 | 1 | 1 |
Decrease Quantity
The following table shows performance data for Update Product order actions used to decrease the quantity of products. The data is broken down by charge model.
Charge Model | # Subscriptions | # Actions | # Charges | # Tiers | Response Time (Seconds) |
---|---|---|---|---|---|
Per Unit Pricing | 5 | 4 | 8 | N/A | 94 |
1 | 1 | 145 | N/A | 105 | |
1 | 65 | 1 | N/A | 107 | |
80 | 1 | 1 | N/A | 105 | |
5 | 1 | 1 | N/A | 2 | |
Tiered Pricing | 4 | 5 | 7 | 10 | 105 |
1 | 1 | 1 | 16000 | 97 | |
1 | 1 | 190 | 1 | 83 | |
1 | 65 | 1 | 1 | 96 | |
105 | 1 | 1 | 1 | 114 | |
4 | 1 | 1 | 1 | 1 |
Change Price
The following table shows performance data for Update Product order actions used to change the price of subscription rate plan charges. The data is broken down by charge model.
Charge Model | # Subscriptions | # Actions | # Charges | # Tiers | Response Time (Seconds) |
---|---|---|---|---|---|
Per Unit Pricing | 5 | 5 | 8 | N/A | 115 |
1 | 1 | 165 | N/A | 105 | |
1 | 65 | 1 | N/A | 104 | |
85 | 1 | 1 | N/A | 100 | |
5 | 1 | 1 | N/A | 1 | |
Flat Fee Pricing | 5 | 5 | 8 | N/A | 106 |
1 | 1 | 175 | N/A | 108 | |
1 | 65 | 1 | N/A | 102 | |
90 | 1 | 1 | N/A | 108 | |
5 | 1 | 1 | N/A | 1 | |
Tiered Pricing | 4 | 5 | 6 | 10 | 77 |
1 | 1 | 1 | 10500 | 84 | |
1 | 1 | 175 | 1 | 116 | |
1 | 65 | 1 | 1 | 108 | |
85 | 1 | 1 | 1 | 102 | |
4 | 1 | 1 | 1 | 1 |
Shrink Term
The following table shows performance data for Terms and Conditions order actions used to shrink the term of subscriptions. The data is broken down by charge model.
Charge Model | # Subscriptions | # Actions | # Charges | # Tiers | Response Time (Seconds) |
---|---|---|---|---|---|
Per Unit Pricing | 12 | 1 | 20 | N/A | 85 |
1 | 1 | 185 | N/A | 68 | |
100 | 1 | 1 | N/A | 107 | |
12 | 1 | 1 | N/A | 4 | |
Flat Fee Pricing | 12 | 1 | 20 | N/A | 81 |
1 | 1 | 195 | N/A | 73 | |
100 | 1 | 1 | N/A | 103 | |
12 | 1 | 1 | N/A | 4 | |
Tiered Pricing | 11 | 1 | 19 | 10 | 92 |
1 | 1 | 1 | 23500 | 81 | |
1 | 1 | 190 | 1 | 73 | |
100 | 1 | 1 | 1 | 106 | |
11 | 1 | 1 | 1 | 3 |
Owner Transfer
The following table shows performance data for Owner Transfer order actions. The data is broken down by charge model.
Charge Model | # Subscriptions | # Actions | # Charges | # Tiers | Response Time (Seconds) |
---|---|---|---|---|---|
Per Unit Pricing | 5 | 1 | 11 | N/A | 97 |
1 | 1 | 155 | N/A | 97 | |
75 | 1 | 1 | N/A | 104 | |
5 | 1 | 1 | N/A | 1 | |
Flat Fee Pricing | 5 | 1 | 11 | N/A | 98 |
1 | 1 | 165 | N/A | 105 | |
75 | 1 | 1 | N/A | 99 | |
5 | 1 | 1 | N/A | 1 | |
Tiered Pricing | 5 | 1 | 9 | 10 | 96 |
1 | 1 | 1 | 21000 | 101 | |
1 | 1 | 165 | 1 | 104 | |
75 | 1 | 1 | 1 | 104 | |
5 | 1 | 1 | 1 | 1 |