AssetTypes
Defines asset types in Xero. It enables querying, inserting, and updating different asset categories used in asset management, such as vehicles, property, and equipment.
Table-Specific Information
Creating Asset Types
An AssetType can be created with one of two methods of computing depreciation. The first is according to a fixed percentage (in this example, 0.15%):
INSERT INTO AssetTypes ( AssetTypeName, FixedAssetAccountId, DepreciationExpenseAccountId, AccumulatedDepreciationAccountId, BookDepreciationSetting_DepreciationMethod, BookDepreciationSetting_AveragingMethod, BookDepreciationSetting_DepreciationRate ) VALUES ( 'Vehicles', '8e968d1a-5e25-4dad-b6f9-c8f4d72c0cac', '20b36596-3d1d-4789-9f08-50c92d19d522', '2a9bb066-3398-40e8-a953-caaabed2b7a7', 'StraightLine', 'FullMonth', 0.15 )
Alternatively, you could create an asset type that depreciates according to an effective lifetime:
INSERT INTO AssetTypes ( AssetTypeName, FixedAssetAccountId, DepreciationExpenseAccountId, AccumulatedDepreciationAccountId, BookDepreciationSetting_DepreciationMethod, BookDepreciationSetting_AveragingMethod, BookDepreciationSetting_EffectiveLifeYears ) VALUES ( 'Vehicles', '8e968d1a-5e25-4dad-b6f9-c8f4d72c0cac', '20b36596-3d1d-4789-9f08-50c92d19d522', '2a9bb066-3398-40e8-a953-caaabed2b7a7', 'StraightLine', 'FullMonth', 12 )
Updating Asset Types
Since an AssetType must be either using a depreciation rate or an effective lifetime, you must set one field to NULL if you want to change the AssetType to use the other. For example, to change from an effective lifetime to a depreciation rate:UPDATE AssetTypes
SET BookDepreciationSetting_DepreciationRate = 0.09,
BookDepreciationSetting_EffectiveLifeYears = null
WHERE AssetTypeId = 'bf28b6ca-3cc6-4591-ac5a-2c1115f04b4b'
Columns
| Name | Type | ReadOnly | Description |
| AssetTypeId [KEY] | String | True |
The unique Xero-generated identifier for the asset type. |
| AssetTypeName | String | False |
The name of the asset type, used to categorize different types of assets. |
| FixedAssetAccountId | String | False |
The account used to track assets of this type in the general ledger. |
| DepreciationExpenseAccountId | String | False |
The expense account that records depreciation for assets of this type. |
| AccumulatedDepreciationAccountId | String | False |
The account used to track accumulated depreciation for assets of this type. |
| BookDepreciationSetting_DepreciationMethod | String | False |
The method of depreciation applied to assets of this type. Options include: 'NoDepreciation', 'StraightLine', 'DiminishingValue100', 'DiminishingValue150', 'DiminishingValue200', or 'FullDepreciation'. |
| BookDepreciationSetting_AveragingMethod | String | False |
The method used to average the depreciation periods. Options include: 'ActualDays' or 'FullMonth'. |
| BookDepreciationSetting_DepreciationRate | Decimal | False |
The annual depreciation rate applied to assets of this type, expressed as a percentage. |
| BookDepreciationSetting_EffectiveLifeYears | Int | False |
The number of years over which assets of this type will be depreciated. |
| BookDepreciationSetting_DepreciationCalculationMethod | String | True |
The method used to calculate depreciation for assets of this type. Options include: 'Rate', 'Life', or 'None'. |
| Locks | Int | True |
The number of assets currently using this asset type. This helps track how many assets are classified under this category. |
| TenantId | String | False |
The ID of the tenant to query instead of the connection tenant. |