# Phase 2A manual test script: chart of accounts and dimensions

For a treasurer or accountant. About 25 minutes.

**Staff app:** http://localhost/church_acct_app/public/app
**Logins** (top of `database/seeders/TobasSeeder.php`): **hq.admin@toprc.test** (Headquarters, two-factor),
**ikeja.admin@toprc.test** (Ikeja branch admin, two-factor), **ikeja.pastor@toprc.test** (read-only, no two-factor).

## A. The new chart (any login)

1. [ ] **Setup › Chart of accounts**: a tree. Classes 10000 Assets to 50000 Expenditure, groups such as
   11000 Cash and Bank, accounts in tens (11010 Cash on Hand, 11020 Petty Cash…).
2. [ ] Headings show a padlock. Accounts the app posts to show **system**. Many show **open to branches**.
3. [ ] Type `repairs` in the search box: 52050 Repairs & Maintenance.
4. [ ] **Reports › Trial balance** for this year: the totals still balance and match what you saw before
   the change (only the codes are new). An old printout's code can be found in the `account_code_map` table.

## B. Headquarters changes the chart (hq.admin)

5. [ ] On **52000 Operating Expenses** press **Add account**, name it "Equipment Hire", tick **Open to
   branches**, leave the code empty: it becomes the next free code in tens (52130 on the test church).
6. [ ] Try adding another with code `52135`: refused ("must be a multiple of 10…").
7. [ ] **Edit** 31010 Accumulated Fund Balances: the name cannot be changed (locked). **Edit** 11010 Cash
   on Hand: **Active** cannot be switched off (system account).

## C. A branch adds its own sub-account (ikeja.admin)

8. [ ] On 52050 Repairs & Maintenance press **Add sub-account**, name it "Generator repairs": it gets
   **52051** with an **Ikeja** badge.
9. [ ] The Ikeja admin has no **Add account** or **Add group** buttons, and cannot edit Headquarters accounts.
10. [ ] **Journals › New journal** for Ikeja: 52051 Generator repairs is in the account list. Change the
    branch to another branch: it disappears.
11. [ ] Post a small journal: debit 52051, credit 11010 Cash on Hand (a second person posts it).
12. [ ] As hq.admin, **Reports › Trial balance** for all branches: the amount is inside **52050**; for Ikeja
    only: it shows on its own line **52051**.

## D. Cost centres and ministries

13. [ ] **Setup › Cost centres** (button on the chart page): Youth Church, Media & Sound, Sunday School,
    Annual Convention. Add "Ikeja choir robes" as the Ikeja admin: it is for Ikeja only.
14. [ ] **New journal**: each line has a cost centre and a ministry box (ministries come from the website).
    Tag the expense line with **Youth Church** and post.
15. [ ] **Reports › Trial balance**, choose **Cost centre: Youth Church**: only that journal's figures, and
    the title says "Cost centre: Youth Church". The same filter is on income and expenditure, financial
    position, changes in funds and the general ledger.
16. [ ] Reverse the journal: the reversal carries the same cost centre.

## E. Help

17. [ ] On the chart page press **Help for this page**: "The chart of accounts" explains the codes and
    sub-accounts.

## Known limits of 2A

- The universal chart is changed by Headquarters directly; versioned templates and their rollout to
  branches come with Directs (Phase 5).
- Each account takes nine sub-accounts per branch.
- Cost centre and ministry filters apply to the five ledger-based statements named above, not yet to the
  giving summary or receipts and payments.
