---
title: "List taxes"
method: GET
path: "/v1/taxes/"
tags: ["Taxes"]
---

# List taxes

`GET /v1/taxes/`

## Request

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

List taxes

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

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

## Query parameters

- `cursor` string, nullable: A pagination cursor from where results should start being fetched.
- `limit` integer: The maximum number of results to return.

## Response `200`

Successful Response

- PaginatedResponseTax
  - `data` Tax[], required: A list of paginated entities.
    - `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.
  - `next_cursor` string, nullable, required: A pagination cursor that can be used to retrieve the next set of results.

## Other responses

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

## Changes

- **2026-10-22** `f961bea3a9a4`: 1 info
  - the `data/items/percentage` response's property pattern `^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$` was removed for the status `200`
- **2026-09-30** `47cea4404cf5`: 16 warning
  - added the new `content_too_large` enum value to the `code` response property for the response status `400`
  - 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 `429`
  - …12 more
- **2026-09-29** `9de0f7629385`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/yoco/apis/yoco-api/changes/v1/taxes/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)
