Skip to content
Home » OCA Free Asset Depreciation Module: Complete Odoo Guide

OCA Free Asset Depreciation Module: Complete Odoo Guide

OCA Free Asset Depreciation

OCA Free Asset Depreciation Module helps you manage asset life cycles and depreciation with no licensing cost. First, you install the module in your Odoo instance. Next, you configure asset profiles to match your accounting rules. Then, you run depreciation schedules and review journal entries. Finally, you adapt or extend methods as needed. In this tutorial, you learn every step with clear examples and code snippets. Moreover, you discover how this free community add‑on matches many Enterprise features.


Overview of OCA Free Asset Depreciation Module

In this section, you get a clear picture of the OCA Free Asset Depreciation Module itself. First, you learn what it does. Then, you compare it at a high level with Odoo Enterprise. Finally, you see why it fits many small and mid‑size companies.

  • It adds full asset life‑cycle management.
  • It supports both degressive and linear depreciation.
  • It posts journal entries in your accounting module.
  • It integrates with purchase invoices and stock receipts.
  • It runs on Odoo Community Edition with no extra cost.

Compared to Odoo Enterprise, it covers most key cases. However, you may find some advanced reporting and dashboards missing. Therefore, you can extend it or mix it with other Community modules.


Key Benefits and Use Cases

Cost‑Effective Asset Management

First, you save license fees. Next, you avoid vendor lock‑in. Then, you invest in internal skills rather than third‑party support.

Flexible Configuration

Moreover, you adjust methods, periods, and residual values. Furthermore, you choose degressive or straight‑line schedules per asset group.

Open‑Source Community Support

Additionally, you tap into the OCA account‑financial‑tools repo for patches and updates.


Prerequisites and Setup

Odoo Version and Dependencies

  1. You need Odoo Community 14.0, 15.0, 16.0, 17.0, or 18.0.
  2. You install the core module account_asset from OCA.
  3. You enable developer mode in Odoo and restart the server.

Installing from GitHub

First, you clone the repository. Then, you add the module path to your Odoo configuration. Finally, you update the apps list.

# 1. Clone the repo
git clone https://github.com/OCA/account-financial-tools.git

# 2. Add module path
# In your odoo.conf:
addons_path = ...,/path/to/account-financial-tools/account_asset

# 3. Restart Odoo and update apps
sudo service odoo restart

After that, you log into Odoo. Next, you go to Apps, filter by “Asset”, and install OCA Free Asset Depreciation Module (named account_asset).


Configuring Asset Depreciation

Defining Asset Profiles

First, go to Accounting > Configuration > Assets > Asset Profiles. Then, click Create. You fill in:

  • Name: e.g. “Laptop – 5 Years”
  • Method: Straight‑Line or Degressive
  • Number of Periods: e.g. 60 (monthly over five years)
  • Salvage Value: e.g. 10% or fixed amount
<record id="profile_laptop_5y" model="account.asset.profile">
  <field name="name">Laptop – 5 Years</field>
  <field name="method_number">60</field>
  <field name="method_period">1</field>  <!-- monthly -->
  <field name="method">linear</field>
  <field name="salvage_value">1000</field>  <!-- fixed -->
</record>

After saving, you link this profile to asset categories or directly to assets.

Setting Depreciation Methods

You choose “linear” for equal charges and “degressive” for higher early depreciation. However, you may also combine both:

  • Select Use Acceleration for degressive in early years.
  • Then, switch to linear for the rest.
<record id="profile_camera_degressive" model="account.asset.profile">
  <field name="name">Camera – Accelerated</field>
  <field name="method_number">10</field>
  <field name="method_period">12</field>  <!-- yearly -->
  <field name="method">degressive</field>
  <field name="acceleration_factor">1.5</field>
  <field name="salvage_type">percent</field>
  <field name="salvage_value">5.0</field>
</record>

Hands‑On Tutorial: Creating Your First Asset

