### Sample Account Object Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account An example of a sample Account object. ```APIDOC ## Sample Account Object ```json { "Account": { "FullyQualifiedName": "MyJobs", "domain": "QBO", "Name": "MyJobs", "Classification": "Asset", "AccountSubType": "AccountsReceivable" } } ``` ``` -------------------------------- ### Query Accounts Example Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account Demonstrates how to query accounts based on specific criteria, such as the creation date. The query uses a SELECT statement with a WHERE clause. ```sql select * from Account where Metadata.CreateTime > '2014-12-31' ``` -------------------------------- ### Full Update Account Example Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account Demonstrates the JSON response structure for a fully updated account object. This response includes all writable fields of the account. ```json { "Account": { "FullyQualifiedName": "Accounts Payable (A/P)", "domain": "QBO", "Name": "Accounts Payable (A/P)", "Classification": "Liability", "AccountSubType": "AccountsPayable" , "CurrentBalanceWithSubAccounts": -1091.23, "sparse": false, "MetaData": { "CreateTime": "2014-09-12T10:12 :02-07:00", "LastUpdatedTime": "2015-06-30T15 :09:07-07:00" }, "AccountType": "Accounts Payable", "CurrentBalance": -1091.23, "Active": true, "SyncToken": "0", "Id": "33", "SubAccount": false }, "time": "2015-07-13T12:50:36.72-07 :00" } ``` -------------------------------- ### Account Response Body - QuickBooks API Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account This is an example of the response body when retrieving account details from QuickBooks. It includes metadata and current balance information. ```json { "Account": { "FullyQualifiedName": "Accounts Payable (A/P)", "domain": "QBO", "SubAccount": false, "Description": "Description added during update.", "Classification": "Liability", "AccountSubType": "AccountsPayable" , "CurrentBalanceWithSubAccounts": -1091.23, "sparse": false, "MetaData": { "CreateTime": "2014-09-12T10:12 :02-07:00", "LastUpdatedTime": "2015-07-13T15 :35:13-07:00" }, "AccountType": "Accounts Payable", "CurrentBalance": -1091.23, "Active": true, "SyncToken": "1", "Id": "33", "Name": "Accounts Payable (A/P)" }, "time": "2015-07-13T15:31:25.618-07 :00" } ``` -------------------------------- ### Sample Account Object Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account This JSON object represents a sample account with its properties and values. ```json { "CurrencyRef": { "name": "United States Dollar", "value": "USD" }, "CurrentBalanceWithSubAccounts": 0, "sparse": false, "MetaData": { "CreateTime": "2014-12-31T09:29:05-08:00", "LastUpdatedTime": "2014-12-31T09:29:05-08:00" }, "AccountType": "Accounts Receivable", "CurrentBalance": 0, "Active": true, "SyncToken": "0", "Id": "94", "SubAccount": false } ``` -------------------------------- ### Sample Account Object JSON Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account This JSON represents a sample Account object. It includes key attributes like FullyQualifiedName, domain, Name, Classification, and AccountSubType. ```json { "Account": { "FullyQualifiedName": "MyJobs", "domain": "QBO", "Name": "MyJobs", "Classification": "Asset", "AccountSubType": "AccountsReceivable" } } ``` -------------------------------- ### Create Account Response Body Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account Illustrates the structure of the response when an account is successfully created. Includes details like Id, Name, and MetaData. ```json { "Account": { "FullyQualifiedName": "MyJobs", "domain": "QBO", "Name": "MyJobs", "Classification": "Asset", "AccountSubType": "AccountsReceivable", "CurrencyRef": { "name": "United States Dollar", "value": "USD" }, "CurrentBalanceWithSubAccounts": 0, "sparse": false, "MetaData": { "CreateTime": "2014-12-31T09:29 :05-08:00", "LastUpdatedTime": "2014-12-31T09 :29:05-08:00" }, "AccountType": "Accounts Receivable", "CurrentBalance": 0, "Active": true, "SyncToken": "0", "Id": "94", "SubAccount": false }, "time": "2014-12-31T09:29:05.717-08 :00" } ``` -------------------------------- ### Create Account Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account Creates a new account in QuickBooks Online. Ensure that the Name is unique and adheres to specified character constraints. Certain fields are conditionally required based on locale. ```APIDOC ## Create Account ### Description Creates a new account in QuickBooks Online. The Account.Name attribute must not contain double quotes (") or colon (:). The Account.AcctNum attribute must not contain a colon (:). ### Method POST ### Endpoint /v3/company//account ### Request Body #### Parameters - **Name** (string) - Required - User recognizable name for the Account. Max 100 characters. Must not contain double quotes (") or colon (:) . - **AcctNum** (string) - Conditionally required - User-defined account number. Must not contain colon (:). Required for France locales. - **TaxCodeRef** (ReferenceType) - Conditionally required - Reference to the default tax code. Required for France locales. - **AccountType** (AccountTypeEnum) - Conditionally required - A detailed account classification. Required if AccountSubType is not specified. - **AccountSubType** (string) - Conditionally required - The account sub-type classification. Required if AccountType is not specified. ### Request Example ```json { "Name": "MyJobs_test", "AccountType": "Accounts Receivable" } ``` ### Response #### Success Response (200) Returns the newly created Account object. #### Response Example ```json { "Account": { "FullyQualifiedName": "MyJobs", "domain": "QBO", "Name": "MyJobs", "Classification": "Asset", "AccountSubType": "AccountsReceivable", "CurrencyRef": { "name": "United States Dollar", "value": "USD" }, "CurrentBalanceWithSubAccounts": 0, "sparse": false, "MetaData": { "CreateTime": "2014-12-31T09:29:05-08:00", "LastUpdatedTime": "2014-12-31T09:29:05-08:00" }, "AccountType": "Accounts Receivable", "CurrentBalance": 0, "Active": true, "SyncToken": "0", "Id": "94", "SubAccount": false }, "time": "2014-12-31T09:29:05.717-08:00" } ``` ``` -------------------------------- ### Create Account Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account This endpoint allows you to create a new account in QuickBooks Online. You need to provide account details such as name, type, and classification. ```APIDOC ## POST /v3/company//account ### Description Creates a new account in QuickBooks Online. ### Method POST ### Endpoint /v3/company//account ### Request Body - **FullyQualifiedName** (string) - The fully qualified name of the account. - **domain** (string) - The domain of the account (e.g., "QBO"). - **SubAccount** (boolean) - Indicates if the account is a sub-account. - **Description** (string) - A description for the account. - **Classification** (string) - The classification of the account (e.g., "Liability"). - **AccountSubType** (string) - The sub-type of the account (e.g., "AccountsPayable"). - **AccountType** (string) - The type of the account (e.g., "Accounts Payable"). - **Active** (boolean) - Indicates if the account is active. - **Name** (string) - The name of the account. ### Request Example { "FullyQualifiedName": "Accounts Payable (A/P)", "domain": "QBO", "SubAccount": false, "Description": "Description added during update.", "Classification": "Liability", "AccountSubType": "AccountsPayable", "AccountType": "Accounts Payable", "Active": true, "Name": "Accounts Payable (A/P)" } ### Response #### Success Response (200) - **Account** (object) - The created account object. - **FullyQualifiedName** (string) - The fully qualified name of the account. - **domain** (string) - The domain of the account. - **SubAccount** (boolean) - Indicates if the account is a sub-account. - **Description** (string) - A description for the account. - **Classification** (string) - The classification of the account. - **AccountSubType** (string) - The sub-type of the account. - **CurrentBalanceWithSubAccounts** (number) - The current balance with sub-accounts. - **sparse** (boolean) - Indicates if the object is sparse. - **MetaData** (object) - Metadata for the account. - **CreateTime** (string) - The creation time of the account. - **LastUpdatedTime** (string) - The last updated time of the account. - **AccountType** (string) - The type of the account. - **CurrentBalance** (number) - The current balance of the account. - **Active** (boolean) - Indicates if the account is active. - **SyncToken** (string) - The sync token for the account. - **Id** (string) - The ID of the account. - **Name** (string) - The name of the account. - **time** (string) - The timestamp of the response. #### Response Example { "Account": { "FullyQualifiedName": "Accounts Payable (A/P)", "domain": "QBO", "SubAccount": false, "Description": "Description added during update.", "Classification": "Liability", "AccountSubType": "AccountsPayable", "CurrentBalanceWithSubAccounts": -1091.23, "sparse": false, "MetaData": { "CreateTime": "2014-09-12T10:12:02-07:00", "LastUpdatedTime": "2015-07-13T15:35:13-07:00" }, "AccountType": "Accounts Payable", "CurrentBalance": -1091.23, "Active": true, "SyncToken": "1", "Id": "33", "Name": "Accounts Payable (A/P)" }, "time": "2015-07-13T15:31:25.618-07:00" } ``` -------------------------------- ### Create Account Request Body Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account Provides the minimum required attributes to create a new account. Ensure 'Name' is unique and adheres to character restrictions. ```json { "Name": "MyJobs_test", "AccountType": "Accounts Receivable" } ``` -------------------------------- ### Read Account Details Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account Retrieves the details of an Account object. This is useful for fetching existing account information. ```json { "QueryResponse": { "startPosition": 1, "Account": [ { "FullyQualifiedName": "Canadian Accounts Receivable", "domain": "QBO", "Name": "Canadian Accounts Receivable", "Classification": "Asset", "AccountSubType": "AccountsReceivable", "CurrencyRef": { "name": "United States Dollar", "value": "USD" }, "CurrentBalanceWithSubAccounts" : 0, "sparse": false, "MetaData": { "CreateTime": "2015-06-23T09 :38:18-07:00", "LastUpdatedTime": "2015-06 -23T09:38:18-07:00" }, "AccountType": "Accounts Receivable", "CurrentBalance": 0, "Active": true, "SyncToken": "0", "Id": "92", "SubAccount": false }, { "FullyQualifiedName": "MyClients", "domain": "QBO", "Name": "MyClients", "Classification": "Asset", "AccountSubType": "AccountsReceivable", "CurrencyRef": { "name": "United States Dollar", "value": "USD" }, "CurrentBalanceWithSubAccounts" : 0, "sparse": false, "MetaData": { "CreateTime": "2015-07-13T12 :34:47-07:00", "LastUpdatedTime": "2015-07 -13T12:34:47-07:00" }, "AccountType": "Accounts Receivable", "CurrentBalance": 0, "Active": true, "SyncToken": "0", "Id": "93", "SubAccount": false }, { "FullyQualifiedName": "MyJobs", "domain": "QBO", "Name": "MyJobs", "Classification": "Asset", "AccountSubType": "AccountsReceivable", "CurrencyRef": { "name": "United States Dollar", "value": "USD" }, "CurrentBalanceWithSubAccounts" : 0, "sparse": false, "MetaData": { "CreateTime": "2015-01-13T10 :29:27-08:00", "LastUpdatedTime": "2015-01 -13T10:29:27-08:00" }, "AccountType": "Accounts Receivable", "CurrentBalance": 0, "Active": true, "SyncToken": "0", "Id": "91", "SubAccount": false } ], "maxResults": 3 }, "time": "2015-07-13T12:35:57.651-07 :00" } ``` -------------------------------- ### Create Account Request Body - QuickBooks API Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account Use this JSON payload to create a new account in QuickBooks. Ensure all required fields like Name, AccountType, and AccountSubType are correctly populated. ```json { "FullyQualifiedName": "Accounts Payable (A/P)", "domain": "QBO", "SubAccount": false, "Description": "Description added during update.", "Classification": "Liability", "AccountSubType": "AccountsPayable", "CurrentBalanceWithSubAccounts": -1091.23, "sparse": false, "MetaData": { "CreateTime": "2014-09-12T10:12:02 -07:00", "LastUpdatedTime": "2015-06-30T15 :09:07-07:00" }, "AccountType": "Accounts Payable", "CurrentBalance": -1091.23, "Active": true, "SyncToken": "0", "Id": "33", "Name": "Accounts Payable (A/P)" } ``` -------------------------------- ### Account Object Attributes Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account This section details the attributes of the Account object, including their types, requirements, and descriptions. ```APIDOC ## Account Object Attributes ### Id * **Type:** String * **Properties:** read only, system defined, filterable, sortable * **Description:** Unique identifier for this object. Sort order is ASC by default. ### Name * **Type:** String * **Properties:** Required, max 100 characters, filterable, sortable * **Description:** User recognizable name for the Account. Must not contain double quotes (") or colon (:). ### SyncToken * **Type:** String * **Properties:** Required for update, read only, system defined * **Description:** Version number of the object used for locking. Incremented on modification. ### AcctNum * **Type:** String * **Properties:** Conditionally required * **Description:** User-defined account number. Must not contain colon (:). Specific length and format requirements apply for French locales and other regions (AU, CA, US, UK, IN). * Name must be unique. * For French Locales: * Length must be between 6 and 20 characters. * Must start with the account number from the master category list. * Name limited to alpha-numeric characters. * Max length for Account.AcctNum: * AU & CA: 20 characters. * US, UK & IN: 7 characters ### CurrencyRef * **Type:** CurrencyRef * **Properties:** Optional, read only * **Description:** Reference to the currency in which this account holds amounts. ### ParentRef * **Type:** ReferenceType * **Properties:** Optional, filterable, sortable * **Description:** Specifies the Parent AccountId if this represents a SubAccount. ### Description * **Type:** String * **Properties:** Optional, max 100 characters, filterable, sortable * **Description:** User entered description for the account. ### Active * **Type:** Boolean * **Properties:** Optional, filterable * **Description:** Whether or not the account is active. Inactive accounts may be hidden and cannot be posted to. ### MetaData * **Type:** ModificationMetaData * **Properties:** Optional * **Description:** Descriptive information about the object. Set by Data Services and read only. ### SubAccount * **Type:** Boolean * **Properties:** read only, system defined, filterable, sortable * **Description:** Specifies whether this object represents a parent (false) or subaccount (true). Certain account types cannot have sub-accounts or be sub-accounts. ### Classification * **Type:** String * **Properties:** read only, system defined, filterable * **Description:** The classification of an account. Not supported for non-posting accounts. Valid values: Asset, Equity, Expense, Liability, Revenue. ### FullyQualifiedName * **Type:** String * **Properties:** read only, system defined, filterable, sortable * **Description:** Fully qualified name of the object; derived from Name and ParentRef. Limited to 5 levels. ### TxnLocationType * **Type:** String * **Properties:** (No specific properties mentioned) * **Description:** The account location. Valid values: WithinFrance, FranceOverseas, OutsideFranceWithEU, OutsideEU. For France locales only. ### AccountType * **Type:** AccountTypeEnum * **Properties:** filterable * **Description:** A detailed account classification based on Classification. ### CurrentBalanceWithSubAccounts * **Type:** Decimal * **Properties:** read only, filterable, sortable * **Description:** Cumulative balance amount for the current Account and all its sub-accounts. ### AccountAlias * **Type:** String * **Properties:** (No specific properties mentioned) * **Description:** A user-friendly, unique account name. For France locales only. ### TaxCodeRef * **Type:** ReferenceType * **Properties:** (No specific properties mentioned) * **Description:** Reference to the default tax code used by this account. ### AccountSubType * **Type:** String * **Properties:** filterable * **Description:** The account sub-type classification based on AccountType. ### CurrentBalance * **Type:** Decimal * **Properties:** read only, filterable, sortable * **Description:** Balance amount for the current Account. Valid for Balance Sheet accounts. ``` -------------------------------- ### Query Account Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account Queries for account entities based on a specified query statement. This allows for flexible retrieval of account data. ```APIDOC ## Query an account ### Description Returns the results of the query. ### Method GET ### Endpoint /v3/company//query?query= ### Sample Query ``` select * from Account where Metadata.CreateTime > '2014-12-31' ``` ``` -------------------------------- ### Account Object Attributes Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account This section details the attributes of the Account object, including their types, requirements, and descriptions. It covers fields used for identification, naming, synchronization, account numbering, currency, parent-child relationships, descriptions, activity status, metadata, and system-defined properties like classification and balance. ```APIDOC ## Account Object Attributes ### Description Details the various attributes of the Account object, including their properties and usage. ### Attributes * **Id** (String, filterable, sortable) - Read-only, system-defined. Unique identifier for this object. Sort order is ASC by default. * **Name** (String, filterable, sortable) - Required. User recognizable name for the Account. Max 100 characters. Must not contain double quotes (") or colon (:). * **SyncToken** (String) - Required for update, read-only, system-defined. Version number of the object used for locking. * **AcctNum** (String) - Conditionally required. User-defined account number. Must not contain colon (:). Name must be unique. Specific length and character requirements apply for French locales and other regions (AU, CA, US, UK, IN). * **CurrencyRef** (CurrencyRef) - Optional, read-only. Reference to the currency in which this account holds amounts. * **Id** (String) * **name** (String) * **type** (String) * **ParentRef** (ReferenceType, filterable, sortable) - Optional. Specifies the Parent AccountId if this represents a SubAccount. * **type** (String) * **value** (String) * **Description** (String, filterable, sortable) - Optional. Max 100 characters. User entered description for the account. * **Active** (Boolean, filterable) - Optional. Whether or not the account is active. * **MetaData** (ModificationMetaData) - Optional. Descriptive information about the object, set by Data Services and read-only. * **CreateTime** (String) * **LastUpdatedTime** (String) * **SubAccount** (Boolean, filterable, sortable) - Read-only, system-defined. Specifies whether this object represents a parent (false) or subaccount (true). * **Classification** (String, filterable) - Read-only, system-defined. The classification of an account (e.g., Asset, Equity, Expense, Liability, Revenue). Not supported for non-posting accounts. * **FullyQualifiedName** (String, filterable, sortable) - Read-only, system-defined. Fully qualified name of the object; derived from Name and ParentRef. Limited to 5 levels. * **TxnLocationType** (String) - The account location. Valid values include: WithinFrance, FranceOverseas, OutsideFranceWithEU, OutsideEU. For France locales only. * **AccountType** (AccountTypeEnum, filterable) - A detailed account classification based on Classification. (Enum values not provided in source). * **CurrentBalanceWithSubAccounts** (Decimal, filterable, sortable) - Read-only. Cumulative balance amount for the current Account and all its sub-accounts. * **AccountAlias** (String) - A user-friendly, unique account name. For France locales only. * **TaxCodeRef** (ReferenceType) - Reference to the default tax code used by this account. For global locales only. * **type** (String) * **value** (String) * **AccountSubType** (String, filterable) - The account sub-type classification based on AccountType. * **CurrentBalance** (Decimal, filterable, sortable) - Read-only. Balance amount for the current Account. Valid for Balance Sheet accounts. ``` -------------------------------- ### Read an Account Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account Retrieves the details of a specific Account object using its ID. This operation allows you to fetch all information associated with a given account. ```APIDOC ## Read an account Retrieves the details of an Account object that has been previously created. ### Returns Returns the Account object. ### Request URL ``` GET /v3/company//account / ``` **Production Base URL:** `https://quickbooks.api.intuit.com` **Sandbox Base URL:** `https://sandbox-quickbooks.api.intuit.com` ``` -------------------------------- ### Full Update an Account Source: https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account Updates all writable fields of an existing account object. The request body must contain all writable fields of the current object. Fields omitted from the request will be set to NULL. The ID of the account to update must be included in the request body. ```APIDOC ## Full update an account Use this operation to update any of the writable fields of an existing account object. The request body must include all writable fields of the existing object as returned in a read response. Writable fields omitted from the request body are set to NULL. The ID of the object to update is specified in the request body. ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.