+20 11 00 289 896|+966 53 646 4828|info@extramile-egy.com
← All articles

Fixed Asset Management and Depreciation in Odoo

Fixed Asset Management and Depreciation in Odoo

Short answer: Fixed asset management in Odoo registers each asset with its cost, useful life and depreciation method, then posts depreciation automatically every period instead of by manual journal entry. Assets can be created straight from the vendor bill, depreciation entries post themselves on their dates, and a sale or disposal calculates the gain or loss for you. The result is an asset register and depreciation schedule that stay accurate and ready for an auditor at any time.

Fixed assets are rarely the most exciting part of an ERP project, which is exactly why they are so often left in a spreadsheet. Vehicles, machines, laptops, furniture and site equipment add up to a large share of the balance sheet in most companies we work with, and the depreciation on them affects every month's profit. This guide covers what to track, how to set it up in Odoo step by step, and the mistakes that make an asset register drift away from the ledger.

What should be tracked per asset?

  • Purchase cost, date and supplier, linked to the original invoice.
  • Useful life and depreciation method (straight-line is the common default).
  • Location or department, for physical verification.
  • Disposal or write-off date and value, when it happens.
  • The accounts it posts to: the fixed asset account, accumulated depreciation and depreciation expense.

Everything else, such as serial numbers or the employee who holds a laptop, is useful but optional. Start with what the auditor and the balance sheet need.

Why does manual asset tracking break down?

A spreadsheet-based asset register drifts quickly: an asset moves department and nobody updates the sheet, depreciation is posted late or inconsistently, and at year-end the accountant spends days reconciling the register to the trial balance. None of this is deliberate; it is simply what happens when depreciation is a manual monthly task on top of everything else.

The second problem is disposal. When a vehicle is sold or a machine is scrapped, the spreadsheet is often updated but the ledger is not, or the other way round. The asset keeps depreciating on paper long after it has left the company.

How do you set up fixed assets in Odoo step by step?

Asset management is part of Odoo Enterprise Accounting; on Odoo Community it is delivered with a dedicated asset module. Menu names follow recent Odoo versions and may differ slightly in yours.

1. Agree your asset categories and policy

Before touching the system, agree with your accountant the categories (for example vehicles, IT equipment, machinery, furniture), the useful life and method for each, and the capitalisation threshold below which purchases are expensed. This policy becomes the configuration.

2. Prepare the accounts

In Accounting → Configuration → Chart of Accounts, make sure each category has its fixed asset account, accumulated depreciation account and depreciation expense account. Keeping one set per category makes the balance sheet and the asset report agree line by line.

3. Create an asset model per category

In the Accounting configuration menu, open Asset Models and create one model per category. Each model holds the depreciation method, the duration in months or years, the computation (constant periods or based on days), and the three accounts. Odoo offers straight-line, declining and declining-then-straight-line methods.

4. Let vendor bills create assets automatically

On each fixed asset account, set the automation option to create assets from posted bills, in draft for review or validated directly, and link the asset model. From then on, when the purchasing team posts a bill for a new vehicle on that account, the asset is created with the right cost, date and method, linked to the bill.

5. Confirm the asset and check the depreciation board

Open the asset from the Assets menu, check the acquisition date, the first depreciation date and the prorata, then confirm it. Odoo generates the full depreciation board. The entries are posted automatically on their dates, so nobody has to remember the monthly depreciation journal.

6. Handle changes: re-evaluation, pause, sale and disposal

If an asset's value or remaining life changes, use Modify Depreciation to re-evaluate it, so the change is recorded rather than overwritten. When an asset is sold or scrapped, use Sell or Dispose: Odoo posts the final depreciation, removes the asset and accumulated depreciation, and books the gain or loss to the accounts you set.

7. Report and verify

The asset report shows cost, accumulated depreciation and net book value by category, ready for the year-end file. Once a year, print the register by location or department and verify it physically.

What does automation change?

  • Depreciation posts itself each period, on the schedule you set.
  • The asset register always matches the balance sheet, because it generates the entries.
  • A disposal or sale automatically calculates any remaining gain or loss.
  • Reports by category or department are available without a separate spreadsheet.
Depreciation methods in Odoo and when they fit
MethodHow the charge is calculatedTypical use
Straight-lineThe same amount every period over the useful lifeThe common default for most asset categories
DecliningA fixed rate applied to the remaining value, so the charge falls over timeAssets that lose value fastest in their first years, where your policy allows it
Declining then straight-lineDeclining, but never less than the straight-line amountWhere your policy combines both approaches

Confirm the method for each category with your accountant; the system follows the policy, it does not set it.

What does an implementation look like?

Here is how this typically unfolds, in an anonymised, illustrative example: a contracting client in Cairo with vehicles, site equipment and office assets tracked in a spreadsheet that no longer matches the trial balance. The work starts with the policy, not the system: categories, lives and the capitalisation threshold agreed with the external accountant. The existing register is cleaned, each asset is matched to the ledger, and the assets are imported with their original cost and the depreciation already booked, so the schedule continues from the go-live date instead of starting again. Asset accounts are then set to create assets from vendor bills, so new purchases enter the register without a second step. From the first month-end, depreciation posts on its own and the asset report becomes part of the closing pack.

What are the common pitfalls?

  • Importing assets without accumulated depreciation: the schedule restarts from zero and every figure is wrong. Always migrate the depreciation already booked.
  • Creating assets twice: if bills create assets automatically, do not also create them by hand.
  • Wrong first depreciation date: a wrong date or prorata setting shifts every entry. Check the board before you confirm.
  • Disposals recorded only outside the system: a sold vehicle keeps depreciating. Use Sell or Dispose every time.
  • One account for every category: the balance sheet cannot be reconciled to the register by category.
  • No physical verification: the register is only as true as the last count. Verify at least once a year.

Frequently asked questions

Can we load our existing asset register into Odoo?

Yes. Assets are migrated with their original cost, acquisition date and the depreciation already booked to date, so the schedule continues correctly from go-live instead of starting again.

Does this handle different depreciation rules for tax versus accounting books?

Odoo keeps one depreciation board per asset. Where your tax depreciation differs from the accounting books, the difference is usually tracked separately with your accountant; confirm the specific treatment for your country.

What about small assets we expense immediately?

A capitalisation threshold is normally agreed with your accountant, below which items are expensed rather than tracked as assets.

Is fixed asset management available in Odoo Community?

Asset management is part of Odoo Enterprise Accounting. On Odoo Community the same register, depreciation and disposal flow is delivered with a dedicated asset module.

What happens when we sell an asset?

You use Sell or Dispose on the asset. Odoo posts depreciation up to the disposal date, removes the cost and accumulated depreciation, and books the gain or loss against the sale.

Can assets be tracked by department or location?

Yes. Assets can carry an analytic account for the department or branch, so depreciation is charged to the right cost centre and the register can be reported and verified by location.

Keep your asset register accurate without the year-end scramble

ExtraMile sets up fixed asset tracking in Odoo so depreciation runs itself, from asset models to migration of your existing register.

Ask about fixed assets in Odoo or message us on WhatsApp: Egypt · Gulf

This article was drafted with AI assistance for ExtraMile Business Solutions.