# Update a taxation item

Updates a taxation item by setting the values of the specified fields. Any fields not provided in the request remain unchanged.

Endpoint: PATCH /taxation_items/{taxation_item_id}
Version: 2025-11-12
Security: bearerAuth

## Security:

  - `bearerAuth` (unknown)
    http bearer

## Path parameters:

  - `taxation_item_id` (string, required)
    ID of the taxation item.

## Query parameters:

  - `fields[]` (array)
    Allows you to specify which fields are returned in the response. 
        <details> 
          <summary> Accepted values </summary> 
            `custom_fields`, `created_by_id`, `updated_by_id`, `created_time`, `id`, `updated_time`, `amount`, `amount_exempt`, `tax_date`, `jurisdiction`, `location_code`, `name`, `sales_tax_payable_account`, `tax_code`, `tax_code_name`, `tax_rate`, `tax_rate_name`, `tax_inclusive`, `tax_rate_type`, `amount_credited`, `amount_paid`, `remaining_balance` 
        </details>

  - `taxation_item.fields[]` (array)
    Allows you to specify which fields are returned in the response. 
        <details> 
          <summary> Accepted values </summary> 
            `custom_fields`, `created_by_id`, `updated_by_id`, `created_time`, `id`, `updated_time`, `amount`, `amount_exempt`, `tax_date`, `jurisdiction`, `location_code`, `name`, `sales_tax_payable_account`, `tax_code`, `tax_code_name`, `tax_rate`, `tax_rate_name`, `tax_inclusive`, `tax_rate_type`, `amount_credited`, `amount_paid`, `remaining_balance` 
        </details>

  - `expand[]` (array)
    Allows you to expand responses by including related object information in a single call. See the [Expand responses](https://developer.zuora.com/quickstart-api/tutorial/expand-responses/) section of the Quickstart API Tutorials for detailed instructions.

  - `filter[]` (array)
    A case-sensitive filter on the list. See the [Filter lists](https://developer.zuora.com/quickstart-api/tutorial/filter-lists/) section of the Quickstart API Tutorial for detailed instructions.            
            Note that the filters on this operation are only applicable to the related objects. For example, when you are calling the "Retrieve a billing document" operation, you can use the `filter[]` parameter on the related objects such as `filter[]=items[account_id].EQ:8ad09e208858b5cf0188595208151c63`

  - `page_size` (integer)
    The maximum number of results to return in a single page. If the specified `page_size` is less than 1 or greater than 99, Zuora will return a 400 error.

## Header parameters:

  - `zuora-track-id` (string)
    A custom identifier for tracking API requests. If you set a value for this header, Zuora returns the same value in the response header. This header enables you to track your 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 ("), or quote (').

  - `async` (boolean)
    Making asynchronous requests allows you to scale your applications more efficiently by leveraging Zuora's infrastructure to enqueue and execute requests for you without blocking. These requests also use built-in retry semantics, which makes them much less likely to fail for non-deterministic reasons, even in extreme high-throughput scenarios. Meanwhile, when you send a request to one of these endpoints, you can expect to receive a response in less than 150 milliseconds and these calls are unlikely to trigger rate limit errors. If set to true, Zuora returns a 202 Accepted response, and the response body contains only a request ID.

  - `zuora-entity-ids` (string)
    An entity ID. If you have Multi-entity enabled and the authorization token is valid for more than one entity, you must use this header to specify which entity to perform the operation on. If the authorization token is only valid for a single entity or you do not have Multi-entity enabled, you do not need to set this header.

  - `idempotency-key` (string)
    Specify a unique idempotency key if you want to perform an idempotent POST or PATCH request. Do not use this header in other request types. This idempotency key should be a unique value, and the Zuora server identifies subsequent retries of the same request using this value. For more information, see [Idempotent Requests](https://developer.zuora.com/docs/guides/idempotent-requests/).

  - `accept-encoding` (string)
    Include a `accept-encoding: gzip` header to compress responses, which can reduce the bandwidth required for a response. If specified, Zuora automatically compresses responses that contain over 1000 bytes. For more information about this header, see [Request and Response Compression](https://developer.zuora.com/docs/guides/request-and-response-compression/).

  - `content-encoding` (string)
    Include a `content-encoding: gzip` header to compress a request. Upload a gzipped file for the payload if you specify this header. For more information, see [Request and Response Compression](https://developer.zuora.com/docs/guides/request-and-response-compression/).

## Request fields (application/json):

  - `custom_fields` (object)
    Set of user-defined fields associated with this object. Useful for storing additional information about the object in a structured format.

  - `on_account_account` (string)
    An active account in your Zuora Chart of Accounts.

  - `amount_exempt` (number)
    The calculated tax amount excluded due to the exemption.

  - `invoice_item_id` (string)
    Unique identifier of the invoice item to which the taxation item applies. **This field is required if you are creating a credit memo or debit memo from an invoice, and is not applicable if you are creating an invoice.**.

  - `jurisdiction` (string)
    The jurisdiction that applies the tax or VAT. This value is typically a state, province, county, or city.

  - `location_code` (string)
    The identifier for the location based on the value of the `tax_code` field.

  - `name` (string)
    The name of the taxation item.

  - `amount` (number)
    The amount of the tax applied to the total price.

  - `tax_code` (string)
    A tax code identifier. If a `tax_code` of a price is not provided when you create or update a price, Zuora will treat the charged amount as non-taxable. If this code is provide, Zuora considers that this price is taxable and the charged amount will be handled accordingly.

  - `tax_code_name` (string)
    The amount of the tax applied to the total price.

  - `tax_date` (string)
    The date on which the tax is applied.
    Example: 2022-01-01

  - `tax_rate` (number)
    The amount of the tax applied to the total price.

  - `tax_rate_name` (string)
    The name of the tax rate, such as sales tax or GST. This name is displayed on billing documents.

  - `tax_rate_type` (string)
    Indicates whether the tax rate is an amount or a percentage.
    Enum: "percent", "amount"

  - `source_tax_item_id` (string)
    The ID of the taxation item of the invoice, from which the credit or debit memo is created. This field is only applicable when the `type` of the billing document is `credit_memo` and `debit_memo`.

  - `tax_inclusive` (boolean)
    If set to `true`, it indicates that amounts are inclusive of tax.

  - `sales_tax_payable_account` (string)
    An active account in your Zuora Chart of Accounts.

## Response 200:

  - `200` (unknown)
    Default Response

## Response 200 fields (application/json):

  - `id` (string)
    Identifier of the taxation item related to the invoice. Only applicable for credit memos created from invoices.

  - `updated_by_id` (string)
    Unique identifier of the Zuora user who last updated the object

  - `updated_time` (string)
    The date and time when the object was last updated in ISO 8601 UTC format.

  - `created_by_id` (string)
    Unique identifier of the Zuora user who created the object

  - `created_time` (string)
    The date and time when the object was created in ISO 8601 UTC format.

  - `custom_fields` (object)
    Set of user-defined fields associated with this object. Useful for storing additional information about the object in a structured format.

  - `custom_objects` (object)
    The custom objects associated with a Zuora standard object.

  - `jurisdiction` (string)
    The jurisdiction that applies the tax or VAT. This value is typically a state, province, county, or city.

  - `location_code` (string)
    The identifier for the location based on the value of the `tax_code` field.

  - `name` (string)
    The name of the taxation item.

  - `amount` (number)
    The amount of the tax applied to the total price.

  - `tax_code` (string)
    A tax code identifier. If a `tax_code` of a price is not provided when you create or update a price, Zuora will treat the charged amount as non-taxable. If this code is provide, Zuora considers that this price is taxable and the charged amount will be handled accordingly.

  - `tax_code_name` (string)
    The amount of the tax applied to the total price.

  - `tax_date` (string)
    The date on which the tax is applied.
    Example: 2022-01-01

  - `tax_rate` (number)
    The amount of the tax applied to the total price.

  - `tax_rate_name` (string)
    The name of the tax rate, such as sales tax or GST. This name is displayed on billing documents.

  - `amount_exempt` (number)
    The calculated tax amount excluded due to the exemption.

  - `source_tax_item_id` (string)
    The ID of the taxation item of the invoice, from which the credit or debit memo is created. This field is only applicable when the `type` of the billing document is `credit_memo` and `debit_memo`.

  - `remaining_balance` (number)
    The remaining balance of the taxation item.

  - `amount_credited` (number)
    The credit memo amount applied to the taxation item.

  - `amount_paid` (number)
    The payment amount applied to the taxation item.

  - `amount_refunded` (number)
    The refund amount applied to the taxation item.

  - `amount_applied` (number)
    The credit memo item amount applied to the taxation item.

  - `sales_tax_payable_account` (string)
    An active account in your Zuora Chart of Accounts.

  - `on_account_account` (string)
    An active account in your Zuora Chart of Accounts.

  - `tax_inclusive` (boolean)
    If set to `true`, it indicates that amounts are inclusive of tax.

  - `tax_rate_type` (string)
    Indicates whether the tax rate is an amount or a percentage.
    Enum: "percent", "amount"

## Response 200 headers (application/json):

  - `ratelimit-limit` (string)
    The request limit quota for the time window closest to exhaustion. See [rate limits](https://developer.zuora.com/rest-api/general-concepts/rate-concurrency-limits/#rate-limits) for more information.

  - `ratelimit-remaining` (number)
    The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://developer.zuora.com/rest-api/general-concepts/rate-concurrency-limits/#rate-limits) for more information.

  - `ratelimit-reset` (number)
    The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://developer.zuora.com/rest-api/general-concepts/rate-concurrency-limits/#rate-limits) for more information.

  - `zuora-request-id` (string)
    Zuora’s internal identifier for this request.

  - `zuora-track-id` (string)
    A user-supplied identifier for this request. If you supply a `zuora-track-id` as a request header, Zuora returns the `zuora-track-id` as a response header.

## Response 400:

  - `400` (unknown)
    Bad Request

## Response 400 fields (application/json):

  - `type` (string)

  - `errors` (array)

  - `errors.code` (string)

  - `errors.parameter` (string)

  - `errors.message` (string)

  - `retryable` (boolean)

## Response 401:

  - `401` (unknown)
    Unauthorized

## Response 401 fields (application/json):

  - `type` (string)

  - `errors` (array)

  - `errors.code` (string)

  - `errors.parameter` (string)

  - `errors.message` (string)

  - `retryable` (boolean)

## Response 404:

  - `404` (unknown)
    Not Found

## Response 404 fields (application/json):

  - `type` (string)

  - `errors` (array)

  - `errors.code` (string)

  - `errors.parameter` (string)

  - `errors.message` (string)

  - `retryable` (boolean)

## Response 405:

  - `405` (unknown)
    Method Not Allowed

## Response 405 fields (application/json):

  - `type` (string)

  - `errors` (array)

  - `errors.code` (string)

  - `errors.parameter` (string)

  - `errors.message` (string)

  - `retryable` (boolean)

## Response 429:

  - `429` (unknown)
    Too Many Requests

## Response 429 fields (application/json):

  - `type` (string)

  - `errors` (array)

  - `errors.code` (string)

  - `errors.parameter` (string)

  - `errors.message` (string)

  - `retryable` (boolean)

## Response 500:

  - `500` (unknown)
    Internal Server Error

## Response 500 fields (application/json):

  - `type` (string)

  - `errors` (array)

  - `errors.code` (string)

  - `errors.parameter` (string)

  - `errors.message` (string)

  - `retryable` (boolean)

## Response 502:

  - `502` (unknown)
    Bad Gateway

## Response 502 fields (application/json):

  - `type` (string)

  - `errors` (array)

  - `errors.code` (string)

  - `errors.parameter` (string)

  - `errors.message` (string)

  - `retryable` (boolean)

## Response 503:

  - `503` (unknown)
    Service Unavailable

## Response 503 fields (application/json):

  - `type` (string)

  - `errors` (array)

  - `errors.code` (string)

  - `errors.parameter` (string)

  - `errors.message` (string)

  - `retryable` (boolean)

## Response 504:

  - `504` (unknown)
    Gateway Timeout

## Response 504 fields (application/json):

  - `type` (string)

  - `errors` (array)

  - `errors.code` (string)

  - `errors.parameter` (string)

  - `errors.message` (string)

  - `retryable` (boolean)

