# CRUD: Update an account Updates an account. Endpoint: PUT /v1/object/account/{id} Version: 2025-12-17 ## Header parameters: - `Accept-Encoding` (string) Include the Accept-Encoding: gzip header to compress responses as a gzipped file. It can significantly reduce the bandwidth required for a response. If specified, Zuora automatically compresses responses that contain over 1000 bytes of data, and the response contains a Content-Encoding header with the compression algorithm so that your client can decompress it. - `Content-Encoding` (string) Include the Content-Encoding: gzip header to compress a request. With this header specified, you should upload a gzipped file for the request payload instead of sending the JSON payload. - `Authorization` (string) The value is in the Bearer {token} format where {token} is a valid OAuth token generated by calling Create an OAuth token. - `Zuora-Entity-Ids` (string) An entity ID. If you have Zuora Multi-entity enabled and the OAuth token is valid for more than one entity, you must use this header to specify which entity to perform the operation in. If the OAuth token is only valid for a single entity, or you do not have Zuora Multi-entity enabled, you do not need to set this header. - `Zuora-Track-Id` (string) A custom identifier for tracing the API call. If you set a value for this header, Zuora returns the same value in the response headers. This header enables you to associate your system process identifiers with Zuora API calls, to assist with troubleshooting in the event of an issue. The value of this field must use the US-ASCII character set and must not include any of the following characters: colon (:), semicolon (;), double quote ("), and quote ('). - `X-Zuora-WSDL-Version` (string) Zuora WSDL version number. ## Query parameters: - `rejectUnknownFields` (boolean) Specifies whether the call fails if the request body contains unknown fields. With rejectUnknownFields set to true, Zuora returns a 400 response if the request body contains unknown fields. The body of the 400 response is: json { "message": "Error - unrecognised fields" } By default, Zuora ignores unknown fields in the request body. ## Path parameters: - `id` (string, required) Object id ## Request fields (application/json): - `AccountNumber` (string) Unique account number assigned to the account. You can modify the account number of a customer account only if the account has no subscriptions or draft subscriptions only. Otherwise, the account number cannot be modified. Character limit: 50 Values: one of the following: - null to auto-generate - a string of 50 characters or fewer that doesn't begin with the default account number prefix - `AdditionalEmailAddresses` (string) List of additional email addresses to receive email notifications. Character limit: 120 Values: comma-separated list of email addresses - `AllowInvoiceEdit` (boolean) Indicates if associated invoices can be edited. Character limit: 5 Values: true, false (default if left null) - `AutoPay` (boolean) Indicates if future payments are automatically collected when they're due during a Payment Run. Character limit: 5 Values: true, false (default) - `Batch` (string) Organizes your customer accounts into groups to optimize\ \ your billing and payment operations. Required if you use the Subscribe\ \ call.\nCharacter limit: 20 Values:any system-defined batch (Batch1\ \ - Batch50 or by name). " Note: By default, you have 50 configurable account batches. To increase the limit to 200 batches, you must have the Performance Booster Elite package. - `BcdSettingOption` (string) Billing cycle day setting option. Character limit: 9 Values: AutoSet, ManualSet - `BillCycleDay` (integer) Billing cycle day (BCD) on which bill runs generate invoices for the account. Character limit: 2 Values: any activated system-defined bill cycle day (1 - 31) Example: 1 - `BillToId` (string) ID of the person to bill for the account. Character limit: 32 Values: a valid contact ID for the account - `CrmId` (string) CRM account ID for the account. A CRM is a customer relationship management system, such as Salesforce.com. Character limit: 100 Values: a string of 100 characters or fewer - `Currency` (string) Currency that the customer is billed in. You can update this field only when an account is in Draft status. After the account is activated, you cannot update this field. - `CustomerServiceRepName` (string) Name of the account's customer service representative, if applicable. Character limit: 50 Values: a string of 50 characters or fewer - `DefaultPaymentMethodId` (string) ID of the default payment method for the account. This field is required if the AutoPay field is set to true. Character limit: 32 Values: a valid ID for an existing payment method - `InvoiceDeliveryPrefsEmail` (boolean) Indicates if the customer wants to receive invoices through email. Character limit: 5 Values: true, false (default if left null) - `InvoiceDeliveryPrefsPrint` (boolean) Indicates if the customer wants to receive printed invoices, such as through postal mail. Character limit: 5 Values: true, false (default if left null) - `InvoiceTemplateId` (string) The ID of the invoice template. Each customer account can use a specific invoice template for invoice generation. Character limit: 32 Values: a valid template ID configured in Zuora Billing Settings - `Name` (string) Name of the account as displayed in the Zuora UI. Character limit: 255 Values: a string of 255 characters or fewer - `Notes` (string) Comments about the account. Character limit: 65,535 Values: a string of 65,535 characters - `ParentId` (string) Identifier of the parent customer account for this Account object. Use this field if you have customer hierarchy enabled. Character limit: 32 Values: a valid account ID - `PartnerAccount` (boolean) Whether the customer account is a partner, distributor, or reseller. You can set this field to true if you have business with distributors or resellers, or operating in B2B model to manage numerous subscriptions through concurrent API requests. After this field is set to true, the calculation of account metrics is performed asynchronously during operations such as subscription creation, order changes, invoice generation, and payments. Note: - This field is available only if you have the Reseller Account feature enabled. - This field is only available if you set the X-Zuora-WSDL-Version request header to 131 or later. - `PaymentGateway` (string) Gateway used for processing electronic payments and refunds. Character limit: 40 Values: one of the following: - a valid configured gateway name - null to inherit the default value set in Zuora Payment Settings - `PaymentTerm` (string) Indicates when the customer pays for subscriptions. Character limit: 100 Values: a valid, active payment term defined in the web-based UI administrative settings - `PurchaseOrderNumber` (string) The number of the purchase order associated with this account. Purchase order information generally comes from customers. Character limit: 100 Values: a string of 100 characters or fewer - `SalesRepName` (string) The name of the sales representative associated with this account, if applicable. Character limit: 50 Values: a string of 50 characters or fewer - `SoldToId` (string) ID of the person who bought the subscription associated with the account. Character limit: 32 Values: a valid contact ID for the account - `Status` (string) Status of the account in the system. Follow the following rules to update the status of accounts: - Include contact IDs in the BillToId and SoldToId fields when you change the Status field value to Active. - Before changing the status of an account to Canceled, cancel all subscriptions associated with this account. You cannot cancel an account that has active subscriptions. - You can update a Draft account to Active, assuming the Bill To/Sold To Contacts are assigned. - You can update a Canceled account to the Active status at any time. - You cannot update the Active or Cancelled status of an account to Draft. Enum: "Draft", "Active", "Canceled" - `TaxCompanyCode` (string) Unique code that identifies a company account in Avalara. Use this field to calculate taxes based on origin and sold-to addresses in Avalara. This feature is in Limited Availability. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). Character limit: 50 Values: a valid company code - `TaxExemptCertificateID` (string) ID of your customer's tax exemption certificate. Character limit: 32 Values: a string of 32 characters or fewer - `TaxExemptCertificateType` (string) Type of the tax exemption certificate that your customer holds. Character limit: 32 Values: a string of 32 characters or fewer - `TaxExemptDescription` (string) Description of the tax exemption certificate that your customer holds. Character limit: 500 Values: a string of 500 characters or fewer - `TaxExemptEffectiveDate` (string) Date when the the customer's tax exemption starts. Character limit: 29 Version notes: requires Zuora Tax - `TaxExemptExpirationDate` (string) Date when the customer's tax exemption certificate expires Character limit: 29 Version notes: requires Zuora Tax - `TaxExemptIssuingJurisdiction` (string) Indicates the jurisdiction in which the customer's tax exemption certificate was issued. Character limit: 32 Values: a string of 32 characters or fewer - `TaxExemptStatus` (string) Status of the account's tax exemption. Required if you use Zuora Tax. Character limit: 19 Values: one of the following: - Yes - No - PendingVerification - `VATId` (string) EU Value Added Tax ID. This feature is in Limited Availability. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). Character limit: 25 Values: a valid Value Added Tax ID - `communicationProfileId` (string) Associates the account with a specified communication profile. Character limit: 32 Values: a valid communication profile ID - `Class__NS` (string) Value of the Class field for the corresponding customer account in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265). - `CustomerType__NS` (string) Value of the Customer Type field for the corresponding customer account in NetSuite. The Customer Type field is used when the customer account is created in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265). Enum: "Company", "Individual" - `Department__NS` (string) Value of the Department field for the corresponding customer account in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265). - `IntegrationId__NS` (string) ID of the corresponding object in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265). - `IntegrationStatus__NS` (string) Status of the account's synchronization with NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265). - `Location__NS` (string) Value of the Location field for the corresponding customer account in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265). - `Subsidiary__NS` (string) Value of the Subsidiary field for the corresponding customer account in NetSuite. The Subsidiary field is required if you use NetSuite OneWorld. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265). - `SyncDate__NS` (string) Date when the account was sychronized with NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265). - `SynctoNetSuite__NS` (string) Specifies whether the account should be synchronized with NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265). Enum: "Yes", "No" ## Response 200 fields (application/json): - `Id` (string) Example: "2c93808457d787030157e030232f3748" - `Success` (boolean) Example: true ## Response 401 fields (application/json): - `message` (string) Error message. If the error message is "Authentication error", ensure that the Authorization request header contains valid authentication credentials, then retry the request. See [Authentication](https://developer.zuora.com/rest-api/general-concepts/authentication/) for more information. If the error message is "Failed to get user info", retry the request.