Account Identifier
Account identifiers are unique identifiers for a specific ledger account within a business. They are used in both API inputs and outputs to specify a given ledger account.
Account identifiers are polymorphic, meaning there are multiple types of identifiers for different use cases.
AccountId
The first use case is the intuitive AccountId
type, which is a unique ID object for a ledger account. This kind of identifier is unique across all businesses and all ledger accounts.
AccountId
indicates we’re using an AccountId identifier type.
The unique identifier string for the ledger account.
Stable name
The second use case is the StableName
type, which is a stable identifier for a templated account.
This kind of identifier uniquely defines a ledger account within a specific ledger, but is re-used across businesses.
This is useful for situations where you are building a workflow for a specific account type, e.g. ACCOUNTS_RECEIVABLE
and don’t want to look up the unique account ID for each business.
While useful, there are two limitations to note with stable names:
- End-users with access to the general ledger can create their own ledger accounts, which will not have stable names. To refer to these accounts will need to use the
AccountId
type. - Some templated account types are specific to industries. If you have customers with different Charts. If you try to use a stable name for an account which does not exist for a business, you will receive an error.
StableName
indicates we’re using a StableName identifier type.
The stable identifier string for the ledger account.