Tax Rates
A tax rate's name and percentage can't be changed once created. The API
only applies default tax rates to an invoice, subscription, or sales
page when you send include_default_tax_rates: true; otherwise you get
exactly the tax_rates you send.
To find a tax rate's id, use the one returned when you create it, or
read it from an invoice's tax_rates.
The tax rate object
- Name
id- Type
- string
- Description
Example:
0abcDEF1234567890xyzAB.
- Name
name- Type
- string
- Name
percentage- Type
- string
- Description
Percentage as a decimal string, without trailing zeros.
- Name
is_default- Type
- boolean
- Name
created_at- Type
- timestamp
- Description
Date and time in UTC. Example:
2024-06-15T12:00:00.000000Z.
- Name
updated_at- Type
- timestamp
- Description
Date and time in UTC. Example:
2024-06-15T12:00:00.000000Z.
- Name
is_deleted- Type
- boolean
The tax rate object
{
"id": "0abcDEF1234567890xyzAB",
"name": "QST",
"percentage": "9.975",
"is_default": true,
"created_at": "2024-06-15T12:00:00.000000Z",
"updated_at": "2024-06-15T12:00:00.000000Z",
"is_deleted": false
}Create a tax rate
Request body
- Name
name- Type
- string
- Required
- required
- Description
Max length 255.
- Name
percentage- Type
- number
- Required
- required
- Description
Up to 4 decimals. Example:
9.975. Min 0. Max 100.
- Name
is_default- Type
- boolean
- Required
- required
Response
- Name
201- Description
Created tax rate. Returns a tax rate object.
Errors
- Name
400- Type
- request_failed
- Description
Your request could not be processed.
- Name
400- Type
- api_version_unsupported
- Description
The requested API version is not supported. Current version: 2026-08-21
- Name
401- Type
- api_key_missing
- Description
The API key is missing.
- Name
401- Type
- api_key_invalid
- Description
The API key is invalid or has been revoked.
- Name
403- Type
- api_key_read_only
- Description
This API key is read-only and cannot make write requests.
- Name
422- Description
The request body or query parameters are invalid.
- Name
429- Description
Too many requests. The limit is 300 requests per 5 minutes.
Request
curl -X POST https://api.tallymark.com/tax-rates \
-H "Authorization: Bearer $TALLYMARK_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "QST",
"percentage": 9.975,
"is_default": true
}'Response
{
"id": "0abcDEF1234567890xyzAB",
"name": "QST",
"percentage": "9.975",
"is_default": true,
"created_at": "2024-06-15T12:00:00.000000Z",
"updated_at": "2024-06-15T12:00:00.000000Z",
"is_deleted": false
}Set or unset a tax rate as default
Only is_default can be changed. A tax rate's name and percentage are
fixed once it's created.
Path parameters
- Name
id- Type
- string
- Required
- required
- Description
The tax rate ID. Example:
0abcDEF1234567890xyzAB.
Request body
- Name
is_default- Type
- boolean
- Required
- required
Response
- Name
200- Description
Updated tax rate. Returns a tax rate object.
Errors
- Name
400- Type
- request_failed
- Description
Your request could not be processed.
- Name
400- Type
- api_version_unsupported
- Description
The requested API version is not supported. Current version: 2026-08-21
- Name
401- Type
- api_key_missing
- Description
The API key is missing.
- Name
401- Type
- api_key_invalid
- Description
The API key is invalid or has been revoked.
- Name
403- Type
- api_key_read_only
- Description
This API key is read-only and cannot make write requests.
- Name
404- Description
The record doesn't exist or was deleted.
- Name
422- Description
The request body or query parameters are invalid.
- Name
429- Description
Too many requests. The limit is 300 requests per 5 minutes.
Request
curl -X POST https://api.tallymark.com/tax-rates/0abcDEF1234567890xyzAB/update \
-H "Authorization: Bearer $TALLYMARK_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"is_default": false
}'Response
{
"id": "0abcDEF1234567890xyzAB",
"name": "QST",
"percentage": "9.975",
"is_default": true,
"created_at": "2024-06-15T12:00:00.000000Z",
"updated_at": "2024-06-15T12:00:00.000000Z",
"is_deleted": false
}Delete a tax rate
Deletes the tax rate. It can no longer be added to invoices,
subscriptions, or sales pages, but those that already use it keep it.
A deleted default tax rate keeps is_default but is no longer added
by include_default_tax_rates.
Path parameters
- Name
id- Type
- string
- Required
- required
- Description
The tax rate ID. Example:
0abcDEF1234567890xyzAB.
Response
- Name
200- Description
Deleted tax rate (
is_deletedtrue). Returns a tax rate object.
Errors
- Name
400- Type
- request_failed
- Description
Your request could not be processed.
- Name
400- Type
- api_version_unsupported
- Description
The requested API version is not supported. Current version: 2026-08-21
- Name
401- Type
- api_key_missing
- Description
The API key is missing.
- Name
401- Type
- api_key_invalid
- Description
The API key is invalid or has been revoked.
- Name
403- Type
- api_key_read_only
- Description
This API key is read-only and cannot make write requests.
- Name
404- Description
The record doesn't exist or was deleted.
- Name
429- Description
Too many requests. The limit is 300 requests per 5 minutes.
Request
curl -X POST https://api.tallymark.com/tax-rates/0abcDEF1234567890xyzAB/delete \
-H "Authorization: Bearer $TALLYMARK_API_KEY"Response
{
"id": "0abcDEF1234567890xyzAB",
"name": "QST",
"percentage": "9.975",
"is_default": true,
"created_at": "2024-06-15T12:00:00.000000Z",
"updated_at": "2024-06-15T12:00:00.000000Z",
"is_deleted": false
}