> This page is for Docs.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://zuora.ferndocs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://zuora.ferndocs.com/_mcp/server.

# Zuora Tax Code API settings

> Learn how to manage Zuora tax codes by the Settings API.

Learn how to manage Zuora tax codes by the Settings API.

## Get Specific Tax Code ID

The ID of a specific zuora tax code is required as a path parameter to get the tax codes. See the following request and a sample of 200 response to get the ID of any tax code:

> **Note**
>
> All the examples provided in this section use the Zuora Sandbox endpoint URL. You must substitute it with your own endpoint base URL.

HTTP request:

`GET https://rest.apisandbox.zuora.com/settings/tax-codes/ztax/{id}`

Request body:

<table>
  <tr>
    <th>
      Key
    </th>

    <th>
      Value
    </th>
  </tr>

  <tr>
    <td>
      Curl
    </td>

    <td>
      GET [https://rest.apisandbox.zuora.com/se...odes/ztax/\\\{id\\}](https://rest.apisandbox.zuora.com/se...odes/ztax/\\\{id\\})
    </td>
  </tr>

  <tr>
    <td>
      Authorization
    </td>

    <td>
      Auth Type - Bearer Token \<oauth_token>
    </td>
  </tr>

  <tr>
    <td>
      Headers
    </td>

    <td>
      * Authorization - Bearer \<oauth_token>
      * Content-Type - application/json
    </td>
  </tr>
</table>

Response body:

```json
{
   "id": "47d2609fda26e8f15d7954299457f92e",
   "taxEngineId": "47d2609f2dd03671de006c57df2e46cc",
   "active": true,
   "name": "Avalara Sales Tax",
   "description": "",
   "taxCompanyId": "47d2609f15d506b1bd7084de4499292c",
   "externalTaxCode": "ZDEVSE-0001",
   "success": true
}
```

## Create Tax Codes

Ensure that you retrieve the engine ID of the Tax Rate Period Engine from the "Get Specific Tax Code ID" section before proceeding with the following steps.

To create a new Tax Code, see the following request and a sample of 200 response:

HTTP request:

`POST https://rest.apisandbox.zuora.com/settings/tax-codes/ztax`

Request body

<table>
  <tr>
    <th>
      Key
    </th>

    <th>
      Value
    </th>
  </tr>

  <tr>
    <td>
      Curl
    </td>

    <td>
      POST [https://rest.apisandbox.zuora.com/settings/tax-codes/ztax](https://rest.apisandbox.zuora.com/settings/tax-codes/ztax)
    </td>
  </tr>

  <tr>
    <td>
      Authorization
    </td>

    <td>
      Auth Type - Bearer Token \<oauth_token>
    </td>
  </tr>

  <tr>
    <td>
      Headers
    </td>

    <td>
      * Authorization - Bearer \<oauth_token>
      * Content-Type - application/json
    </td>
  </tr>

  <tr>
    <td>
      Body
    </td>

    <td>
      \--data \{

      "name": "string | null",

      "active": true,

      "description": "string | null",

      "taxEngineId": "string"

      }

      Example:

      ```json
      {
       "name": "Example Tax Code",
       "active": true,
       "description": "This is a description for the tax code.",
       "taxEngineId": "47d2609fbd479ec78fe32045b894f187"
      }
      ```
    </td>
  </tr>
</table>

Response body:

```json
{
   "id": "8ad095ba917efcb101918d8acaec367f",
   "taxEngineId": "47d2609fbd479ec78fe32045b894f187",
   "active": false,
   "name": "Example Tax Code",
   "description": "This is a description for the tax code.",
   "success": true
}
```

## Update Tax Codes

To update the Zuora Tax Code, see the following request and a sample of 200 response:

HTTP request:

`PUT https://rest.apisandbox.zuora.com/settings/tax-codes/ztax/{id}`

Request body:

<table>
  <tr>
    <th>
      Key
    </th>

    <th>
      Value
    </th>
  </tr>

  <tr>
    <td>
      Curl
    </td>

    <td>
      PUT [https://rest.apisandbox.zuora.com/settings/tax-codes/ztax/\\\{id\\}](https://rest.apisandbox.zuora.com/settings/tax-codes/ztax/\\\{id\\})
    </td>
  </tr>

  <tr>
    <td>
      Authorization
    </td>

    <td>
      Auth Type - Bearer Token \<oauth_token>
    </td>
  </tr>

  <tr>
    <td>
      Headers
    </td>

    <td>
      * Authorization - Bearer \<oauth_token>
      * Content-Type - application/json
    </td>
  </tr>

  <tr>
    <td>
      Body
    </td>

    <td>
      \--data \{

      "name": "string",

      "active": true,

      "description": "string | null",

      "taxEngineId": "string"

      }

      Example:

      ```json
      {
       "name": "Update Tax Code",
       "active": true,
       "description": "A description for the new tax code.",
       "taxEngineId": "47d2609fbd479ec78fe32045b894f187"
      }
      ```
    </td>
  </tr>
</table>

Response body:

```json
{
   "id": "47d2609fda26e8f15d7954299457f92e",
   "taxEngineId": "47d2609fbd479ec78fe32045b894f187",
   "active": false,
   "name": "Update Tax Code",
   "description": "A description for the new tax code.",
   "success": true
}
```

## Delete Tax Codes

To delete a tax code, see the following request and a sample of 200 response:

HTTP request:

`DELETE https://rest.apisandbox.zuora.com/settings/tax-codes/ztax/{id}`

Request body:

<table>
  <tr>
    <th>
      Key
    </th>

    <th>
      Value
    </th>
  </tr>

  <tr>
    <td>
      Curl
    </td>

    <td>
      DELETE [https://rest.apisandbox.zuora.com/settings/tax-codes/ztax/\\\{id\\}](https://rest.apisandbox.zuora.com/settings/tax-codes/ztax/\\\{id\\})
    </td>
  </tr>

  <tr>
    <td>
      Authorization
    </td>

    <td>
      Auth Type - Bearer Token \<oauth_token>
    </td>
  </tr>

  <tr>
    <td>
      Headers
    </td>

    <td>
      * Authorization - Bearer \<oauth_token>
      * Content-Type - application/json
    </td>
  </tr>
</table>

Response body:

```json
{
   "success": true
}
```