List all sales-tax codes
Returns a list of sales-tax codes.
NOTE: QuickBooks Desktop does not support pagination for sales-tax codes; hence, there is no cursor parameter. Users typically have few sales-tax codes.
Query parameters
Filter for specific sales-tax codes by their QuickBooks-assigned unique identifier(s).
IMPORTANT: If you include this parameter, QuickBooks will ignore all other query parameters for this request.
NOTE: If any of the values you specify in this parameter are not found, the request will return an error.
Filter for specific sales-tax codes by their QuickBooks-assigned unique identifier(s).
IMPORTANT: If you include this parameter, QuickBooks will ignore all other query parameters for this request.
NOTE: If any of the values you specify in this parameter are not found, the request will return an error.
[ "80000001-1234567890" ]
Filter for specific sales-tax codes by their name(s), case-insensitive. Like id, name is a unique identifier for a sales-tax code.
IMPORTANT: If you include this parameter, QuickBooks will ignore all other query parameters for this request.
NOTE: If any of the values you specify in this parameter are not found, the request will return an error.
Filter for specific sales-tax codes by their name(s), case-insensitive. Like id, name is a unique identifier for a sales-tax code.
IMPORTANT: If you include this parameter, QuickBooks will ignore all other query parameters for this request.
NOTE: If any of the values you specify in this parameter are not found, the request will return an error.
[ "Tax" ]
The maximum number of objects to return.
IMPORTANT: QuickBooks Desktop does not support cursor-based pagination for sales-tax codes. This parameter will limit the response size, but you cannot fetch subsequent results using a cursor. For pagination, use the name-range parameters instead (e.g., nameFrom=A&nameTo=B).
When this parameter is omitted, the endpoint returns all sales-tax codes without limit, unlike paginated endpoints which default to 150 records. This is acceptable because sales-tax codes typically have low record counts.
The maximum number of objects to return.
IMPORTANT: QuickBooks Desktop does not support cursor-based pagination for sales-tax codes. This parameter will limit the response size, but you cannot fetch subsequent results using a cursor. For pagination, use the name-range parameters instead (e.g., nameFrom=A&nameTo=B).
When this parameter is omitted, the endpoint returns all sales-tax codes without limit, unlike paginated endpoints which default to 150 records. This is acceptable because sales-tax codes typically have low record counts.
Filter for sales-tax codes that are active, inactive, or both.
Filter for sales-tax codes that are active, inactive, or both.
Filter for sales-tax codes updated on or after this date/time. Accepts the following ISO 8601 formats:
- date-only (YYYY-MM-DD) - QuickBooks Desktop interprets the date as the start of the specified day in the local timezone of the end-user's computer (e.g., 2025-01-01 → 2025-01-01T00:00:00).
- datetime without timezone (YYYY-MM-DDTHH:mm:ss) - QuickBooks Desktop interprets the timestamp in the local timezone of the end-user's computer.
- datetime with timezone (YYYY-MM-DDTHH:mm:ss±HH:mm) - QuickBooks Desktop interprets the timestamp using the specified timezone.
Filter for sales-tax codes updated on or after this date/time. Accepts the following ISO 8601 formats:
- date-only (YYYY-MM-DD) - QuickBooks Desktop interprets the date as the start of the specified day in the local timezone of the end-user's computer (e.g., 2025-01-01 → 2025-01-01T00:00:00).
- datetime without timezone (YYYY-MM-DDTHH:mm:ss) - QuickBooks Desktop interprets the timestamp in the local timezone of the end-user's computer.
- datetime with timezone (YYYY-MM-DDTHH:mm:ss±HH:mm) - QuickBooks Desktop interprets the timestamp using the specified timezone.
Filter for sales-tax codes updated on or before this date/time. Accepts the following ISO 8601 formats:
- date-only (YYYY-MM-DD) - QuickBooks Desktop interprets the date as the end of the specified day in the local timezone of the end-user's computer (e.g., 2025-01-01 → 2025-01-01T23:59:59).
- datetime without timezone (YYYY-MM-DDTHH:mm:ss) - QuickBooks Desktop interprets the timestamp in the local timezone of the end-user's computer.
- datetime with timezone (YYYY-MM-DDTHH:mm:ss±HH:mm) - QuickBooks Desktop interprets the timestamp using the specified timezone.
Filter for sales-tax codes updated on or before this date/time. Accepts the following ISO 8601 formats:
- date-only (YYYY-MM-DD) - QuickBooks Desktop interprets the date as the end of the specified day in the local timezone of the end-user's computer (e.g., 2025-01-01 → 2025-01-01T23:59:59).
- datetime without timezone (YYYY-MM-DDTHH:mm:ss) - QuickBooks Desktop interprets the timestamp in the local timezone of the end-user's computer.
- datetime with timezone (YYYY-MM-DDTHH:mm:ss±HH:mm) - QuickBooks Desktop interprets the timestamp using the specified timezone.
Filter for sales-tax codes whose name contains this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameStartsWith or nameEndsWith.
Filter for sales-tax codes whose name contains this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameStartsWith or nameEndsWith.
Filter for sales-tax codes whose name starts with this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameContains or nameEndsWith.
Filter for sales-tax codes whose name starts with this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameContains or nameEndsWith.
Filter for sales-tax codes whose name ends with this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameContains or nameStartsWith.
Filter for sales-tax codes whose name ends with this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameContains or nameStartsWith.
Filter for sales-tax codes whose name is alphabetically greater than or equal to this value.
Filter for sales-tax codes whose name is alphabetically greater than or equal to this value.
Filter for sales-tax codes whose name is alphabetically less than or equal to this value.
Filter for sales-tax codes whose name is alphabetically less than or equal to this value.
Headers
The ID of the End-User to receive this request.
The ID of the End-User to receive this request.
Response
Returns a list of sales-tax codes.
Example response
{
"objectType": "list",
"url": "/v1/quickbooks-desktop/sales-tax-codes",
"data": [
{
"id": "80000001-1234567890",
"objectType": "qbd_sales_tax_code",
"createdAt": "2025-01-01T12:34:56+00:00",
"updatedAt": "2025-02-01T12:34:56+00:00",
"revisionNumber": "1721172183",
"name": "Tax",
"isActive": true,
"isTaxable": true,
"description": "Standard tax rate for California",
"salesTaxItem": {
"id": "80000001-1234567890",
"fullName": "State Sales Tax"
}
}
]
}Changes
Changed in 5 of the 46 revisions of this API.136
- ▲
for the
queryrequest parameterstatus, default valueactivewas addedrequest-parameter-default-value-added
- ▲
- ▲
for the
queryrequest parameterstatus, default valueactivewas removedrequest-parameter-default-value-removed
- ▲
- ▲
response property
data/items/descriptionlist-of-types was widened by adding typesnullto media typeapplication/jsonof response200response-property-list-of-types-widened
- ▲
the
//response's property type changed fromobjectnullto no type for statusresponse-property-type-changed
- ▲
removed the required property
///from the response with the statusresponse-required-property-removed
- ▲
removed the required property
///from the response with the statusresponse-required-property-removed
- ○
added
subschema #1subschema #2to the//response propertyanyOflist for the response statusresponse-property-any-of-added
- ▲
- ▲
the response property
//became nullable for the statusresponse-property-became-nullable
- ▲
the response property
//became nullable for the statusresponse-property-became-nullable
- ▲
the
//response's property type changed from no type toobjectnullfor statusresponse-property-type-changed
- ○
removed
subschema #1subschema #2from the//response propertyanyOflist for the response statusresponse-property-any-of-removed
- ○
response property
data/items/descriptionlist-of-types was narrowed by removing typesnullfrom media typeapplication/jsonof response200response-property-list-of-types-narrowed
- ○
added the required property
///to the response with the statusresponse-required-property-added
- ○
added the required property
///to the response with the statusresponse-required-property-added
- ▲
- ▲
response property
data/items/descriptionlist-of-types was widened by adding typesnullto media typeapplication/jsonof response200response-property-list-of-types-widened
- ▲
the
//response's property type changed fromobjectnullto no type for statusresponse-property-type-changed
- ▲
removed the required property
///from the response with the statusresponse-required-property-removed
- ▲
removed the required property
///from the response with the statusresponse-required-property-removed
- ○
added
subschema #1subschema #2to the//response propertyanyOflist for the response statusresponse-property-any-of-added
- ▲