Account data model

Chart of accounts

View field support, webhooks, and list parameters for each integration on the Supported Integrations page.

FieldTypeRequiredDescription
idstringNoIdentifier used by the SaaS application to uniquely identify the Account
created_atstring (date-time)NoDate and time when the Account was created, in ISO 8601 format and UTC (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
updated_atstring (date-time)NoDate and time when the Account was last updated, in ISO 8601 format and UTC (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
namestringNoAccount name
descriptionstringNoAccount description
typeenumNoAccount type, such as BANK. EQUITY, ASSET, ... Values: ACCOUNTS_PAYABLE, ACCOUNTS_RECEIVABLE, BANK, CREDIT_CARD, FIXED_ASSET, LIABILITY, EQUITY, EXPENSE, REVENUE, OTHER
statusenumNoAccount status, such as ACTIVE or ARCHIVED Values: ACTIVE, ARCHIVED
balancenumberNoBalance of the account.
currencystringNoAccount’s currency, in ISO 4217 format (e.g. U.S. dollars is USD)
customer_defined_codestringNoIdentifier for tracking and categorizing accounts for reporting or analysis purposes that is defined by the end-customer
is_payablebooleanNoTrue if the account is an “accounts payable” account
parent_idstringNoThe parent account ID for this account
taxonomyAccountingAccountTaxonomy[]No
taxonomy[].typeenumYesValues: CLASSIFICATION, GROUP, SUBGROUP, SYSTEM_ROLE, OTHER
taxonomy[].original_typestringNo
taxonomy[].valuestringYes
organization_idstringNo

TypeScript

TypeScript
export type AccountingAccount = {
	id?: string; // Identifier used by the SaaS application to uniquely identify the Account
	created_at?: string-time; // Date and time when the Account was created, in ISO 8601 format and UTC (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	updated_at?: string-time; // Date and time when the Account was last updated, in ISO 8601 format and UTC (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	name?: string; // Account name
	description?: string; // Account description
	type?: 'ACCOUNTS_PAYABLE' | 'ACCOUNTS_RECEIVABLE' | 'BANK' | 'CREDIT_CARD' | 'FIXED_ASSET' | 'LIABILITY' | 'EQUITY' | 'EXPENSE' | 'REVENUE' | 'OTHER'; // Account type, such as BANK. EQUITY, ASSET, ...
	status?: 'ACTIVE' | 'ARCHIVED'; // Account status, such as ACTIVE or ARCHIVED
	balance?: number; // Balance of the account.
	currency?: string; // Account’s currency, in ISO 4217 format (e.g. U.S. dollars is USD)
	customer_defined_code?: string; // Identifier for tracking and categorizing accounts for reporting or analysis purposes that is defined by the end-customer
	is_payable?: boolean; // True if the account is an “accounts payable” account
	parent_id?: string; // The parent account ID for this account
	taxonomy?: [];
	organization_id?: string;
	raw?: any; // The original data from the integration's API
} 

Zod

Zod
import { z } from 'zod';

export const ZodAccountingAccount = z.object({
	id: z.string().optional().describe("Identifier used by the SaaS application to uniquely identify the Account"),
	created_at: z.string-time().optional().describe("Date and time when the Account was created, in ISO 8601 format and UTC (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	updated_at: z.string-time().optional().describe("Date and time when the Account was last updated, in ISO 8601 format and UTC (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	name: z.string().optional().describe("Account name"),
	description: z.string().optional().describe("Account description"),
	type: z.enum("ACCOUNTS_PAYABLE", "ACCOUNTS_RECEIVABLE", "BANK", "CREDIT_CARD", "FIXED_ASSET", "LIABILITY", "EQUITY", "EXPENSE", "REVENUE", "OTHER").optional().describe("Account type, such as BANK. EQUITY, ASSET, ..."),
	status: z.enum("ACTIVE", "ARCHIVED").optional().describe("Account status, such as ACTIVE or ARCHIVED"),
	balance: z.number().optional().describe("Balance of the account."),
	currency: z.string().optional().describe("Account’s currency, in ISO 4217 format (e.g. U.S. dollars is USD)"),
	customer_defined_code: z.string().optional().describe("Identifier for tracking and categorizing accounts for reporting or analysis purposes that is defined by the end-customer"),
	is_payable: z.boolean().optional().describe("True if the account is an “accounts payable” account"),
	parent_id: z.string().optional().describe("The parent account ID for this account"),
	taxonomy: z.array().optional(),
	organization_id: z.string().optional(),

});

Python

Python
import dataclasses

@dataclasses.dataclass
class AccountingAccountType(str, Enum):
	ACCOUNTS_PAYABLE = 'ACCOUNTS_PAYABLE'
	ACCOUNTS_RECEIVABLE = 'ACCOUNTS_RECEIVABLE'
	BANK = 'BANK'
	CREDIT_CARD = 'CREDIT_CARD'
	FIXED_ASSET = 'FIXED_ASSET'
	LIABILITY = 'LIABILITY'
	EQUITY = 'EQUITY'
	EXPENSE = 'EXPENSE'
	REVENUE = 'REVENUE'
	OTHER = 'OTHER'

@dataclasses.dataclass
class AccountingAccountStatus(str, Enum):
	ACTIVE = 'ACTIVE'
	ARCHIVED = 'ARCHIVED'

@dataclasses.dataclass
class AccountingAccount:
	"""Identifier used by the SaaS application to uniquely identify the Account"""
	id: Optional[str]
	"""Date and time when the Account was created, in ISO 8601 format and UTC (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	created_at: Optional[str]
	"""Date and time when the Account was last updated, in ISO 8601 format and UTC (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	updated_at: Optional[str]
	"""Account name"""
	name: Optional[str]
	"""Account description"""
	description: Optional[str]
	"""Account type, such as BANK. EQUITY, ASSET, ..."""
	type: Optional[AccountingAccountType]
	"""Account status, such as ACTIVE or ARCHIVED"""
	status: Optional[AccountingAccountStatus]
	"""Balance of the account."""
	balance: Optional[int]
	"""Account’s currency, in ISO 4217 format (e.g. U.S. dollars is USD)"""
	currency: Optional[str]
	"""Identifier for tracking and categorizing accounts for reporting or analysis purposes that is defined by the end-customer"""
	customer_defined_code: Optional[str]
	"""True if the account is an “accounts payable” account"""
	is_payable: Optional[bool]
	"""The parent account ID for this account"""
	parent_id: Optional[str]
	taxonomy: Optional[PropertyAccountingAccountTaxonomy]
	organization_id: Optional[str]
Are we missing anything? Let us know
Was this page helpful?