List all currencies
Returns a list of currencies.
NOTE: QuickBooks Desktop does not support pagination for currencies; hence, there is no cursor parameter. Users typically have few currencies.
Query parameters
Filter for specific currencies 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 currencies 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 currencies by their name(s), case-insensitive. Like id, name is a unique identifier for a currency.
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 currencies by their name(s), case-insensitive. Like id, name is a unique identifier for a currency.
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.
[ "United States Dollar" ]
The maximum number of objects to return.
IMPORTANT: QuickBooks Desktop does not support cursor-based pagination for currencies. 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 currencies without limit, unlike paginated endpoints which default to 150 records. This is acceptable because currencies typically have low record counts.
The maximum number of objects to return.
IMPORTANT: QuickBooks Desktop does not support cursor-based pagination for currencies. 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 currencies without limit, unlike paginated endpoints which default to 150 records. This is acceptable because currencies typically have low record counts.
Filter for currencies that are active, inactive, or both.
Filter for currencies that are active, inactive, or both.
Filter for currencies 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 currencies 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 currencies 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 currencies 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 currencies whose name contains this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameStartsWith or nameEndsWith.
Filter for currencies whose name contains this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameStartsWith or nameEndsWith.
Filter for currencies whose name starts with this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameContains or nameEndsWith.
Filter for currencies whose name starts with this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameContains or nameEndsWith.
Filter for currencies whose name ends with this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameContains or nameStartsWith.
Filter for currencies whose name ends with this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameContains or nameStartsWith.
Filter for currencies whose name is alphabetically greater than or equal to this value.
Filter for currencies whose name is alphabetically greater than or equal to this value.
Filter for currencies whose name is alphabetically less than or equal to this value.
Filter for currencies 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 currencies.
Example response
{
"objectType": "list",
"url": "/v1/quickbooks-desktop/currencies",
"data": [
{
"id": "80000001-1234567890",
"objectType": "qbd_currency",
"createdAt": "2025-01-01T12:34:56+00:00",
"updatedAt": "2025-02-01T12:34:56+00:00",
"revisionNumber": "1721172183",
"name": "United States Dollar",
"isActive": true,
"currencyCode": "USD",
"currencyFormat": {
"thousandSeparator": "comma",
"thousandSeparatorGrouping": "xx_xxx_xxx",
"decimalPlaces": "2",
"decimalSeparator": "period"
},
"exchangeRate": 1.2345,
"asOfDate": "2024-08-01"
}
]
}Changes
Changed in 5 of the 46 revisions of this API.128
- ▲
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/asOfDatelist-of-types was widened by adding typesnullto media typeapplication/jsonof response200response-property-list-of-types-widened
- ▲
response property
data/items/exchangeRatelist-of-types was widened by adding typesnullto media typeapplication/jsonof response200response-property-list-of-types-widened
- ▲
response property
data/items/isUserDefinedCurrencylist-of-types was widened by adding typesnullto media typeapplication/jsonof response200response-property-list-of-types-widened
- ○
added
subschema #2to the//response propertyanyOflist for the response statusresponse-property-any-of-added
- ○
removed
subschema #2from the//response propertyoneOflist for the response statusresponse-property-one-of-removed
- ▲
- ▲
the response property
//became nullable for the statusresponse-property-became-nullable
- ▲
the response property
//became nullable for the statusresponse-property-became-nullable
- ▲
the response property
//became nullable for the statusresponse-property-became-nullable
- ▲
added
subschema #2to the//response propertyoneOflist for the response statusresponse-property-one-of-added
- ○
removed
subschema #2from the//response propertyanyOflist for the response statusresponse-property-any-of-removed
- ○
response property
data/items/asOfDatelist-of-types was narrowed by removing typesnullfrom media typeapplication/jsonof response200response-property-list-of-types-narrowed
- ○
response property
data/items/exchangeRatelist-of-types was narrowed by removing typesnullfrom media typeapplication/jsonof response200response-property-list-of-types-narrowed
- ○
response property
data/items/isUserDefinedCurrencylist-of-types was narrowed by removing typesnullfrom media typeapplication/jsonof response200response-property-list-of-types-narrowed
- ▲
- ▲
response property
data/items/asOfDatelist-of-types was widened by adding typesnullto media typeapplication/jsonof response200response-property-list-of-types-widened
- ▲
response property
data/items/exchangeRatelist-of-types was widened by adding typesnullto media typeapplication/jsonof response200response-property-list-of-types-widened
- ▲
response property
data/items/isUserDefinedCurrencylist-of-types was widened by adding typesnullto media typeapplication/jsonof response200response-property-list-of-types-widened
- ○
added
subschema #2to the//response propertyanyOflist for the response statusresponse-property-any-of-added
- ○
removed
subschema #2from the//response propertyoneOflist for the response statusresponse-property-one-of-removed
- ▲