Fixed Asset Type Documentation¶
Overview¶
The Fixed Asset Type module (account.fixed.asset.type) defines categories for fixed assets with standardized depreciation settings and account mappings. Asset types ensure consistency when creating assets by providing default depreciation rates, methods, and GL accounts, streamlining asset management and ensuring proper accounting treatment for each asset category.
Model Information¶
Model Name: account.fixed.asset.type
Display Name: Asset Type
Name Field: name
Key Fields: code (unique type code)
Default Sort Order: Default (by ID)
Features¶
- ✅ Unique type codes
- ✅ Depreciation rate defaults
- ✅ Depreciation method configuration
- ✅ Account mapping templates
- ✅ Reusable asset categories
Key Fields Reference¶
Core Fields¶
| Field | Type | Required | Description |
|---|---|---|---|
name |
Char | ✅ | Type name (e.g., "Computers", "Vehicles") |
code |
Char | ✅ | Unique type code (e.g., "COMP", "VEH") |
description |
Text | ❌ | Type description and notes |
Depreciation Settings¶
| Field | Type | Description |
|---|---|---|
dep_rate |
Decimal | Default depreciation rate (%) |
dep_method |
Selection | Straight Line or Declining Balance |
Depreciation Methods¶
| Value | Description | Use Case |
|---|---|---|
| line | Straight-Line | Even depreciation over life |
| decline | Declining Balance | Accelerated depreciation |
Account Mappings¶
| Field | Type | Description |
|---|---|---|
fixed_asset_account_id |
Many2One | Fixed asset GL account |
accum_dep_account_id |
Many2One | Accumulated depreciation account |
dep_exp_account_id |
Many2One | Depreciation expense account |
API Methods¶
1. Create Asset Type¶
Method: create(vals, context)
Creates new asset type with unique code.
Example:
type_id = get_model("account.fixed.asset.type").create({
"name": "Computer Equipment",
"code": "COMP",
"dep_rate": 33.33, # 3-year life
"dep_method": "line",
"fixed_asset_account_id": computer_asset_account_id,
"accum_dep_account_id": accum_dep_computer_id,
"dep_exp_account_id": dep_exp_computer_id,
"description": "Desktop computers, laptops, servers"
})
Common Use Cases¶
Use Case 1: Standard Asset Types Setup¶
# Computer Equipment (3-year life, straight-line)
comp_type_id = get_model("account.fixed.asset.type").create({
"name": "Computer Equipment",
"code": "COMP",
"dep_rate": 33.33,
"dep_method": "line",
"fixed_asset_account_id": 1510, # Fixed Assets - Computers
"accum_dep_account_id": 1520, # Accum. Dep. - Computers
"dep_exp_account_id": 6200, # Depreciation Expense
"description": "Computers, laptops, servers, peripherals"
})
# Vehicles (5-year life, declining balance)
vehicle_type_id = get_model("account.fixed.asset.type").create({
"name": "Vehicles",
"code": "VEH",
"dep_rate": 30.0,
"dep_method": "decline",
"fixed_asset_account_id": 1530, # Fixed Assets - Vehicles
"accum_dep_account_id": 1540, # Accum. Dep. - Vehicles
"dep_exp_account_id": 6200, # Depreciation Expense
"description": "Cars, trucks, motorcycles"
})
# Furniture (10-year life, straight-line)
furniture_type_id = get_model("account.fixed.asset.type").create({
"name": "Furniture & Fixtures",
"code": "FURN",
"dep_rate": 10.0,
"dep_method": "line",
"fixed_asset_account_id": 1550, # Fixed Assets - Furniture
"accum_dep_account_id": 1560, # Accum. Dep. - Furniture
"dep_exp_account_id": 6200, # Depreciation Expense
"description": "Office furniture, fixtures, fittings"
})
# Machinery (7-year life, straight-line)
machinery_type_id = get_model("account.fixed.asset.type").create({
"name": "Machinery & Equipment",
"code": "MACH",
"dep_rate": 14.29, # 100% / 7 years
"dep_method": "line",
"fixed_asset_account_id": 1570, # Fixed Assets - Machinery
"accum_dep_account_id": 1580, # Accum. Dep. - Machinery
"dep_exp_account_id": 6200, # Depreciation Expense
"description": "Manufacturing equipment, tools"
})
# Buildings (20-year life, straight-line)
building_type_id = get_model("account.fixed.asset.type").create({
"name": "Buildings",
"code": "BLDG",
"dep_rate": 5.0,
"dep_method": "line",
"fixed_asset_account_id": 1590, # Fixed Assets - Buildings
"accum_dep_account_id": 1595, # Accum. Dep. - Buildings
"dep_exp_account_id": 6200, # Depreciation Expense
"description": "Office buildings, warehouses, factories"
})
print("✓ Standard asset types created")
Use Case 2: Create Asset Using Type¶
# Get asset type
comp_type = get_model("account.fixed.asset.type").search_browse([
["code", "=", "COMP"]
])[0]
# Create asset - type auto-fills settings
asset_id = get_model("account.fixed.asset").create({
"name": "MacBook Pro 16\"",
"date_purchase": "2025-01-15",
"price_purchase": 85000.00,
"type_id": comp_type.id
# Auto-filled from type:
# - dep_rate: 33.33%
# - dep_method: line
# - fixed_asset_account_id
# - accum_dep_account_id
# - dep_exp_account_id
})
print("✓ Asset created with type defaults")
Use Case 3: List Asset Types¶
# Get all asset types
types = get_model("account.fixed.asset.type").search_browse([], order="code")
print("ASSET TYPES")
print("=" * 80)
print(f"{'Code':10} {'Name':30} {'Rate':>8} {'Method':15}")
print("-" * 80)
for type in types:
method = "Straight-Line" if type.dep_method == "line" else "Declining Bal."
print(f"{type.code:10} {type.name[:30]:30} {type.dep_rate:>7.2f}% {method:15}")
print("=" * 80)
Use Case 4: Update Type Settings¶
# Change depreciation rate for all computers
comp_type = get_model("account.fixed.asset.type").search_browse([
["code", "=", "COMP"]
])[0]
comp_type.write({
"dep_rate": 25.0 # Change from 3-year to 4-year life
})
print("✓ Updated computer depreciation to 4-year life")
# Note: Only affects new assets, not existing ones
Use Case 5: Asset Type with Multiple Variations¶
# Create specific vehicle types
sedan_type_id = get_model("account.fixed.asset.type").create({
"name": "Vehicles - Sedans",
"code": "VEH-SED",
"dep_rate": 25.0, # 4-year life
"dep_method": "decline",
"fixed_asset_account_id": vehicle_account_id,
"accum_dep_account_id": accum_dep_vehicle_id,
"dep_exp_account_id": dep_exp_id,
"description": "Passenger sedans for sales staff"
})
truck_type_id = get_model("account.fixed.asset.type").create({
"name": "Vehicles - Trucks",
"code": "VEH-TRK",
"dep_rate": 20.0, # 5-year life
"dep_method": "line",
"fixed_asset_account_id": vehicle_account_id,
"accum_dep_account_id": accum_dep_vehicle_id,
"dep_exp_account_id": dep_exp_id,
"description": "Delivery trucks and work vehicles"
})
print("✓ Created specialized vehicle types")
Best Practices¶
1. Use Meaningful Codes¶
# Good: Clear, hierarchical codes
"COMP" # Computer Equipment
"COMP-LAP" # Laptops
"COMP-SRV" # Servers
"VEH-CAR" # Cars
"VEH-TRK" # Trucks
# Avoid: Cryptic codes
"TYPE1"
"AST-A"
"X123"
2. Align with Tax Regulations¶
# Set rates based on tax depreciation schedules
{
"name": "Computer Equipment",
"dep_rate": 33.33, # Matches tax code for 3-year property
"dep_method": "line"
}
3. Separate Accounts by Type¶
# Good: Dedicated accounts per type
{
"name": "Computers",
"fixed_asset_account_id": 1510, # Computers
"accum_dep_account_id": 1520, # Accum Dep - Computers
}
{
"name": "Vehicles",
"fixed_asset_account_id": 1530, # Vehicles
"accum_dep_account_id": 1540, # Accum Dep - Vehicles
}
# Enables separate reporting by asset class
4. Document Type Usage¶
{
"name": "Manufacturing Equipment",
"code": "MFG-EQ",
"description": "Production machinery, assembly equipment, " +
"testing devices. Does not include hand tools " +
"under $5,000 (expense immediately)."
}
Common Asset Type Examples¶
Technology Assets (Fast Depreciation)¶
{
"name": "Computer Equipment",
"dep_rate": 33.33, # 3 years
"dep_method": "line"
}
{
"name": "Software",
"dep_rate": 33.33, # 3 years
"dep_method": "line"
}
Office Assets (Medium Depreciation)¶
{
"name": "Furniture",
"dep_rate": 10.0, # 10 years
"dep_method": "line"
}
{
"name": "Office Equipment",
"dep_rate": 20.0, # 5 years
"dep_method": "line"
}
Long-Term Assets (Slow Depreciation)¶
{
"name": "Buildings",
"dep_rate": 2.5, # 40 years
"dep_method": "line"
}
{
"name": "Leasehold Improvements",
"dep_rate": 10.0, # 10 years or lease term
"dep_method": "line"
}
Accelerated Depreciation¶
{
"name": "Vehicles",
"dep_rate": 30.0,
"dep_method": "decline" # Front-loaded depreciation
}
{
"name": "Manufacturing Equipment",
"dep_rate": 25.0,
"dep_method": "decline"
}
Typical Depreciation Rates by Asset Class¶
| Asset Class | Useful Life | Annual Rate | Method |
|---|---|---|---|
| Land | N/A | 0% | Not depreciated |
| Buildings | 20-40 years | 2.5-5% | Straight-line |
| Leasehold Improvements | 10-15 years | 6.67-10% | Straight-line |
| Machinery | 5-10 years | 10-20% | Straight-line or Declining |
| Vehicles | 4-5 years | 20-25% | Declining balance |
| Furniture | 7-10 years | 10-14.29% | Straight-line |
| Computer Equipment | 3-5 years | 20-33.33% | Straight-line |
| Software | 3 years | 33.33% | Straight-line |
| Small Tools | 3 years | 33.33% | Straight-line |
Database Constraints¶
Unique Constraint¶
code: Asset type code must be unique
Related Models¶
| Model | Relationship | Description |
|---|---|---|
account.fixed.asset |
One2Many | Assets using this type |
account.account |
Many2One | GL accounts for assets/depreciation |
Version History¶
Last Updated: 2025-12-16 Model Version: account_fixed_asset_type.py Framework: Netforce
Additional Resources¶
- Fixed Asset Documentation:
account.fixed.asset - Account Documentation:
account.account
This documentation is generated for developer onboarding and reference purposes.