In this section, you walk through a real use case. First, you build the profile. Then, you post a purchase invoice. Next, you generate depreciation entries. Finally, you review the results.

Creating an Asset Profile

  1. You navigate to Accounting > Configuration > Assets > Asset Profiles.
  2. You click Create and name it “Home Theater – 3 Years”.
  3. You set:
  • Method: Degressive
  • Number of Periods: 36
  • Acceleration Factor: 1.2
  • Salvage: 10%

Purchasing and Confirming an Asset

First, you create a vendor bill:

  1. Go to Invoicing > Vendor Bills and click Create.
  2. Vendor: “AudioVisions”
  3. Add product “Home Theater Set” at $15,000.
  4. Post the bill.
# In a server action or Odoo shell
bill = env['account.move'].create({
    'move_type': 'in_invoice',
    'partner_id': env.ref('base.res_partner_5').id,
    'invoice_line_ids': [(0, 0, {
        'account_id': env['ir.model.data'].xmlid_to_res_id('account.a_account_id'),
        'name': 'Home Theater Set',
        'quantity': 1,
        'price_unit': 15000,
    })],
})
bill.action_post()

Then, OCA module automatically creates an asset record:

  • Asset Name: Home Theater Set
  • Asset Value: 15,000
  • Profile: Home Theater – 3 Years

Generating Depreciation Entries

After confirming, you run the scheduler:

# Via command line
./odoo-bin shell -d your_db_name <<EOF
env['account.asset.asset'].search([]).compute_depreciation_board()
EOF

Alternatively, you trigger the automated action in Odoo:

  • Go to Accounting > Assets > Generate Depreciation Entries.
  • Select your assets and click Compute Entries.

Each entry posts a depreciation line in the journal:

DateAccountDebitCredit
2023‑01‑31Depreciation Expense416.67
2023‑01‑31Accumulated Depreciation416.67

Advanced Tips and Tricks

Custom Depreciation Method

If you need a bespoke calculation, you override the Python method. First, you extend account.asset.profile:

# In your custom module: models/account_asset_profile.py
from odoo import models, api

class AccountAssetProfile(models.Model):
    _inherit = 'account.asset.profile'

    @api.model
    def compute_custom_depreciation(self, asset):
        # Example: double‑declining balance
        rate = 2.0 / asset.profile_id.method_number
        remaining = asset.value_residual
        depreciation = remaining * rate
        return depreciation

Then, you call it in a wizard or scheduled job.

Automating with Scheduled Actions

Moreover, you automate monthly runs. Go to Settings > Technical > Automation > Scheduled Actions. Then, create:

  • Name: Monthly Asset Depreciation
  • Model: Asset
  • Method: compute_depreciation_board
  • Frequency: 1 month

Therefore, your assets depreciate hands‑free.


Troubleshooting and FAQs

Q1: Why no depreciation entries?
First, check that your asset states as “Open”. Next, confirm that the profile period covers today’s date. Then, rerun the scheduler.

Q2: How to reverse a wrong entry?
Go to the journal entry. Click Reverse. Then, set the date and post. The module adjusts the board accordingly.

Q3: Can I mix methods on one asset?
Yes. However, you need two profiles. First, depreciate with one. Then, switch profile before you run the next period.


Additional Resources and Links


Conclusion

In this guide, you learned how the OCA Free Asset Depreciation Module handles asset life cycles without extra cost. First, you saw its core features. Then, you installed and configured profiles. Next, you walked through a purchase and generated depreciation entries. Finally, you explored advanced customizations and automation. Therefore, you can adopt a robust asset management solution on Odoo Community Edition. If you need further help, join the OCA community and review the GitHub repo for updates.

Feel free to adapt code snippets and settings to your environment. Moreover, please share your improvements and bug fixes via pull requests. Enjoy free, flexible, and powerful asset accounting!


Discover more from teguhteja.id

Subscribe to get the latest posts sent to your email.

Leave a Reply

WP Twitter Auto Publish Powered By : XYZScripts.com