List all accounts

Changed on

Returns a list of accounts.

NOTE: QuickBooks Desktop does not support pagination for accounts; hence, there is no cursor parameter. Users typically have few accounts.

get/quickbooks-desktop/accounts

Request

Query parameters

idsstring[]

Filter for specific accounts 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"
]
fullNamesstring[]

Filter for specific accounts by their full-name(s), case-insensitive. Like id, fullName is a unique identifier for an account, formed by by combining the names of its parent objects with its own name, separated by colons. For example, if an account is under "Corporate" and has the name "Accounts-Payable", its fullName would be "Corporate:Accounts-Payable".

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.

[
  "Corporate:Accounts-Payable"
]
limitinteger

The maximum number of objects to return.

IMPORTANT: QuickBooks Desktop does not support cursor-based pagination for accounts, so this parameter only limits the response size.

When this parameter is omitted, the endpoint returns all accounts without limit, unlike paginated endpoints which default to 150 records.

Example:10
status'active' | 'all' | 'inactive'

Filter for accounts that are active, inactive, or both.

Example:active
updatedAfterstring

Filter for accounts 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.
Example:2025-01-01T12:34:56+00:00
updatedBeforestring

Filter for accounts 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.
Example:2025-02-01T12:34:56+00:00
nameContainsstring

Filter for accounts whose name contains this substring, case-insensitive.

NOTE: If you use this parameter, you cannot also use nameStartsWith or nameEndsWith.

Example:ABC
nameStartsWithstring

Filter for accounts whose name starts with this substring, case-insensitive.

NOTE: If you use this parameter, you cannot also use nameContains or nameEndsWith.

Example:ABC
nameEndsWithstring

Filter for accounts whose name ends with this substring, case-insensitive.

NOTE: If you use this parameter, you cannot also use nameContains or nameStartsWith.

Example:ABC
nameFromstring

Filter for accounts whose fullName sorts at or after this value (inclusive), compared case-insensitively in QuickBooks' sort order: punctuation first, then digits, then letters.

IMPORTANT: Even when you set nameFrom or nameTo, QuickBooks returns accounts in its own internal order, not sorted by name. Do not use these parameters to page through accounts.

NOTE: If you use this parameter, you cannot also use nameContains, nameStartsWith, or nameEndsWith.

Example:A
nameTostring

Filter for accounts whose fullName sorts at or before this value (inclusive), compared case-insensitively in QuickBooks' sort order: punctuation first, then digits, then letters. If you also set nameFrom, it must not sort after this value, or QuickBooks returns an error.

IMPORTANT: Even when you set nameFrom or nameTo, QuickBooks returns accounts in its own internal order, not sorted by name. Do not use these parameters to page through accounts.

NOTE: If you use this parameter, you cannot also use nameContains, nameStartsWith, or nameEndsWith.

Example:Z
accountType'accounts_payable' | 'accounts_receivable' | 'bank' | 'cost_of_goods_sold' | 'credit_card' | 'equity' | 'expense' | 'fixed_asset' | 'income' | 'long_term_liability' | 'non_posting' | 'other_asset' | 'other_current_asset' | 'other_current_liability' | 'other_expense' | 'other_income'

Filter for accounts of this type.

Example:income
currencyIdsstring[]

Filter for accounts in these currencies.

[
  "80000001-1234567890"
]

Headers

Conductor-End-User-Idstring required

The ID of the End-User to receive this request.

Example:end_usr_1234567abcdefg

Response

Returns a list of accounts.

objectType'list' required

The type of object. This value is always "list".

urlstring required

The endpoint URL where this list can be accessed.

Example response

{
  "objectType": "list",
  "url": "/v1/quickbooks-desktop/accounts",
  "data": [
    {
      "id": "80000001-1234567890",
      "objectType": "qbd_account",
      "createdAt": "2025-01-01T12:34:56+00:00",
      "updatedAt": "2025-02-01T12:34:56+00:00",
      "revisionNumber": "1721172183",
      "name": "Accounts-Payable",
      "fullName": "Corporate:Accounts-Payable",
      "isActive": true,
      "parent": {
        "id": "80000001-1234567890",
        "fullName": "Corporate"
      },
      "sublevel": 1,
      "accountType": "bank",
      "specialAccountType": "undeposited_funds",
      "isTaxAccount": true,
      "accountNumber": "1010",
      "bankAccountNumber": "123456789",
      "description": "Accounts-payable are the amounts owed to suppliers for goods and services purchased on credit.",
      "balance": "1000.00",
      "totalBalance": "5000.00",
      "salesTaxCode": {
        "id": "80000001-1234567890",
        "fullName": "Non"
      },
      "taxLineDetails": {
        "taxLineId": 123,
        "taxLineName": "State Sales Tax"
      },
      "cashFlowClassification": "operating",
      "currency": {
        "id": "80000001-1234567890",
        "fullName": "USD"
      },
      "customFields": [
        {
          "ownerId": "0",
          "name": "Customer Rating",
          "type": "string_1024_type",
          "value": "Premium"
        }
      ]
    }
  ]
}

Changes