Accounting & Finance
Overview
The Accounting & Finance module provides comprehensive financial management capabilities including Chart of Accounts, journal entries, and 14 financial reports. It supports double-entry bookkeeping with trial balance, cash book, bank book, general ledger, income statement, balance sheet, and specialised reports for revenue, expenses, budget, collection, tax, and audit.
Navigate to: Sidebar → Accounting & Finance
Chart of Accounts

Navigate to: /accountingfinance/listchart
The Chart of Accounts is the foundation of the accounting system — a structured list of all financial accounts used by the MMDA.
| Element | Description |
|---|---|
| Search bar | Search accounts by name, code, or type |
| Filter tabs | Filter by account type (Asset, Liability, Equity, Revenue, Expense) |
| Add Account button | Create a new account |
| Import button | Bulk import accounts via Excel |
| Account tree | Hierarchical display of accounts |
Account Types
| Type | Description | Examples |
|---|---|---|
| Asset | Resources owned by the MMDA | Cash, Bank, Accounts Receivable, Property |
| Liability | Obligations owed by the MMDA | Accounts Payable, Loans, Grants Payable |
| Equity | Net worth of the MMDA | Retained Earnings, Capital |
| Revenue | Income earned by the MMDA | Property Rates, Business Fees, Licences |
| Expense | Costs incurred by the MMDA | Salaries, Utilities, Maintenance |
Account Card
| Field | Description |
|---|---|
| Account Code | Unique code (e.g. 1001, 2001) |
| Account Name | Name of the account |
| Account Type | Asset, Liability, Equity, Revenue, or Expense |
| Parent Account | Parent account in the hierarchy |
| Balance | Current balance in GHS/GH₵ |
| Status | Active or Inactive |
Add / Edit Account

Navigate to: /accountingfinance/addaccount or /accountingfinance/editaccount/:id
| Field | Required | Description |
|---|---|---|
| Account Code | Yes | Unique code for the account |
| Account Name | Yes | Name of the account |
| Account Type | Yes | Asset, Liability, Equity, Revenue, or Expense |
| Parent Account | No | Parent account for hierarchical grouping |
| Description | No | Description of the account |
| Opening Balance | No | Initial balance when creating the account |
| Status | Yes | Active or Inactive |
!!! tip "Things to check" - Account codes are unique across the entire chart - Account type determines which reports the account appears in - Parent accounts correctly group child accounts in the hierarchy - Opening balance is correctly reflected in the trial balance - Inactive accounts are excluded from transaction entry but preserved in reports
Journal Entries

Navigate to: /accountingfinance/listjournal
| Element | Description |
|---|---|
| Search bar | Search by journal number, description, or date |
| Filter options | Filter by date range, status, or account |
| Add Journal button | Create a new journal entry |
| Journal card | Shows journal details and status |
Journal Card
| Field | Description |
|---|---|
| Journal Number | System-generated unique identifier |
| Date | Transaction date |
| Description | Description of the journal entry |
| Total Debit | Sum of all debit entries (GHS/GH₵) |
| Total Credit | Sum of all credit entries (GHS/GH₵) |
| Status | Posted, Draft, or Reversed |
| Created By | User who created the entry |
Add Journal Entry

Navigate to: /accountingfinance/addjournal
| Field | Required | Description |
|---|---|---|
| Date | Yes | Transaction date |
| Description | Yes | Description of the journal entry |
| Reference | No | External reference number |
| Journal Lines | Yes | At least 2 lines (debit and credit) |
Journal Line
| Field | Required | Description |
|---|---|---|
| Account | Yes | Select account from Chart of Accounts |
| Debit | Conditional | Debit amount (GHS/GH₵) — required if Credit is empty |
| Credit | Conditional | Credit amount (GHS/GH₵) — required if Debit is empty |
| Description | No | Line-level description |
!!! warning "Double-Entry Rule" Total Debits must equal Total Credits for the journal entry to be posted. The system enforces this balance before submission.
Journal Details

Navigate to: /accountingfinance/journaldetails/:thread
Shows the complete journal entry with all lines and audit information.
| Section | Description |
|---|---|
| Header | Journal number, date, description, status |
| Journal Lines | All debit/credit lines with account names and amounts |
| Audit | Created by, created date, posted by, posted date |
| Actions | Edit (if Draft), Reverse, Print |
!!! tip "Things to check" - Journal entry balances (total debits = total credits) - Posted journal entries cannot be edited (only reversed) - Draft entries can be edited and posted later - Reversed entries create a counter-entry preserving the audit trail - Journal entries flow through to the General Ledger - Account balances update correctly after journal posting
Financial Reports
The system provides 14 financial reports accessible from the Accounting & Finance sidebar.
1. Trial Balance

Navigate to: /accountingfinance/trailbalance
| Field | Description |
|---|---|
| Account Code | Account identifier |
| Account Name | Name of the account |
| Debit | Debit balance (GHS/GH₵) |
| Credit | Credit balance (GHS/GH₵) |
| Total | Sum of all debits and credits |
The trial balance verifies that total debits equal total credits across all accounts. Any discrepancy indicates a posting error.
!!! tip "Things to check" - Total Debits = Total Credits - All active accounts appear with correct balances - Inactive accounts with zero balance are excluded - Date range filter correctly limits the period
2. General Ledger

Navigate to: /accountingfinance/generalledger
A chronological record of all transactions for each account.
| Field | Description |
|---|---|
| Date | Transaction date |
| Journal # | Linked journal entry number |
| Description | Transaction description |
| Debit | Debit amount (GHS/GH₵) |
| Credit | Credit amount (GHS/GH₵) |
| Balance | Running balance after each transaction |
Filter Options
| Filter | Description |
|---|---|
| Account | Select specific account(s) |
| Date Range | Start and end date |
| Transaction Type | Filter by journal type |
3. Cash Book

