Actions and results
What each Fixed Assets button and automatic behaviour does, with worked numbers and what the system refuses.
On this page (10)
Asset categories
| Action | When | What you do | What happens |
|---|---|---|---|
| Use the standard asset accounts | asset.manage; chart of accounts exists | Configuration > Asset categories > New. Press 'Use the standard asset accounts'. | Seven accounts are added to the chart if missing (1500, 1590, 1595, 1580, 6100, 6160, 7100 on the starter chart; 160100 ... 740100 on the 6-digit chart) and filled into the seven account fields. A note says which were added, or 'The chart already had them.' Pressing it again adds nothing. |
| Create a draft category | asset.manage | New. Code 'it' , Name 'IT equipment', Straight line, Life 36, Depreciate from 'The month it is put to use', Residual 10 %, use standard accounts. Save. | Category saved as Draft with code upper-cased to IT; list shows IT, Straight line, 36 months, 1500 / 1590 / 6100, 0 assets. It cannot yet be chosen on an asset. |
| Duplicate category code refused | Category IT exists | New category with code 'IT' (or 'it'). Save. | Refused: 'Another category has that code.' on the Code field. |
| Declining-balance category needs a rate | asset.manage | New category, Method Declining balance, leave Annual rate empty or 0. Save. Then enter 20 and Save. | First save refused: 'A declining-balance category needs its annual rate.' With 20 it saves. |
| Activate a category (maker-checker) | Draft category IT prepared by user A with all five required accounts; user B holds asset.approve | As user B open IT and press Activate. | Category becomes active; 'activated by' shows user B; it now appears in the asset Category choice. |
| Preparer cannot activate own category | Draft category prepared by user A who also holds asset.approve | As user A open the category and press Activate. | Refused: 'Somebody other than whoever prepared a category must approve it.' (SELF_APPROVAL, HTTP 403). Superusers are bound too. |
| Activation needs all five core accounts | Draft category with no accumulated depreciation account | As the approver press Activate. | Refused: 'IT has no accumulated depreciation account.' (MISSING_MAPPING). The same for asset cost, depreciation expense, gain / loss on disposal and disposal proceeds clearing. |
| Lease / right-of-use category is gated | Category created by API with right_of_use true | Press Activate (or call the activate action). | Refused with the LEASE_GATE message: lease accounting needs its own approved policy. |
| Account kind is checked | asset.manage | In a category type 6100 (an expense account) in 'Asset cost'. Save. | Refused: '6100 is a expense account; choose a asset account.' An unknown or header/inactive code is refused with 'XXXX is not an active posting account of this company.' |
| An active category is not edited | Active category IT | Open IT. Try to change the life. | Fields are read-only; by API 'An active category is not edited; archive it and draw up a new one.' Existing assets keep their own terms. |
Depreciation books
| Action | When | What you do | What happens |
|---|---|---|---|
| Financial book appears automatically | New company with no books | Open Configuration > Depreciation books. | One row FIN 'Financial book', purpose financial, Posts to the ledger = Yes is created on first read. |
| Add a tax book | asset.manage | Code 'tax', Name 'Tax book', Purpose Tax, Add book. | Row TAX added (code upper-cased), Posts to the ledger = No. Adding TAX again is refused: 'Another book has that code.' |
Asset record
| Action | When | What you do | What happens |
|---|---|---|---|
| Create a draft asset from a typed acquisition | Active category IT (straight line, 12 months, no residual); asset.manage | Assets > New. Name 'Laptop', Category IT, Comes from 'A typed acquisition', Cost 1,200.00, Acquired on 01/07/2026, Paid from account 3000. Save. | Asset saved as Draft with number FA-00001 style, no schedule and no journal yet; Cost 1,200, Residual 0.00, life 12 shown after save. Edit button available. |
| Capitalise a typed acquisition | Draft asset FA-... prepared by user A; user B holds asset.approve | As user B press Capitalise. | Asset becomes Running. Journal dated 01/07/2026: Dr 1500 1,200.00 / Cr 3000 1,200.00. Subledger entry 'acquisition' cost 1,200 in every book. Schedule of 12 monthly rows is planned from 2026-07. 'Capitalised by' shows user B. |
| Preparer cannot capitalise own asset | Draft asset prepared by user A who holds asset.approve | As user A press Capitalise. | Refused: 'Somebody other than whoever prepared a capitalisation must approve it.' (SELF_APPROVAL). No journal, asset stays Draft. |
| Capitalise needs the approval right | User holds asset.manage only | Open a draft asset; look for Capitalise; try the capitalise action by API. | The Capitalise button is not shown; the server refuses with HTTP 403 (the route needs asset.approve). |
| Edit a draft, not a running asset | A draft and a running asset | Open the draft: Edit, change the name, Save. Open the running asset: look for Edit. | Draft saves (revision goes up). Running asset has no Edit; by API 'A capitalised asset changes through a transfer, an estimate change or a disposal.' |
| Stale edit refused | Draft asset open in two browsers | Save a change in browser 1, then Save a different change in browser 2 without reloading. | Browser 2 refused: 'This record changed; reload it and try again.' (HTTP 409). |
| Capitalise from a posted bill line | Posted supplier bill with a line of net 1,200.00 charged to expense account 5100; category IT | New asset, Comes from 'A supplier bill line', choose the line, leave Cost blank. Save, then Capitalise as another user. | Cost defaults to 1,200.00. Journal: Dr 1500 1,200.00 / Cr 5100 1,200.00 (moves the amount from the account the line was charged to onto asset cost). If the line was already charged to the cost account, no journal is booked. The line drops out of the Bill line list once fully used. |
| A bill line is capitalised only once | Bill line net 1,200.00; two draft assets both on that line, cost 1,200.00 each | Capitalise the first. Capitalise the second. | First succeeds. Second refused: 'Only 0.00 of that bill line is left to capitalise.' (SOURCE_EXCEEDED). Splitting 700 + 500 on the same line works; 700 + 600 refuses the second ('Only 500.00 ...'). |
| Opening balance asset posts nothing | Active category (60 months); today 2 Oct 2026 | New asset, Comes from 'An opening balance', Cost 5,000.00, Acquired on 01/10/2024, Depreciation already taken 2,000.00, Last month it covers 30/09/2026. Save and Capitalise as another user. | No journal is booked and the ledger cost account is unchanged (it is in the opening trial balance). Book value 3,000.00. Months used = Oct 2024 to Sep 2026 = 24; schedule is 36 rows starting 2026-10: 35 rows of 83.33 and a last row of 83.45 (3,000.00 in total). |
| Unique tag | Asset with tag TAG-0001 | Create another asset with tag TAG-0001. | Refused: 'Another asset of this company carries that tag.' (DUPLICATE_TAG). Two assets with no tag are allowed. |
| Default residual from the category | Category with Residual 10 %; cost 5,000.00; Residual left blank | Create the asset and Save. | Residual = 500.00. With 60 months the straight-line charge is (5,000 - 500) / 60 = 75.00 a month. |
| Convention: depreciate from the month after | Category 'Depreciate from: the month after'; asset in use from 15/10/2026 | Capitalise and open the schedule. | First schedule row is 2026-11 (not 2026-10). With 'the month it is put to use' the first row would be 2026-10. |
| Straight line without residual | Capitalised asset: cost 1,200.00, life 12, residual 0, in use 01/07/2026 | Open Schedule. | 12 rows 2026-07 to 2027-06, each 100.00; opening 1,200.00, closing after the last 0.00; total 1,200.00. |
| Straight line with residual | Capitalised asset: cost 1,200.00, residual 120.00, life 12 | Open Schedule. | 12 rows of 90.00 each; total 1,080.00; the last closing is 120.00 (the residual). |
| Straight line rounding goes to the last month | Cost 1,000.00, life 12, residual 0 | Open Schedule. | Rows 1 to 11 are 83.33; row 12 is 83.37 (1,000.00 - 11 x 83.33); total exactly 1,000.00; last closing 0.00. |
| Declining balance without switch | Asset cost 1,000.00, life 12, Method Declining balance, rate 24 %, switch to straight line off (category/API setting) | Open Schedule. | Month 1 = 1,000.00 x 24 % / 12 = 20.00; month 2 = 980.00 x 2 % = 19.60; month 3 = 960.40 x 2 % = 19.21; ... month 11 = 16.34; month 12 takes the remainder 800.73 so the total is 1,000.00 and the closing is 0.00. |
| Declining balance with switch to straight line | Asset cost 1,000.00, life 60, rate 24 %, switch on (default) | Open Schedule. | Month 1 = 20.00, month 2 = 19.60, month 3 = 19.21 (the declining amount is larger than straight line, so it is kept). Final three months 16.34, 16.35, 16.34 (straight line takes over); total 1,000.00. With life 12 and the same rate every month is 83.33 at the start because straight line is larger from month 1. |
| Declining balance never goes below the residual | Cost 6,000.00, residual 600.00, life 36, rate 20 %, switch off | Open Schedule. | Month 1 = 6,000 x 20 % / 12 = 100.00; month 2 = 5,900 x 20 %/12 = 98.33; month 3 = 96.69. Rows sum to 5,400.00 (cost less residual) and the last closing is 600.00; the final month is a large catch-up (2,731.81). |
| Units of production: usage by API drives the schedule | Asset cost 1,000.00, residual 0, Method Units of production, 1,000 units expected; no usage yet | Open Schedule (empty). Record usage 100 units for 2026-07 through the usage action (API only - no screen). | A row appears only for 2026-07: 1,000 x 100 / 1,000 = 100.00. A month with no usage has no row. Recording usage 250 for 2026-08 after July is posted: (900 x 250 / 900) = 250.00. With residual 100 the first month is (1,000-100) x 100/1,000 = 90.00. |
| Usage for a posted month is refused | Units asset whose 2026-07 row is posted | Record usage for 2026-07 again. | Refused: 'That month is already depreciated; correct it in a later month.' Usage on a non-units or non-running asset: 'Usage is recorded on an active units-of-production asset.' |
| Reporting book depreciates on its own terms | Tax book TAX exists; asset cost 1,200.00 life 12 with TAX terms life 8 given by API (books list) | Capitalise the asset. Open the folded 'TAX book (reporting only)' schedule. | TAX schedule is 8 rows of 150.00 while the FIN schedule is 12 rows of 100.00. Without book terms the tax book mirrors the financial terms. |
Depreciation runs
| Action | When | What you do | What happens |
|---|---|---|---|
| Propose a run | Two running assets: A (100.00 a month) and B (90.00 a month), both with 2026-09 planned; asset.manage | Depreciation runs: pick 2026-09, Propose run. | A run DEP-xxxxx is created as 'To approve': Rows 2, Depreciation 190.00. Nothing is posted yet. Dialog lists both assets with month and amount. |
| Approve and post a run | Proposed run of 190.00 prepared by user A; user B holds asset.approve | As user B open the run and press 'Approve and post'. | Status Posted, Rows 2 / 2. One journal per row dated 30/09/2026: Dr 6100 100.00 / Cr 1590 100.00 and Dr 6100 90.00 / Cr 1590 90.00, labelled 'Depreciation FA-... 2026-09'. Ledger 6100 +190.00, 1590 -190.00. Schedule rows become Posted. Book values fall by 100.00 and 90.00. |
| Run proposer cannot approve | Run proposed by user A who also holds asset.approve | As user A press 'Approve and post'. | Refused: 'Somebody other than whoever prepared a depreciation run must approve it.' (SELF_APPROVAL). Nothing posted. |
| A month posts once | Run for 2026-09 posted | Propose another run for 2026-09. | Refused: 'Nothing is due up to 2026-09.' (NOTHING_DUE). Ledger 6100 stays 190.00 - no double depreciation. |
| Only one proposed run at a time | A run in status To approve | Propose a second run. | Refused: 'A depreciation run is already waiting for approval.' (ALREADY_PROPOSED). After approving or cancelling the first, a new one can be proposed. |
| Catch up several months in one run | Asset 100.00 a month, nothing posted for 2026-07, 2026-08, 2026-09 | Propose a run up to 2026-09 and approve it. | Rows 3, total 300.00 shown at proposal; on approval three journals are dated 31/07, 31/08 and 30/09/2026 (in month order), each Dr 6100 100.00 / Cr 1590 100.00. |
| Run for a locked month is partial | Accounting period lock date set to 31/08/2026; asset 100.00 a month with 2026-08 and 2026-09 planned | Propose and approve a run up to 2026-09. | Run status 'Partly posted' (blocked 1+). Row 2026-08 shows Blocked with 'This accounting period is locked.'; 2026-09 shows Blocked 'Waits for 2026-08.' (months post in order). Nothing is posted for that asset; a message lists the refusal. |
| Run after unlocking resumes the blocked rows | State of the previous function; lock date removed | Propose a new run up to 2026-09 and approve it. | Both blocked rows are picked up and posted (Dr 6100 / Cr 1590, 100.00 each); status Posted. Rows already posted are not repeated. |
| Cancel a proposed run | A run To approve | Open the run and press 'Cancel run'. | Status Cancelled; no journal; the schedule rows stay Planned and can be proposed again. A posted run cannot be cancelled: 'Only a proposed run is cancelled.' |
| Run already decided / stale | Run approved in browser 1, still open in browser 2 | Press Approve in browser 2. | Refused with 'This record changed; reload it and try again.' (409) or 'This run has already been decided.' - never a second posting. |
| Disposed or draft assets are not depreciated | A draft asset and a disposed asset exist | Propose a run. | Only running assets appear in the run lines; a disposed asset's remaining planned rows are removed. |
Change dialogs
| Action | When | What you do | What happens |
|---|---|---|---|
| Transfer an asset | Running asset at 'Stores', department A, book value 900.00 | Transfer: New location 'Workshop', New department 'B', Reason 'Moved to site'. Send for approval; approve as another user in Changes to approve. | A change FAC-xxxxx 'To approve' is created, then Approved. Location and department change; book value stays 900.00; no journal is booked; the change keeps the 'before' values. |
| Impairment to a recoverable amount | Running asset cost 1,200.00 with 3 months posted (300.00); carrying 900.00; impairment accounts set | Impairment: Recoverable 700.00, Evidence 'Valuation VR-12', Reason. Approve as another user. | Loss = 900.00 - 700.00 = 200.00. Journal Dr 6160 200.00 / Cr 1595 200.00. Book value 700.00. Remaining 9 planned rows are re-planned to total 700.00 (8 x 77.78 and a last 77.76). Posted rows are untouched. |
| Impairment above the carrying amount refused | Carrying amount 900.00 | Propose an impairment with Recoverable 900.00 (or 1,000.00). | Refused at proposal: 'An impairment brings the carrying amount (900.00) down; the recoverable amount is not below it.' |
| Impairment without impairment accounts | Category has no impairment expense / accumulated impairment account | Propose and approve an impairment. | Approval refused: 'IT has no impairment expense account.' (MISSING_MAPPING). The change stays To approve. |
| Estimate change keeps posted months | Asset 1,200.00 / 12 months, 3 months posted (300.00) | Estimate change: Months left from now 18. Approve. | Life becomes 21 months (3 used + 18). Posted 3 x 100.00 stay; 18 new rows of 50.00 each (900.00 / 18), last closing 0.00. Schedule version increases. |
| Estimate change of the residual | Same asset (900.00 left, 9 months) | Estimate change: New residual 150.00, months left blank. Approve. | Remaining rows are (900.00 - 150.00) / 9 = 83.33 with the last 83.36 (total 750.00); closing 150.00. A residual above 900.00 is refused: 'The residual value cannot exceed what is left of the asset.' |
| Dispose of an asset at a gain | Running asset cost 1,200.00, depreciation 400.00 (book value 800.00), disposal date 30/09/2026 | Disposal: Sold, Portion 1, Proceeds 900.00, Reason. Approve as another user. | Depreciation is first posted through the disposal month. Journal Dr 1580 900.00, Dr 1590 400.00 / Cr 1500 1,200.00, Cr 7100 100.00 (gain = 900 - 800). Asset status Disposed, Disposed on 30/09/2026, book value 0.00, remaining schedule rows removed. |
| Dispose of an asset at a loss | Same asset: cost 1,200.00, depreciation 400.00 | Disposal: Sold for 600.00. Approve. | Loss = 600 - 800 = -200.00. Journal Dr 1580 600.00, Dr 1590 400.00, Dr 7100 200.00 / Cr 1500 1,200.00. Totals balance (1,200.00 each side). |
| Scrap an asset | Same asset | Disposal: Scrapped (proceeds hidden), Reason 'Broken beyond repair'. Approve. | Journal Dr 1590 400.00, Dr 7100 800.00 / Cr 1500 1,200.00 (loss 800.00 = book value). Scrapping with proceeds by API is refused: 'A scrapped asset has no proceeds; sell it instead.' |
| Dispose of an impaired asset | Cost 1,200.00, depreciation 400.00, impairment 200.00 (book value 600.00) | Sell for 700.00. Approve. | Gain 100.00. Journal Dr 1580 700.00, Dr 1590 400.00, Dr 1595 200.00 / Cr 1500 1,200.00, Cr 7100 100.00. All three balances are removed. |
| Partial disposal | Cost 1,200.00, depreciation 400.00; Portion 0.5; proceeds 500.00 | Propose and approve the disposal. | Removed: cost 600.00, depreciation 200.00 (book 400.00); gain 100.00. The asset stays Running with cost 600.00 and half the residual; the remaining schedule is re-planned on 400.00 left. Portion above 1 or 0 is refused ('Enter at most 1.' / 'Enter a number above zero.'). |
| Only one open change per asset | Asset with a change To approve | Propose another change on the same asset. | Refused: 'A change to this asset is already waiting for approval.' (ALREADY_PROPOSED). |
| Changes only on running assets | Draft or disposed asset | Look for the change buttons / call the change action. | No change buttons on draft or disposed assets; by API 'Changes are made to an active asset.' |
Changes to approve
| Action | When | What you do | What happens |
|---|---|---|---|
| Approve a change | A change To approve proposed by user A; user B holds asset.approve | Changes to approve > Approve (row button). | Change moves to Approved; effect is booked at that moment (not at proposal). Approved-by is user B. Only rows not yet posted are re-planned. |
| Reject a change | A change To approve | Press Reject, enter reason 'Not supported by a quote', confirm. | Status Rejected with the reason kept; nothing booked; the asset can have a new change proposed. Without a reason: 'This field is required.' |
Physical check dialog
| Action | When | What you do | What happens |
|---|---|---|---|
| Record a check: found | Running asset; asset.manage | Record a check: Found, Where 'Dubai HQ - Floor 2'. Save. | A row is added in Physical checks with no discrepancy; cost, depreciation and book value are unchanged. |
| Record a check: missing or damaged | Running asset, book value 1,100.00 | Record a check: Missing, Note 'Not at desk 4'. | Row added with a 'To investigate' badge; book value stays 1,100.00 and no journal is booked (a write-off needs a Disposal). |
Asset roll-forward
| Action | When | What you do | What happens |
|---|---|---|---|
| Roll-forward ties to the ledger | Assets: A 800.00 and C 200.00 in use since 01/06/2025; B 500.00 bought 01/10/2026; C sold for 200.00 on 02/10/2026; period 01/01/2026 to 02/10/2026 | Reporting > Asset roll-forward with those dates. | Category line: Opening cost 1,000.00 + Additions 500.00 - Disposals 200.00 = Closing cost 1,300.00. 'Against the ledger': cost account register 1,300.00, ledger 1,300.00, difference 0.00; accumulated depreciation also agrees; badge 'Agrees'. |
| Roll-forward shows a ledger difference | A manual journal posts 50.00 to the asset cost account outside Fixed Assets | Open the roll-forward to today. | Cost row shows Register 1,300.00, Ledger 1,350.00, Difference 50.00 and the badge 'Differences'. |
| Tax book roll-forward | TAX book with 8-month life on a 1,200.00 asset; one month run | Roll-forward: Book = Tax book. | Depreciation for the month is 150.00 (financial book shows 100.00); no 'Against the ledger' table because a tax book posts nothing. |
Asset register
| Action | When | What you do | What happens |
|---|---|---|---|
| Register as of a date | Asset cost 1,200.00 in use 01/07/2026 with 2 months posted; disposed on 30/09/2026 | Register: As of 31/08/2026, then 31/10/2026. | At 31/08/2026: cost 1,200.00, depreciation 200.00, book value 1,000.00, status Running. At 31/10/2026 the asset shows Disposed with zero balances. Assets acquired after the date are not listed; drafts never appear. |
Assets
| Action | When | What you do | What happens |
|---|---|---|---|
| Assets list tabs, search and paging | 30+ assets in mixed states | Use Running / Draft / Disposed / All tabs; search a tag, a serial, a location; sort by Cost; page. | Each tab shows only that state; All shows everything; search matches number, name, tag, serial and location; paging works from the server (no full download). |
| List figures match the record | Asset with 3 months posted | Compare list Cost / Depreciation / Book value with the asset record tiles. | Identical figures (cost 1,200.00, depreciation 300.00, book value 900.00); Arabic UI shows Arabic labels and numbers still align right. |