---
title: "Fetch a tax"
method: GET
path: "/v1/taxes/{tax_id}"
tags: ["Taxes"]
---

# Fetch a tax

`GET /v1/taxes/{tax_id}`

## Request

- Base URL: `https://api.yoco.com`
- URL: `https://api.yoco.com/v1/taxes/{tax_id}`
- Auth: HTTP bearer

Fetch a tax

**Required scope: `business/catalogue:read`**

**Deprecated alias:** `business/products:read` (still accepted, will be removed in a future release)

## Path parameters

- `tax_id` string, required: The unique identifier of the tax.

## Response `200`

Successful Response

- Tax
  - `id` string, required: The unique identifier of the tax.
  - `name` string, required: A human-readable name for the tax.
  - `type` 'additive' | 'inclusive', required: `TaxType` can be either `additive` or `inclusive` and affects how tax is calculated. For `additive` tax, the tax is calculated on top of the price. For example, an item which costs R100.00 with a 15% additive tax has a total cost to the buyer of R115.00 (R100.00 * 1.15). The tax amount is therefore R115.00 - R100.00 = R15.00. For `inclusive` tax, the tax is included in the price. For example, an item which costs R115.00 with a 15% inclusive tax has a total cost to the buyer of R115.00. The tax amount is R15.00 (R115.00 * 15/115) whilst the taxable amount is R100 (R115.00 - R15.00).
  - `percentage` string, required: The tax rate. For example, `15.00` corresponds to a tax rate of `15%`.
  - `is_default` boolean, required: Whether this is the business's default tax. An item with no taxes of its own is charged the default tax. The merchant chooses the default tax in the Yoco app.
  - `created_at` string, date-time, required: The tax creation date and time in ISO 8601 format.
  - `updated_at` string, date-time, required: The date and time the tax was last modified in ISO 8601 format.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `429`: Too Many Requests

## Changes

- **2026-11-05** `daf9b9d86161`: 1 info
  - added the non-success response with the status `400`
- **2026-10-22** `f961bea3a9a4`: 1 info
  - the `percentage` response's property pattern `^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$` was removed for the status `200`
- **2026-10-01** `6db30fc189f8`: 1 info
  - for the `path` request parameter `tax_id`, the maxLength was increased from `100` to `201`
- **2026-09-30** `47cea4404cf5`: 16 warning
  - added the new `content_too_large` enum value to the `code` response property for the response status `401`
  - added the new `content_too_large` enum value to the `code` response property for the response status `403`
  - added the new `content_too_large` enum value to the `code` response property for the response status `404`
  - added the new `content_too_large` enum value to the `code` response property for the response status `429`
  - …12 more
- **2026-09-29** `9de0f7629385`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/yoco/apis/yoco-api/changes/v1/taxes/:tax_id/get.md)

---

[API](https://skmtc.dev/yoco/apis/yoco-api.md) - [All operations](https://skmtc.dev/yoco/apis/yoco-api/llms.txt) - [OpenAPI document](https://skmtc.dev/yoco/apis/yoco-api/revisions/daf9b9d86161?raw)