Navigate to: /accountingfinance/cashbook
Tracks all cash transactions (cash in hand).
| Field | Description |
|---|---|
| Date | Transaction date |
| Reference | Transaction reference |
| Description | Transaction description |
| Receipts | Cash received (GHS/GH₵) |
| Payments | Cash paid (GHS/GH₵) |
| Balance | Running cash balance |
4. Bank Book

Navigate to: /accountingfinance/bankbook
Tracks all bank transactions.
| Field | Description |
|---|---|
| Date | Transaction date |
| Reference | Transaction reference |
| Description | Transaction description |
| Deposits | Money deposited (GHS/GH₵) |
| Withdrawals | Money withdrawn (GHS/GH₵) |
| Balance | Running bank balance |
5. Income Statement

Navigate to: /accountingfinance/incomestatement
Shows revenue and expenses for a specific period.
| Section | Description |
|---|---|
| Revenue | All revenue accounts with totals |
| Expenses | All expense accounts with totals |
| Net Income | Revenue minus Expenses (GHS/GH₵) |
6. Balance Sheet

Navigate to: /accountingfinance/balancesheet
Shows the financial position at a specific point in time.
| Section | Description |
|---|---|
| Assets | All asset accounts with totals |
| Liabilities | All liability accounts with totals |
| Equity | Equity accounts with totals |
| Balance Check | Assets = Liabilities + Equity |
7. Expense Report

Navigate to: /accountingfinance/expensereport
Detailed breakdown of expenses by category, department, or period.
| Field | Description |
|---|---|
| Category | Expense category |
| Budgeted Amount | Planned expense (GHS/GH₵) |
| Actual Amount | Real expense (GHS/GH₵) |
| Variance | Difference between budgeted and actual |
| Variance % | Percentage variance |
8. Revenue Report

Navigate to: /accountingfinance/revenuereport
Detailed breakdown of revenue by source, category, or period.
| Field | Description |
|---|---|
| Revenue Source | Property rates, business fees, licences, etc. |
| Expected Amount | Projected revenue (GHS/GH₵) |
| Collected Amount | Actual revenue collected |
| Collection Rate | Percentage collected |
9. Accounts Receivable

Navigate to: /accountingfinance/accountsreceivable
Money owed to the MMDA by rate payers.
| Field | Description |
|---|---|
| Rate Payer | Name of the debtor |
| Property | Linked property |
| Amount Due | Outstanding amount (GHS/GH₵) |
| Days Outstanding | How long the amount has been outstanding |
| Status | Current, 30 days, 60 days, 90+ days |
10. Accounts Payable

Navigate to: /accountingfinance/accountspayable
Money the MMDA owes to vendors and suppliers.
| Field | Description |
|---|---|
| Vendor | Name of the creditor |
| Invoice Number | Vendor's invoice reference |
| Amount Due | Outstanding amount (GHS/GH₵) |
| Due Date | Payment deadline |
| Status | Current, Overdue |
11. Budget Report

Navigate to: /accountingfinance/budgetreport
Comparison of budgeted vs actual amounts.
| Field | Description |
|---|---|
| Category | Budget category |
| Budgeted Amount | Planned amount (GHS/GH₵) |
| Actual Amount | Real amount spent/collected |
| Variance | Difference |
| Utilization % | Percentage of budget used |
12. Collection Report

Navigate to: /accountingfinance/collectionreport
Summary of revenue collected over a period.
| Field | Description |
|---|---|
| Period | Collection period |
| Expected | Total expected collection (GHS/GH₵) |
| Collected | Total collected amount |
| Collection Rate | Percentage collected |
| MMDA | Assembly-level breakdown |
13. Tax Report

Navigate to: /accountingfinance/taxreport
Summary of tax-related revenue and obligations.
| Field | Description |
|---|---|
| Tax Type | Property tax, business tax, etc. |
| Assessed Amount | Total assessed (GHS/GH₵) |
| Collected Amount | Total collected |
| Outstanding | Amount not yet collected |
| Collection Rate | Percentage collected |
14. Audit Report

Navigate to: /accountingfinance/auditreport
Comprehensive audit trail of financial transactions.
| Field | Description |
|---|---|
| Date | Transaction date |
| User | User who performed the action |
| Action | Type of action (Create, Update, Delete, Post, Reverse) |
| Module | Affected module (Journal, Bill, Payment, etc.) |
| Details | Description of the change |
| Old Value | Previous value (for updates) |
| New Value | New value (for updates) |
!!! tip "Things to check" - All 14 reports load with correct data - Date range filters work on all reports - Export to Excel/PDF works on all reports - Financial totals are consistent across reports - Trial balance debits = credits - Balance sheet balances (Assets = Liabilities + Equity) - Income statement net income matches equity changes - General ledger transactions match journal entries - Collection report totals match payment history - Audit report captures all financial actions
Accounting Workflow
Chart of Accounts Setup
↓
Journal Entries Created (double-entry)
↓
Journal Entries Posted
↓
General Ledger Updated
↓
Financial Reports Generated:
- Trial Balance (verify balance)
- Cash Book / Bank Book (cash tracking)
- Income Statement (revenue - expenses)
- Balance Sheet (financial position)
- Specialised Reports (expense, revenue, budget, collection, tax, audit)
!!! tip "Things to check" - Chart of Accounts is set up before journal entries - Journal entries cannot be posted if not balanced - General Ledger reflects all posted journal entries - Financial reports are consistent with each other - Date ranges on reports correctly limit the data - Reports handle zero-data states gracefully (no broken UI) - All amounts are formatted in GHS/GH₵ - Reports can be printed or exported