Fixed Assets and Depreciation

Assets are the long-lived things a company owns: buildings, machines, vehicles, IT equipment, and (increasingly) capitalised software and leases.

Why it’s its own module

Because one asset is simultaneously valued differently under different rulebooks at the same time:

Depreciation area (book) Purpose Method
01 — IFRS/local GAAP Statutory reporting Straight line, 5 years
15 — Tax Tax return Declining balance, 3 years, first-year allowance
30 — Group Consolidation in group currency Straight line, 7 years
32 — Management Internal costing Replacement cost, usage-based
40 — Insurance Insured value Indexed replacement cost

Same asset, same cost, five different net book values. This is why you cannot model assets as a table with a depreciation column.

The asset lifecycle

Requisition ──▶ Purchase ──▶ AuC ──▶ Capitalisation ──▶ Depreciation ──▶ Retirement
                              │                              │              │
                        (Asset under          monthly depreciation      sale / scrap /
                         construction)          run per area             transfer

Key values

Term Meaning
APC (Acquisition & Production Cost) Original cost, gross
Accumulated depreciation Total depreciated to date (contra-asset)
NBV (Net Book Value) APC − accumulated depreciation
Useful life How long you’ll use it, in years/periods
Salvage / residual value Expected value at end of life; not depreciated
Depreciation base APC − salvage value (usually)
Capitalisation date When depreciation starts
Impairment A write-down when NBV exceeds recoverable amount
Revaluation Upward restatement to fair value (allowed under IFRS, not US GAAP)

Depreciation methods

Straight line (SL)

annual = (APC − salvage) / useful_life

Simplest, most common for book purposes.

Declining balance / reducing balance (DB)

annual = NBV_start_of_year × rate

Front-loads depreciation. Common for tax. Often switches to straight line when SL would give more (the “changeover”).

Double declining balance (DDB)

rate = 2 / useful_life

Sum-of-years-digits (SYD)

year_n = (remaining_life / sum_of_years) × base

Units of production

period = (units_this_period / total_expected_units) × base

Ties depreciation to actual usage. Good for machines and vehicles.

MACRS (US tax)

Prescribed percentage tables by asset class and recovery period, with half-year / mid-quarter / mid-month conventions. Do not compute this from a formula — use the published tables.

Period control conventions

When does depreciation start and stop within a period? This is configuration, and it differs by country:

Convention Rule
Pro rata temporis Exact days from acquisition date
Half-year Half a year in the year of acquisition regardless of date (US tax)
Mid-month Half a month in the acquisition month (US real property)
Mid-quarter Applies if >40% of the year’s acquisitions land in Q4 (US)
Full month Full month if acquired any time in the month
Next month Starts the month after acquisition
Full year Full year regardless (some tax regimes)

Get this wrong and every asset’s depreciation is off by a fraction of a year — small per asset, material in aggregate.

Depreciation run

A monthly batch job:

For each company, each depreciation area, each asset:
  1. Determine periods to depreciate (handles catch-up if the asset was capitalised late)
  2. Calculate planned depreciation per the method + period control
  3. Compare to already-posted depreciation
  4. Post the difference:
        Depreciation expense   Dr   (cost centre of the asset)
          Accumulated depreciation  Cr
  5. Update the asset's posted values

Properties this job must have:

  • Idempotent — re-running for the same period posts nothing extra
  • Restartable — a failure at asset 40,000 of 100,000 must resume, not restart
  • Test-mode — a dry run producing the same numbers without posting
  • Catch-up capable — an asset capitalised in March with a January start date owes three months at once
  • Per-area — one area may post to the GL, others may be memo-only (tax book usually doesn’t post to the financial ledger)

Only one depreciation area posts to the leading ledger. The others feed tax returns and parallel ledgers. Posting all of them to one ledger is a classic beginner error.

Asset under construction (AuC)

While you’re building something, costs accumulate on an AuC — a special asset that does not depreciate:

Costs collected on AuC (or on an internal order/WBS settling to AuC)
  → at go-live: settlement/capitalisation
      Fixed asset (machine)   Dr 850,000
        AuC                      Cr 850,000
  → depreciation starts from the capitalisation date

Settlement can be full or partial (line-item settlement), splitting one AuC across several final assets with different useful lives. This is common for building projects: structure 40 years, HVAC 15 years, fit-out 10 years.

Retirement and disposal

Sell an asset: APC 100,000, accumulated depreciation 70,000, sale price 40,000

  Bank / AR                    Dr 40,000
  Accumulated depreciation     Dr 70,000
    Fixed asset (APC)             Cr 100,000
    Gain on disposal              Cr  10,000

If sold for less than NBV, it’s a loss instead. Scrapping = same without the proceeds, full loss of NBV. Partial retirement (selling half a fleet asset) proportionally reduces APC and accumulated depreciation.

Transfers

  • Intra-company — asset moves between cost centres or plants; values carry over
  • Inter-company — asset moves between legal entities. This is a sale from one entity and an acquisition by the other, with a transfer price, potential gain, and elimination at consolidation

Impairment (IAS 36)

If an asset’s recoverable amount drops below NBV, you write it down:

  Impairment loss         Dr 120,000
    Accumulated impairment   Cr 120,000

Requires an annual indicator review (and mandatory annual testing for goodwill and indefinite-life intangibles). Under IFRS, impairments can be reversed if conditions improve (except goodwill); under US GAAP they cannot.

Leases — IFRS 16 / ASC 842

Since 2019, nearly all leases go on the balance sheet:

At commencement:
  Right-of-use asset      Dr  PV of lease payments
    Lease liability          Cr  PV of lease payments

Each period:
  Depreciation expense    Dr  (ROU asset over lease term)
    Accumulated depreciation Cr
  Interest expense        Dr  (liability × discount rate)
  Lease liability         Dr  (principal portion)
    Bank                     Cr  (the payment)

This created an entire lease-accounting sub-module in every ERP: contract master, payment schedules, discount rate (incremental borrowing rate), modifications, remeasurement on index-linked rents, short-term and low-value exemptions, and separate disclosure. Treat it as its own domain.

Data model

asset(
  id, company_id, asset_class, asset_number, sub_number,
  description, serial_number, inventory_number,
  cost_center_id, plant_id, location, responsible_person,
  capitalisation_date, deactivation_date,
  quantity, unit,
  status  -- PLANNED|AUC|ACTIVE|RETIRED|SCRAPPED
)
asset_valuation(              -- one row per asset per depreciation area
  asset_id, area_id,
  depreciation_key, useful_life_years, useful_life_periods,
  salvage_value, depreciation_start_date,
  apc, accumulated_depreciation, accumulated_impairment,
  posted_through_period
)
asset_transaction(            -- append only
  id, asset_id, area_id, transaction_type,   -- ACQ|DEP|RET|TRF|IMP|REV
  posting_date, fiscal_year, period,
  amount, journal_document_id
)

The asset_valuation row per area is the whole design. Every derived number (NBV, remaining life, planned depreciation) comes from it plus the transaction history.

Asset accounting checklist

  • Asset class drives GL account determination, default useful life, and depreciation key
  • Depreciation run is idempotent, restartable, and has a test mode
  • Reconciliation: asset subledger total = GL fixed asset accounts, every period
  • Physical verification / asset count process with barcode or RFID tags
  • Low-value assets policy (expense below a threshold rather than capitalise)
  • Fiscal year change job for the asset ledger runs before the first posting of the new year
  • Assets with zero NBV but still in use are reported (candidates for disposal or revaluation)
  • Assets with no cost centre, no location, or no responsible person are flagged

Next