# Update an account Updates a customer account by specifying the account-key. ### Notes 1. Only the fields to be changed should be specified. Any field that is not included in the request body will not be changed. 2. If an empty field is submitted with this operation, the corresponding field in the account is emptied. 3. Email addresses: If no email addresses are specified, no change is made to the email addresses or to the email delivery preference. If either the personalEmail or workEmail of billToContact is specified (or both), the system updates the corresponding email address(es) and the email delivery preference is set to true. (In that case, emails go to the workEmail address, if it exists, or else the personalEmail.) On the other hand, if as a result of this call both of the email addresses for the account are empty, the email delivery preference is set to false. 4. The Bill To, Sold To, and Ship To contacts are separate contact entities. However, if you set the soldToSameAsBillTo field to true when creating an account, the Bill To and Sold To contacts will refer to the same contact entity. As a result, updating either contact will update both. The same behavior applies to the shipToSameAsBillTo field and the Ship To contact. In this case, if you want to update only one of the contacts, you must create a new contact and then update the Bill To, Sold To, or Ship To contact to reference the newly created one. Endpoint: PUT /v1/accounts/{account-key} Version: 2026-02-20 Security: bearerAuth ## 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. - `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 ('). - `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 should not set this header. - `Zuora-Org-Ids` (string) Comma separated IDs. If you have Zuora Multi-Org enabled, you can use this header to specify which orgs to perform the operation in. If you do not have Zuora Multi-Org enabled, you should not set this header. The IDs must be a sub-set of the user's accessible orgs. If you specify an org that the user does not have access to, the operation fails. This header is important in Multi-Org (MO) setups because it defines the organization context under which the API should operate—mainly used for read access or data visibility filtering. If the header is not set, the operation is performed in scope of the user's accessible orgs. - `Zuora-Version` (string) The minor API version. For a list of available minor versions, see API upgrades. ## Path parameters: - `account-key` (string, required) Account number or account ID. ## Request fields (application/json): - `additionalEmailAddresses` (array) A list of additional email addresses to receive email notifications. Use commas to separate email addresses. - `autoPay` (boolean) Whether future payments are to be automatically billed when they are due. - `batch` (string) The alias name given to a batch. A string of 50 characters or less. Note: By default, you have 50 configurable account batches. To increase the limit to 200 batches, you must have the Performance Booster Elite package. - `billCycleDay` (integer) Sets the bill cycle day (BCD) for the charge. The BCD determines which day of the month the customer is billed. Values: Any activated system-defined bill cycle day (1-31) Example: 1 - `billToContact` (object) Container for bill-to contact information for this account. - `billToContact.address1` (string) First address line, 255 characters or less. - `billToContact.address2` (string) Second address line, 255 characters or less. - `billToContact.city` (string) City - `billToContact.country` (string) Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided. - `billToContact.county` (string) May optionally be used by Zuora Tax to calculate county tax. - `billToContact.fax` (string) Fax phone number, 40 characters or less. - `billToContact.firstName` (string) First name, 100 characters or less. - `billToContact.homePhone` (string) Home phone number, 40 characters or less. - `billToContact.lastName` (string) Last name, 100 characters or less. - `billToContact.mobilePhone` (string) Mobile phone number, 40 characters or less. - `billToContact.nickname` (string) Nickname for this contact - `billToContact.otherPhone` (string) Other phone number, 40 characters or less. - `billToContact.otherPhoneType` (string) Possible values are: Work, Mobile, Home, Other. - `billToContact.personalEmail` (string) Personal email address. - `billToContact.state` (string) State; must be a valid subregion (state or province) name or code. For more information, see View subregions of a specific country or region. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided. - `billToContact.taxRegion` (string) If using Zuora Tax, a region string as optionally defined in your tax rules. Not required. - `billToContact.workEmail` (string) Work email address, 80 characters or less. - `billToContact.workPhone` (string) Work phone number, 40 characters or less. - `billToContact.zipCode` (string) Zip code, 20 characters or less. - `billToContactId` (string) The ID of a contact that will be the bill-to contact of the current account. - `communicationProfileId` (string) The ID of the communication profile that this account is linked to. You can provide either or both of the communicationProfileId and profileNumber fields. If both are provided, the request will fail if they do not refer to the same communication profile. - `creditMemoTemplateId` (string) Note: This field is only available if you have [Invoice Settlement](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/Invoice_Settlement) enabled. The Invoice Settlement feature is generally available as of Zuora Billing Release 296 (March 2021). This feature includes Unapplied Payments, Credit and Debit Memo, and Invoice Item Settlement. If you want to enable Invoice Settlement, see [Invoice Settlement Enablement and Checklist Guide](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/Invoice_Settlement/Invoice_Settlement_Migration_Checklist_and_Guide) for more information. The unique ID of the credit memo template, configured in Billing Settings > Manage Billing Document Configuration through the Zuora UI. For example, 2c92c08a6246fdf101626b1b3fe0144b. - `crmId` (string) CRM account ID for the account, up to 100 characters. - `customerServiceRepName` (string) Name of the account’s customer service representative, if applicable. - `debitMemoTemplateId` (string) Note: This field is only available if you have [Invoice Settlement](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/Invoice_Settlement) enabled. The Invoice Settlement feature is generally available as of Zuora Billing Release 296 (March 2021). This feature includes Unapplied Payments, Credit and Debit Memo, and Invoice Item Settlement. If you want to enable Invoice Settlement, see [Invoice Settlement Enablement and Checklist Guide](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/Invoice_Settlement/Invoice_Settlement_Migration_Checklist_and_Guide) for more information. The unique ID of the debit memo template, configured in Billing Settings > Manage Billing Document Configuration through the Zuora UI. For example, 2c92c08d62470a8501626b19d24f19e2. - `defaultPaymentMethodId` (string) ID of the default payment method for the account. Values: a valid ID for an existing payment method. - `einvoiceProfile` (object) Container for profile information for this account. Note: This field is available only if you have the E-Invoicing feature in Early Adopter phase enabled. - `einvoiceProfile.businessCategory` (string) The high-level category of the business. Enum: "B2B", "B2C", "B2G" - `einvoiceProfile.businessName` (string) Legal Business Name. The full formal name by which the Buyer is registered with the relevant legal authority. - `einvoiceProfile.businessNumber` (string) Buyer legal registration identifier. An identifier issued by an official registrar that identifies the Buyer as a legal entity or person. GSTIN of buyer for India. - `einvoiceProfile.businessNumberSchemeId` (string) Business Number Schema Id. The identification scheme identifier of the Buyer legal registration identifier. - `einvoiceProfile.enabled` (boolean) Enable e-invoice for the account. All invoices generated from this account can be submitted to generate e-invoices when invoices meet the conditions: A business region must be created for the billing country contact, and it must be linked to a service provider. The account must be enabled to generate e-invoices. The invoice must be in the "Posted" status. - `einvoiceProfile.endpointId` (string) Buyer electronic address.Identifies the Buyer's electronic address to which the invoice is delivered. - `einvoiceProfile.endpointSchemeId` (string) Buyer electronic address identification scheme identifier. - `einvoiceProfile.taxRegisterNumber` (string) Buyer VAT identifier. The Buyer's VAT identifier (also known as Buyer VAT identification number). - `gatewayRoutingEligible` (boolean) Indicates whether to include the applicable billing accounts to gateway routing for controlled adoption. - `invoiceDeliveryPrefsEmail` (boolean) Whether the customer wants to receive invoices through email. The default value is false. - `invoiceDeliveryPrefsPrint` (boolean) Whether the customer wants to receive printed invoices, such as through postal mail. The default value is false. - `invoiceTemplateId` (string) Invoice template ID, configured in Billing Settings in the Zuora UI. - `name` (string) Account name, up to 255 characters. - `notes` (string) A string of up to 65,535 characters. - `parentId` (string) Identifier of the parent customer account for this Account object. The length is 32 characters. Use this field if you have Customer Hierarchy enabled. - `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. - `paymentGateway` (string) The name of the payment gateway instance. If null or left unassigned, the Account will use the Default Gateway. - `paymentTerm` (string) Payment terms for this account. Possible values are Due Upon Receipt, Net 30, Net 60, Net 90. - `profileNumber` (string) The number of the communication profile that this account is linked to. You can provide either or both of the communicationProfileId and profileNumber fields. If both are provided, the request will fail if they do not refer to the same communication profile. - `purchaseOrderNumber` (string) The purchase order number provided by your customer for services, products, or both purchased. - `salesRep` (string) The name of the sales representative associated with this account, if applicable. Maximum of 50 characters. - `sequenceSetId` (string,null) The ID of the billing document sequence set to assign to the customer account. The billing documents to generate for this account will adopt the prefix and starting document number configured in the sequence set. If a customer account has no assigned billing document sequence set, billing documents generated for this account adopt the prefix and starting document number from the default sequence set. - `shipToContact` (object) Container for optional ship-to contact. - `shipToContact.country` (string) Country; must be a valid country name or abbreviation. - `shipToContact.state` (string) State; must be a valid subregion (state or province) name or code. For more information, see View subregions of a specific country or region. - `shipToContactId` (string) The ID of a contact that will be the ship-to contact of the current account. - `soldToContact` (object) Container for optional sold-to contact. - `soldToContact.city` (string) City, 100 characters or less. - `soldToContact.county` (string) County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax. - `soldToContact.state` (string) 100 characters or less. State; must be a valid subregion (state or province) name or code. For more information, see View subregions of a specific country or region. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided. - `soldToContact.taxRegion` (string) 100 characters or less. If using Zuora Tax, a region string as optionally defined in your tax rules. Not required. - `soldToContactId` (string) The ID of a contact that will be the sold-to contact of the current account. - `tagging` (string) - `summaryStatementTemplateId` (string,null) The summary statement template ID or number. When a user attempts to generate a summary statement from the "Account Summary Statement" screen, the system utilizes this template to produce the PDF. - `taxInfo` (object) Container for tax exempt information, used to establish the tax exempt status of a customer account. - `taxInfo.VATId` (string) EU Value Added Tax ID. Note: This feature is in Limited Availability. If you wish to have access to the feature, submit a request at [Zuora Global Support](https://support.zuora.com). - `taxInfo.companyCode` (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. Note: This feature is in Limited Availability. If you wish to have access to the feature, submit a request at [Zuora Global Support](https://support.zuora.com). - `taxInfo.exemptCertificateId` (string) ID of the customer tax exemption certificate. Requires Zuora Tax. - `taxInfo.exemptCertificateType` (string) Type of tax exemption certificate that the customer holds. Requires Zuora Tax. - `taxInfo.exemptDescription` (string) Description of the tax exemption certificate that the customer holds. Requires Zuora Tax. - `taxInfo.exemptEffectiveDate` (string) Date when the customer tax exemption starts. Requires Zuora Tax. Format: yyyy-mm-dd. Defaults to the current date. - `taxInfo.exemptEntityUseCode` (string) A unique entity use code to apply exemptions in Avalara AvaTax. This account-level field is required only when you choose Avalara as your tax engine. See [Exempt Transactions](https://developer.avalara.com/avatax/handling-tax-exempt-customers/)for more details. - `taxInfo.exemptExpirationDate` (string) Date when the customer tax exemption expires. Requires Zuora Tax. Format: yyyy-mm-dd. Defaults to the current date. - `taxInfo.exemptIssuingJurisdiction` (string) Jurisdiction in which the customer tax exemption certificate was issued. - `taxInfo.exemptStatus` (string) Status of the account tax exemption. Requires Zuora Tax. Required if you use Zuora Tax. This field is unavailable if Zuora Tax is not used. Values: Yes, No(default), pendingVerification. Note that the value will be set to No if no input. - `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): - `processId` (string) The ID of the process that handles the operation. - `reasons` (array) The container of the error code and message. This field is available only if the success field is false. - `reasons.code` (string) The error code of response. - `reasons.message` (string) The detail information of the error response - `requestId` (string) Unique identifier of the request. - `success` (boolean) Indicates whether the call succeeded. ## Response 500 fields (application/json): - `reasons` (array) Example: [{"code":"ObjectNotFound","message":"Notification definition with id 6e569e1e05f040eda51a927b140c0ac1 does not exist"}] - `reasons.code` (string) The error code of response. - `reasons.message` (string) The detail information of the error response ## Response 4XX fields (application/json): - `processId` (string) The ID of the process that handles the operation. - `reasons` (array) The container of the error code and message. This field is available only if the success field is false. - `reasons.code` (string) The error code of response. - `reasons.message` (string) The detail information of the error response - `requestId` (string) Unique identifier of the request. - `success` (boolean) Indicates whether the call succeeded.