A Recurring Depreciation schedule is the record that posts depreciation to your ledger: one schedule per asset or per pool of assets, and each run posts one period's charge as a balanced journal. It sits between the asset register and the period close. You register the asset, create its schedule, and the schedule then charges depreciation period after period until the asset reaches its residual value. When the asset is sold or scrapped you post an asset disposal and stop the schedule.
Overview
A schedule holds four kinds of information:
- What is depreciated — the Asset Name, the Partner Account (the company that owns the asset) and the Branch.
- How it is calculated — the Method, the Cost, the Residual Value and either a Rate Per Period or a Period Amount.
- When it runs — the Frequency, the Next Run Date and an optional End Date.
- Where it posts — the Depreciation Expense GL Account and the Accumulated Depreciation GL Account.
Each run updates the running figures on the schedule itself: Current WDV (the book value), Accumulated Depreciation, Last Run Date and Next Run Date.
The schedule is not linked to an asset record. It names the asset in text, and it never reads or updates the asset register. See Fixed assets in xMatix.
When to use it
Create a schedule for every asset, or every pool of similar assets, whose depreciation you want posted to the general ledger under the Companies Act book. Saving an asset, a Depreciation Policy or a Depreciation document posts nothing; only a Recurring Depreciation schedule posts depreciation.
Use one schedule per asset when you need the book value of each asset. Use one schedule per pool when assets are depreciated together at one rate and you only need the total.
How xMatix handles it
The charge for one run depends on the Method:
| Method | Charge for one run |
|---|---|
| Straight line | Period Amount, the same every run. |
| Written down value | Current WDV × Rate Per Period, so the charge falls as the book value falls. |
The charge is rounded to two decimals. It never takes the book value below the Residual Value: when less than one full charge is left, the last run charges only what remains. When Current WDV is empty, the run starts from Cost.
The journal. Each run posts one journal of type Depreciation, dated on the run date, under the schedule's Partner Account and Branch:
| Line | Account | Side | Amount |
|---|---|---|---|
| Depreciation expense | Depreciation Expense GL Account | Debit | The charge |
| Accumulated depreciation | Accumulated Depreciation GL Account | Credit | The charge |
The journal's label is Depreciation followed by the asset name, and its narration is Depreciation: followed by the asset name and the run month. Its Source Entity Name is RecurringDepreciation and its Source Record is the schedule. Its number comes from the journal numbering setting, like any other journal.
What a run changes on the schedule. In the same save, Current WDV falls by the charge, Accumulated Depreciation rises by the charge, Last Run Date is set to the run date, and Next Run Date moves forward by one Frequency from the run date. If the book value has reached the residual value, or the new Next Run Date is after the End Date, the schedule's Status becomes Completed.
Two ways to run.
- Automatically. A background job checks every few minutes for schedules whose Status is Active, whose Next Run Date has arrived, and whose Next Run Date is not after the End Date. It runs each one once. It runs only when your organisation has the Finance product.
- On demand. Post Recurring Depreciation on the schedule's record page runs one period straight away.
The run date. A run is dated on the schedule's Next Run Date. If Next Run Date is empty, a run from the button is dated today, and Next Run Date becomes one Frequency after today.
What happens when the automatic run fails. If a scheduled run is refused, for example because a GL account is missing or the period is closed, xMatix sets the schedule's Status to Paused and stops picking it up. It does not try again on its own. You fix the cause and set the Status back to Active. See Configuration, because Status is not on the standard forms.
What a run does not do. It does not update the asset record, and it does not check whether the asset has been disposed. Reversing a depreciation journal does not change the schedule.
Prerequisites
- Two active GL accounts for the asset class: a depreciation expense account and an accumulated depreciation account. Neither should be a control account. See GL accounts.
- An open fiscal period for each run date. If the company has no fiscal calendar for a date yet, xMatix creates the fiscal year with open monthly periods. A closed or locked period refuses the posting. See Fiscal periods and period close.
- The asset's cost, residual value and either the period amount (straight line) or the rate per run (written down value).
- Your security profile can create schedules, edit them in place and run Post Recurring Depreciation. See Permissions.
Procedure
Step 1 — Find your schedules
Open the Fixed Assets app and select Recurring Depreciations. The All Recurring Depreciations list shows Document Number, Partner Account, Branch, Start Date, End Date, Period Amount and the audit columns. Use the search box, the filters and the column sort to find a schedule, and select a row to open it.
The standard list has no Status, Current WDV or Next Run Date column. An administrator can add them. See Configuration.
Step 2 — Create the schedule
- In Recurring Depreciations, select New.
- Fill in Partner Account and Branch.
- Under Asset & Depreciation Details, enter Asset Name and choose the Method: Straight line or Written down value. Choose the Frequency: Monthly or Yearly. Enter Cost and Residual Value.
- For a straight-line schedule, enter Period Amount: (Cost − Residual Value) ÷ the number of runs. For a written-down-value schedule, enter Rate Per Period as a fraction of one, for example
0.0125for 1.25% per run. Read the note on Rate Per Period below first. - Under Schedule Details, enter Start Date and, if the schedule must stop on a date, End Date.
- Under GL Accounts, choose the Depreciation Expense GL Account and the Accumulated Depreciation GL Account.
- Save.
The schedule is numbered automatically and its record page opens. Its Status is Active, but it has no Next Run Date yet, so the background job will not pick it up until you complete Step 3.
If your organisation runs one company or one location, Partner Account and Branch are hidden.
Rate Per Period is a fraction. The form shows a % sign after Rate Per Period, but the number you type is used as it is. Type 0.0125 for 1.25%. If you type 1.25, each run charges 125% of the book value, so the first run writes the whole asset down to its residual value and completes the schedule. The rate applies to every run, so a monthly schedule needs a monthly rate, not the annual one.
Step 3 — Set the first run date and the starting figures
The create form has no Next Run Date or Current WDV, so you set them on the record page. Select a field's edit pencil, change the value and save.
- Under Schedule Details, set Next Run Date to the date the first charge should post. Choose a day that falls inside the period you are charging. For a monthly schedule, use a day from 1 to 28 (see Business rules).
- For a new asset, leave Current WDV empty: the first run starts from Cost and fills it in.
- For an asset that is already part depreciated, set Current WDV to today's book value and Accumulated Depreciation to the depreciation already charged. The next run continues from that book value. xMatix does not recreate the earlier periods.
From now on, the schedule runs automatically on each Next Run Date.
Step 4 — Run a period on demand
Use this for a month-end run you want to post yourself, or to start a schedule that has no Next Run Date.
- Open the schedule and select Post Recurring Depreciation.
- Wait for the result, then refresh the record page. Last Run Date, Current WDV, Accumulated Depreciation and Next Run Date show the new values.
Every select posts the next period, even if its Next Run Date is still in the future. A second select posts another period dated one Frequency later. Select the button once per period, and only after checking the Next Run Date.
Step 5 — Check the journal
- In the Finance app, open Journals.
- Filter Source Entity Name on RecurringDepreciation and open the row whose Source Record is your schedule. Its label reads Depreciation followed by the asset name.
- Check the type is Depreciation, the expense account is debited, the accumulated depreciation account is credited, and the amount matches your own calculation.
The Related tab on the schedule also has a journals list. In the standard layout that list is not linked to the schedule, so it shows other journals too. Use the Journals list instead. See Working with journals.
Step 6 — Change a schedule
- Method, Frequency, Cost, Residual Value, Rate Per Period, Period Amount, dates and GL accounts. Select Edit in the header. The form opens with the fields from the create form. Change them and save.
- Next Run Date, Current WDV and Accumulated Depreciation. Use the field's edit pencil on the record page.
Do not change Residual Value with the pencil on the record page: that field is not saved. Use Edit instead. A change to Current WDV, Residual Value or the rate affects every later charge, so check the next charge after you change them.
Step 7 — Correct a wrong charge
Posted journals cannot be changed, and reversing one does not change the schedule. To correct a run:
- Reverse the journal from the Journals list. See Working with journals.
- Correct the schedule's figures with Edit (Step 6).
- On the record page, put back Current WDV and Accumulated Depreciation to their values before the wrong run, and Next Run Date to the date of the wrong run.
- If the wrong run completed the schedule, an administrator sets Status back to Active (see Configuration).
- Run the period again with Post Recurring Depreciation, or wait for the background job.
Step 8 — Pause or stop a schedule
- To stop the automatic runs with the standard forms, select Edit and set End Date to a date before the Next Run Date. The background job no longer picks the schedule up. Post Recurring Depreciation still posts if someone selects it, so tell your team.
- To pause and resume, an administrator sets Status to Paused, and later back to Active. A paused or completed schedule never runs, and the button refuses to run it.
Posting a disposal does not stop the asset's schedule. Stop it yourself after the disposal. See Asset disposals.
Step 9 — Delete a schedule
On the schedule's record page, select Delete in the header. Journals the schedule has already posted stay posted. To remove their effect, reverse them first.
Fields
Create form
| Field | What it means | Notes |
|---|---|---|
| Partner Account | The company that owns the asset. | Copied to the journal; the run date must fall in an open period of this company. Hidden for single-company organisations. |
| Branch | The location the depreciation posts under. | Copied to the journal header and both lines. Hidden for single-location organisations. |
| Asset Name | The asset or pool being depreciated. | Free text. Used in the journal's label and narration. Not linked to the asset register. |
| Method | How each charge is calculated. | Straight line or Written down value. Defaults to Written down value. |
| Frequency | How far Next Run Date moves after each run. | Monthly (default) or Yearly. |
| Cost | The asset's cost. | Used as the book value only when Current WDV is empty. |
| Residual Value | The value the asset is not depreciated below. | Empty counts as 0. Change it with Edit, not on the record page. |
| Rate Per Period | The written-down-value rate for one run. | A fraction of one, despite the % sign: 0.0125 means 1.25%. Ignored for straight line. |
| Period Amount | The straight-line charge for one run. | Ignored for written down value. |
| Start Date | When the schedule starts. | For your records. Runs follow Next Run Date, not Start Date. |
| End Date | The last date a run may post. | Optional. The job skips the schedule when Next Run Date is after it, and the schedule completes when the next date would pass it. |
| Depreciation Expense GL Account | The expense account debited. | Required to run. |
| Accumulated Depreciation GL Account | The contra-asset account credited. | Required to run. |
Record page only
| Field | What it means | Notes |
|---|---|---|
| Document Number | The schedule's number. | Set automatically on save. |
| Current WDV | The book value now. | Reduced by every run. Empty means start from Cost. Set it for an asset that is already part depreciated. |
| Accumulated Depreciation | Depreciation this schedule has charged. | Increased by every run. Not used to calculate the next charge. |
| Last Run Date | The date of the last run. | Set by each run. |
| Next Run Date | The date of the next run. | Required for automatic runs. Moved forward by each run. |
| Residual Value (record page) | Shows a residual value field. | This field is not saved. The value runs use is the one on the create form; change it with Edit. |
| Status | Active, Paused or Completed. | Not on the standard forms. New schedules are Active. Runs set Completed; a failed automatic run sets Paused. |
Business rules
- Numbering. A saved schedule is named automatically from the Recurring Depreciation Settings document name setting, series RD.
- Checks before a run, in this order: Status is Active; both GL accounts are set; something is left to depreciate above the residual value; the charge is above zero.
- Fully depreciated. If the book value is already at or below the residual value, a run posts nothing and sets the schedule to Completed.
- Checks on the journal. Both GL accounts must be active. The run date must fall in an open fiscal period of the company.
- Next Run Date moves forward by one month (Monthly) or one year (Yearly) from the run date. A monthly schedule on the 29th, 30th or 31st moves to the last day of February and keeps that day from then on, so start monthly schedules on a day from 1 to 28.
- Completion. The schedule becomes Completed when the book value reaches the residual value, or when the new Next Run Date is after the End Date.
- Automatic runs need Status Active, a Next Run Date that has arrived, and a Next Run Date that is not after the End Date. A delayed or repeated job for the same date is skipped once Next Run Date has moved on.
- A failed automatic run sets Status to Paused. Nothing posts, and the schedule is not tried again until someone sets it back to Active.
- The button runs the next period whenever the schedule is Active, whatever the Next Run Date or End Date. Each select posts another period.
- Amounts are rounded to two decimals.
Example
A packaging machine cost 6,00,000. You expect to sell it for 30,000 after five years, and you depreciate it on a straight line every month.
- In Recurring Depreciations, select New. Choose your company and the Plant branch. Enter Asset Name Packaging Machine 2, Method Straight line, Frequency Monthly, Cost 6,00,000, Residual Value 30,000 and Period Amount 9,500 (5,70,000 ÷ 60). Enter Start Date 1 April. Choose Depreciation – Plant and Machinery and Accumulated Depreciation – Plant and Machinery. Save.
- On the record page, set Next Run Date to 28 April.
- On 28 April the background job posts this journal:
| Account | Debit | Credit |
|---|---|---|
| Depreciation – Plant and Machinery | 9,500 | |
| Accumulated Depreciation – Plant and Machinery | 9,500 |
- The schedule now shows Current WDV 5,90,500, Accumulated Depreciation 9,500, Last Run Date 28 April and Next Run Date 28 May.
- After 60 runs, Current WDV is 30,000 and the schedule is Completed.
Training
Practice exercise
In a sandbox, create a schedule Practice Printer with Method Written down value, Frequency Monthly, Cost 50,000, Residual Value 5,000 and Rate Per Period 0.02. Choose both GL accounts and save. Leave Next Run Date empty and select Post Recurring Depreciation.
Expected result: a Depreciation journal dated today debits the expense account 1,000 and credits the accumulated depreciation account 1,000. The schedule shows Current WDV 49,000, Accumulated Depreciation 1,000, Last Run Date today and Next Run Date one month from today. Select the button again: a second journal of 980 (2% of 49,000) posts, dated one month from today. Reverse the second journal and put the schedule back as described in Step 7.
Quick reference
- Create in Fixed Assets → Recurring Depreciations → New.
- Set Next Run Date on the record page, or nothing runs automatically.
- Rate Per Period is a fraction:
0.0125is 1.25% per run. - Straight line uses Period Amount; written down value uses Rate Per Period × Current WDV.
- Each Post Recurring Depreciation select posts another period.
- Change Residual Value with Edit, not the record-page pencil.
- Reversing a journal does not change the schedule; fix its figures by hand.
- A failed automatic run pauses the schedule.
- Stop the schedule yourself when the asset is disposed.
Permissions
Schedules follow the Recurring Depreciation entity's access in the user's security profile: see, create, edit and delete. The buttons are granted separately in the seeded profiles:
| Action | Seeded profiles with it |
|---|---|
| New | Standard User, System Admin |
| Edit (the header button that opens the form) | Standard User, System Admin, Sales Executive |
| Edit in place on the record page | Standard User, System Admin |
| Delete | Standard User, System Admin, Sales Executive |
| Post Recurring Depreciation | Standard User, System Admin |
A user without Post Recurring Depreciation does not see the button. A user without edit in place cannot set Next Run Date or Current WDV. The Fixed Assets app is granted to Sales Executive, Sales Manager, Standard User and System Admin. Because runs write to the ledger, give the post button and edit rights to finance users only. Automatic runs do not depend on any user's profile. See Security profiles.
Configuration
- Show Status, Current WDV and Next Run Date. The standard forms have no Status field, so neither users nor the scheduler's pause are visible. Add Status (with Active, Paused and Completed) to the record layout RecurringDepreciationView, and add Status, Current WDV and Next Run Date as columns to the All Recurring Depreciations view. Do both in Setup → Design Studio → Entities → Recurring Depreciation. See Design a form layout.
- Fix the record page's Residual Value. The record layout shows a residual value field that is not saved. In the same layout, replace it with the Residual Value field the create layout RecurringDepreciation uses.
- Add Next Run Date to the create form, so a schedule is ready to run from the moment it is saved.
- Quarterly and half-yearly schedules. The Frequency list has Monthly and Yearly. Runs also understand the values Quarterly (three months) and HalfYearly (six months). Add them to the Frequency picklist with exactly those names. Any other value is treated as monthly.
- Numbering. The Recurring Depreciation Settings document name setting controls the schedule number (series RD, a date part and a six-digit counter). See the Document Name Setting reference.
- Navigation. Recurring Depreciations is in the Fixed Assets app. To show it in another app, add it with Setup → Design Studio → Apps → Manage Items.
- Mobile. No mobile app includes the Fixed Assets app, so schedules are web only.
Common problems
"Schedule is Paused; cannot run." or "Schedule is Completed; cannot run."
The schedule's Status is not Active. If it was paused by a failed automatic run, fix the cause first. An administrator then sets Status back to Active. A completed schedule has nothing left to depreciate, or has passed its End Date.
"Schedule needs a depreciation-expense and an accumulated-depreciation GL account."
One or both GL accounts are empty. Select Edit, choose them under GL Accounts and save.
"Computed depreciation is zero — set a rate (WDV) or period amount (straight-line)."
A written-down-value schedule has no Rate Per Period, or a straight-line schedule has no Period Amount. Set the field that matches the Method.
"GL Account '…' is inactive."
One of the two GL accounts has been deactivated. Choose an active account with Edit.
"Fiscal period '…' is Closed — posting is not allowed."
The run date falls in a closed or locked period. Ask finance to reopen it, or set Next Run Date to a date in an open period.
The schedule never runs
Check, in this order: Next Run Date is set and has arrived; it is not after End Date; the Status is Active; both GL accounts are set. A schedule created from the standard form has no Next Run Date until you set one (Step 3).
The schedule stopped running by itself
A scheduled run was refused, so xMatix set the schedule to Paused. Select Post Recurring Depreciation to see the reason. If the button says the schedule is paused, an administrator shows Status, fixes the cause and sets it back to Active.
The whole asset was written off in one run
Rate Per Period was entered as a percentage, for example 10 instead of 0.10. Correct the rate and follow Step 7. The run also completed the schedule, so an administrator sets Status back to Active.
A run posted in a future month
Post Recurring Depreciation posts the next period whatever its date. Reverse the journal and put the schedule back as in Step 7.
The residual value I entered on the record page is gone
The record page's residual value field is not saved. Select Edit and change Residual Value there.
The asset is still depreciating after the disposal
Posting a disposal does not touch the schedule. Stop it as in Step 8 and reverse any charge posted after the disposal date.
Common questions
Can a period be depreciated twice?
Not by the background job. It runs a schedule only when its Next Run Date has arrived, and each run moves the Next Run Date forward, so a repeated or late job for the same date is skipped. The Post Recurring Depreciation button is different: it always runs the next period, so every select posts another charge dated one Frequency later. Select it once, refresh the record page and check the Next Run Date before you select it again.
How does the last run land on the residual value?
Each run charges the smaller of the normal charge and the amount left above the residual value. For a straight-line schedule the last charge is usually smaller than the Period Amount. For a written-down-value schedule the book value approaches the residual slowly and the schedule completes when it reaches it. Either way, the closing Current WDV equals the Residual Value.
Does the schedule use the asset's depreciation method or policy?
No. The asset record and the Depreciation Policy store intent only. The schedule uses its own Method, rate or period amount, Cost and Residual Value. If you keep a policy, copy its terms to the schedule and check them yourself. See Depreciation policies.
Where does Income-Tax Act depreciation fit in?
The schedules post the Companies Act charge to the ledger. The tax book's depreciation is computed separately on the asset blocks: the block rate applied to the block's opening written-down value. An Asset Block holds no additions or deductions, so the figure that reaches Form 3CD Clause 18 leaves out the year's additions and the 180-day half-rate rule, and you adjust for them by hand. See Fixed assets.
Related topics
- Fixed assets in xMatix
- Assets — the asset register
- Asset disposals — posting the sale, scrapping or donation of an asset
- Working with journals — finding and reversing the depreciation journal
- Fiscal periods and period close
- GL accounts
- Recurring Depreciation entity reference
- Depreciation — entity reference
