Back to Woocommerce

Tax classes

docs/apis/rest-api/v1/tax-classes.mdx

10.9.0-dev5.0 KB
Original Source

import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';

Tax classes

The tax classes API allows you to create, view, and delete individual tax classes.

Tax class properties

AttributeTypeDescription
slugstringUnique identifier for the resource. READ-ONLY
namestringTax class name. REQUIRED

Create a tax class

This API helps you to create a new tax class.

http
POST /wp-json/wc/v1/taxes/classes
<Tabs> <TabItem value="curl" label="cURL">
shell
curl -X POST https://example.com/wp-json/wc/v1/taxes/classes \
    -u consumer_key:consumer_secret \
    -H "Content-Type: application/json" \
    -d '{
  "name": "Zero Rate"
}'
</TabItem> <TabItem value="js" label="JavaScript">
javascript
const data = {
  name: "Zero Rate"
};

WooCommerce.post("taxes/classes", data)
  .then((response) => {
    console.log(response.data);
  })
  .catch((error) => {
    console.log(error.response.data);
  });
</TabItem> <TabItem value="php" label="PHP">
php
<?php
$data = [
    'name' => 'Zero Rate'
];

print_r($woocommerce->post('taxes/classes', $data));
?>
</TabItem> <TabItem value="python" label="Python">
python
data = {
    "name": "Zero Rate"
}

print(wcapi.post("taxes/classes", data).json())
</TabItem> <TabItem value="ruby" label="Ruby">
ruby
data = {
  name: "Zero Rate"
}

woocommerce.post("taxes/classes", data).parsed_response
</TabItem> <TabItem value="response" label="JSON Response">
json
{
  "slug": "zero-rate",
  "name": "Zero Rate",
  "_links": {
    "collection": [
      {
        "href": "https://example.com/wp-json/wc/v1/taxes/classes"
      }
    ]
  }
}
</TabItem> </Tabs>

List all tax classes

This API helps you to view all tax classes.

http
GET /wp-json/wc/v1/taxes/classes
<Tabs> <TabItem value="curl" label="cURL">
shell
curl https://example.com/wp-json/wc/v1/taxes/classes \
	-u consumer_key:consumer_secret
</TabItem> <TabItem value="js" label="JavaScript">
javascript
WooCommerce.get("taxes/classes")
  .then((response) => {
    console.log(response.data);
  })
  .catch((error) => {
    console.log(error.response.data);
  });
</TabItem> <TabItem value="php" label="PHP">
php
<?php print_r($woocommerce->get('taxes/classes')); ?>
</TabItem> <TabItem value="python" label="Python">
python
print(wcapi.get("taxes/classes").json())
</TabItem> <TabItem value="ruby" label="Ruby">
ruby
woocommerce.get("taxes/classes").parsed_response
</TabItem> <TabItem value="response" label="JSON Response">
json
[
  {
    "slug": "standard",
    "name": "Standard Rate",
    "_links": {
      "collection": [
        {
          "href": "https://example.com/wp-json/wc/v1/taxes/classes"
        }
      ]
    }
  },
  {
    "slug": "reduced-rate",
    "name": "Reduced Rate",
    "_links": {
      "collection": [
        {
          "href": "https://example.com/wp-json/wc/v1/taxes/classes"
        }
      ]
    }
  },
  {
    "slug": "zero-rate",
    "name": "Zero Rate",
    "_links": {
      "collection": [
        {
          "href": "https://example.com/wp-json/wc/v1/taxes/classes"
        }
      ]
    }
  }
]
</TabItem> </Tabs>

Delete a tax class

This API helps you delete a tax class.

:::warning This also will delete all tax rates from the selected class. :::

http
DELETE /wp-json/wc/v1/taxes/classes/<slug>
<Tabs> <TabItem value="curl" label="cURL">
shell
curl -X DELETE https://example.com/wp-json/wc/v1/taxes/classes/zero-rate?force=true \
	-u consumer_key:consumer_secret
</TabItem> <TabItem value="js" label="JavaScript">
javascript
WooCommerce.delete("taxes/classes/zero-rate", {
  force: true
})
  .then((response) => {
    console.log(response.data);
  })
  .catch((error) => {
    console.log(error.response.data);
  });
</TabItem> <TabItem value="php" label="PHP">
php
<?php print_r($woocommerce->delete('taxes/classes/zero-rate', ['force' => true])); ?>
</TabItem> <TabItem value="python" label="Python">
python
print(wcapi.delete("taxes/classes/zero-rate", params={"force": True}).json())
</TabItem> <TabItem value="ruby" label="Ruby">
ruby
woocommerce.delete("taxes/classes/zero-rate", force: true).parsed_response
</TabItem> <TabItem value="response" label="JSON Response">
json
{
  "slug": "zero-rate",
  "name": "Zero Rate",
  "_links": {
    "collection": [
      {
        "href": "https://example.com/wp-json/wc/v1/taxes/classes"
      }
    ]
  }
}
</TabItem> </Tabs>

Available parameters

ParameterTypeDescription
forcestringRequired to be true, since this resource does not support trashing.