Amendment
From API Documentation
Use Amendment to make changes to a Subscription. For example, if you wish to change the terms and conditions of a subscription, you would use an Amendment. In all, you can make the following types of changes to a subscription using Amendment:
- You can add a Product to the subscription. (Type set to NewProduct)
- You can update information about a product (at the rate plan charge level) that is already included in the subscription. (Type set to UpdateProduct)
- You can remove (delete) a product or some part of a product from the subscription. This only deletes it from the subscription you are amending. For example, you can remove a rate plan or a rate plan charge from a product that is in the subscription.(Type set to RemoveProduct)
- You can change the terms and conditions of the subscription. (Type set to TermsAndConditions)
- You can renew a subscription. (Type set to Renewal)
- You can cancel a subscription. (Type set to Cancellation)
Note: Any given instance of Amendment can only have one rate plan. If you need to make changes for two or more rate plans, you must use one Amendment each for each of those rate plans. For example, if you want to remove a product and add a new one, you must use two amendments.
Using Amendment
Because Amendment is a compact way of making changes to a subscription, you will not necessarily need to use all the fields provided, and when making changes, you will use different values for specific fields to indicate the type of amendment you are making.
Fields
| Name | Required? | Type | Allowed Operations: ● Yes ○ No | Allowable Values | Description |
|---|---|---|---|---|---|
| AutoRenew | No | boolean | ● Create
● Query | true or false | Use this with the Terms and Conditions types of amendments to update the Subscription's AutoRenew setting. |
| Code | No | string | ○ Create
● Query | 50 characters maximum | You can apply this field in amend call. If you do not specify a value, Zuora generates a value automatically.
|
| ContractEffectiveDate | No | dateTime | ● Create
● Query | A valid dateTime value | The date on which the changes being made by this amendment become effective. |
| CreatedById | System generated, always exists | ZNS:Id | ○ Create
● Query | This field is not editable. 32 characters maximum. | Available as of version 20.0 of the API. The Zuora system automatically generates this Id of the user who created the object. |
| CreatedDate | System generated, always exists | dateTime | ○ Create
● Query | This field is not editable. | Available as of version 20.0 of the API. The Zuora system automatically generates this, and denotes when the objects was first created. |
| CustomerAcceptanceDate | Yes, if Status is set to Completed and you have configured Zuora to require Customer Acceptance in Z-Billing. Otherwise, this is not required. | dateTime | ● Create
● Query | A valid dateTime value | The date on which the customer will accept or accepted the amendment. |
| Description | No | string | ● Create
● Query | 500 characters maximum | A description of the amendment. |
| DestinationAccountId | Yes if you are creating an Owner Transfer type of amendment. Otherwise, no. | zns:ID | ○ Create
● Query | A valid Account.Id | The ID of the account to which the subscription is being transferred. You can apply this field in owner-transfer amend call. Once the owner-transfer amend call is completed, this field becomes read-only.
|
| DestinationInvoiceOwnerId | No | zns:ID | ○ Create
● Query | A valid Account.Id | Use this to specify the destination invoice owner during an Owner Transfer Amendment. This field was added in version 32.0. |
| EffectiveDate | Yes | dateTime | ● Create
● Query | A valid dateTime value | Similar to ContractEffectiveDate, but not used as a billing date. Rather, this field is used to validate that the changes made by this amendment are within valid ranges of Products and Product Rate Plans. |
| InitialTerm | Yes, if Type is TermsAndConditions. | long | ● Create
● Query | Any valid number | The initial term of service for this amendment. |
| Name | Yes | string | ● Create
● Query | 100 characters maximum | A name for the amendment. |
| RatePlanData | No | zns:RatePlanData | ● Create
○ Query | This is a container to include multiple RatePlans for a subscription. | |
| RenewalTerm | Yes, if Type is TermsAndConditions. | long | ● Create
● Query | Any valid number | The term of renewal for the amended subscription. |
| ServiceActivationDate | Yes, if Status is set to PendingAcceptance. No otherwise. | dateTime | ● Create
● Query | A valid dateTime value | The date on which the service is to be activated. Use this if you have configured Zuora to require Service Activation in Z-Billing. |
| Status | No. When first creating an amendment, it will default to Draft. | string (enum) | ● Create
● Query | Completed, Cancelled, Draft, Pending Acceptance, Pending Activation | The status of the amendment. Draft is for when it is going to be pending for a while. Draft is also used temporarily in the code while making changes before making the amendment active. Active is for when it is going to be put into effect immediately. An amendment can be deleted at any point before it becomes active. |
| SubscriptionId | Yes | zns:ID | ● Create
● Query | A valid subscription ID | The identification number for the subscription that is being amended. |
| TermStartDate | Yes, if Type is TermsAndConditions. | date | ● Create
● Query | A valid date value | Used only when making changes to the terms and conditions. This is the start date for the new terms that are being instated. |
| TermType | No | string | ● Create
● Query | TERMED, EVERGREEN | Type type of term, either Termed or Evergreen. |
| Type | Yes | string (enum) | ● Create
● Query | Cancellation, NewProduct, OwnerTransfer, RemoveProduct, Renewal, UpdateProduct, TermsAndConditions | The type of amendment that is being made. |
| UpdatedById | System generated, always exists | zns:ID | ○ Create
● Query | This field is not editable. 32 characters maximum. | Available as of version 20.0 of the API. The Zuora system automatically generates this Id of the user who last updated the object. |
| UpdatedDate | System generated, always exists | dateTime | ○ Create
● Query | This field is not editable. | Available as of version 20.0 of the API. The Zuora system automatically generates this, and denotes when the objects was last updated. |
