Chart of Accounts - edmozley/freeitsm GitHub Wiki

๐Ÿ“’ Chart of accounts

New in 5.1.0 ยท #282 ยท System โ†’ Chart of Accounts ยท Developers: Chart of accounts โ€” Developer Guide ยท API: REST API: Chart of accounts

The accounts your finance department reports costs and income by - 2.0.3.0.4 Software Licences, 2.1.0.3.2 Computer Equipment, 1.3.0.0.1 Employee Payroll - kept in FreeITSM for each company.


Why there are two lists

Accountants keep two separate dimensions:

Says Example
Cost centre Who pays - a department or budget holder 0010 IT
Account What kind of cost it is 2.0.3.0.4 Software Licences

FreeITSM has had cost centres since 3.1.0. The chart of accounts adds the second list beside it - it never replaces it. A project's spending can then be reported the way finance reports it: by account, not just in total.

What an account has

Code Exactly as your finance system writes it - 2.0.3.0.4, 4000-100, 0010. Kept as text, so leading zeros stay; capitals are ignored when matching
Name Software Licences
Kind Expense, Fixed asset, Payroll or Income - chosen from a list
Description Optional
Parent Optional, for the hierarchy (2.0.3.0.4 under 2.0.3.0)
Active Retire, don't delete: an inactive account stays on anything already charged to it but is not offered for anything new. (5.1.0) An account a budget line or a project's defaults use cannot be deleted at all

The kind decides which section of a project's costs-by-account an account is counted in, so income is never added to costs:

  • Expense - running costs, spent and gone (licences, professional services)
  • Fixed asset - equipment that is capitalised and kept, including the time spent building it
  • Payroll - people's time and pay
  • Income - money coming in: a charge to a client, grant funding

A new account placed under a parent starts with the parent's kind.

Every account belongs to one company, like cost centres: two companies can both have a 2.0.3.0.4. With All companies chosen in the top bar you see every company's chart at once.

Getting your chart in

  • By hand - Add.
  • From a spreadsheet - Import an Excel workbook (.xlsx) or CSV whose first row is headings. Only Code is required; a new account also needs a Name and a Kind, or a Parent code to take the kind from. Kinds can be written the way your finance system writes them - Opex, Capex, Salaries, Revenue, or German (Aufwand, Anlage, Personal, Ertrag) - and headings like Account, GL code, Konto or Kontoart are understood. Preview shows every change first; one bad row and nothing is imported.
  • From your finance system, every night - POST /api/v1/accounts/sync (REST API: Chart of accounts), matched on code: nothing is ever duplicated or deleted.

Export gives the chart back as .xlsx or CSV - the easiest way to get an import's layout right is to export, edit, and import.

๐Ÿ’ก Leading zeros. Opening a CSV in Excel and saving it turns 0010 into 10 before FreeITSM sees it. Edit in the .xlsx export instead - its codes are stored as text.

What it is used for

The list is part 1 of the design. All five parts shipped together in 5.1.0:

  1. โœ… Accounts on project budget lines - one account, or a split by amount or percentage - and each project's default accounts. (5.1.0 - see Projects โ†’ Accounts)
  2. โœ… Accounts on tasks - for the time logged on them, split by percentage; subtasks use their parent's. (5.1.0 - see Tasks โ†’ Account)
  3. โœ… Income lines on a project, against an income account. (5.1.0 - see Projects โ†’ Income)
  4. โœ… A project's costs and income by account - planned, actual and forecast per account, subtotalled by kind - plus a view across all projects, a Report Packs block, export and the API. (5.1.0 - see Projects โ†’ Costs and income by account)

Related: Cost centres ยท Projects ยท The design