Accounting Module Functionality and Expectations
1 What Accounting rules?
User must be able to select the applicable accounting rule as "none", "cash" or "accrual" at a product level.
The user is expected at the time of product definition to select the “type” of accounting for the product and select his appropriate GL “Detail account” for the placeholders MifosX accounting module provides
Page 10 of attached accounting summary document gives useful basic distinction between cash and accrual accounting.
2 The COA
Continue having the same design with four main headers
- Assets
- Liabilities
- Income
- Expenditure
- Equity
Allow adding new accounts of any one of these types from the UI
New accounts can be either "header" or "detail" accounts to make things simpler for a user
I would be interested in hearing what COA nirantara and GK accountants use (or any other MFI in community). On document pages 23, 24 is content about the 'classification of transactions' through chart of accounts and a sample chart of accounts for MFIs. How does nirantara and gk COA differ and why would be good to know.
2.1 Scope
For simplicity (for the first cut) have COA at organization level and run accounting reports at the branch level
- So system should associate all journal entries to branch which owns the entity that caused the entry (Ex: Loan account on which a disbursal occured)
- all user defined journal entries should also be associated with a branch
3 Journal Entries
The 'accounting cycle' image provided on page 22 of attached accounting summary document provides a good visualisation of steps involved from 'economic activity step (transaction)' to closing books for a given cycle period (weekly/monthly/quarterly/yearly)
3.1 Automated Journal Entries
MifosX to automatically log (log each transaction as a separate journal entry....no need of daily consolidation etc.)
- Disbursals
- Repayments
- Rescheduling
- Write-Off
- Adjustments
These journal entries should not have permissions to be altered from the accounting UI (like manually created journal entries which can be reversed etc.)
They should link back to the entity that generated them (the loan Transaction etc so that a user can analyse the same)
They may only be altered with events generating from the system (Ex: a user reverts a loan disbursal etc.)
3.2 Manual Journal Entries
For a manual entry, allow "m" debit and "n" credit entries for a "Journal Entry entered by a user" as long as the sums of all debits and credits match
Allow journal entry reversal (system automatically logs reversal entries of corresponding debits and credits)
This means each journal entry batch must have a batch Id (so all individual entries under it can be identified for easy reversal)
4 Accounting rules
4.1 Cash based accounting Scenario:
4.1.1 COA Snippet
HEAD | Placeholder |
Assets | Cash |
Loan Portfolio | |
Income
| Interest on loans |
Income from fees | |
Income from Penalties | |
Expenses | Losses Written Off |
4.1.2 Posting Rules
Event | Debit | Credit |
Disbursal | Loan Portfolio | Cash |
Principal repayment | Cash | Loan Portfolio |
Interest repayment | Cash | Interest on loans |
Principal Write off | Losses Written Off | Loan Portfolio |
Fees payment | Cash | Income from fees |
Penalty payment | Cash | Income from Penalties |
4.2 Accrual Based accounting Scenario
Would only involve posting to three new accounts (Receivables "incomeType")
4.2.1 COA Snippet
HEAD | Placeholder |
Assets
| Cash |
Loan Portfolio | |
Receivables Interest | |
Receivables Fees | |
Receivables Penalties | |
INCOME
| Interest on loans |
Income from fees | |
Income from Penalties | |
Expenses | Losses Written Off |
4.2.2 Posting Rules
Event | Debit | Credit |
Disbursal | Loan Portfolio | Cash |
Interest Applied | Receivables Interest | Interest on loans |
Fee Applied | Receivables fee | Income from fees |
Penalty Applied | Receivables penalties | Income from Penalties |
Principal repayment | Cash | Loan Portfolio |
Interest repayment | Cash | Receivables Interest |
Principal Write off | Losses Written Off | Loan Portfolio |
Fees payment | Cash | Receivables fee |
Penalty payment | Cash | Receivables penalties |
Interest write off | Losses Written Off | Receivables Interest |
Fee write off | Losses Written Off | Receivables fee |
Penalty write off | Losses Written Off | Receivables penalties |
Example:Flat Loan type
Loan Amount: $ 12000
Interest Rate: 12%
Disbursement Date: 15-10-2012
Repayment Start-Date: 15-11-2012
Event: Loan Disbursement
Payment mode: Cash
Date: 15-10-2012
Account Description | Dr | Cr |
Cash Book |
| 12000 |
Loans & Advances Short Term Loan | 12000 |
|
Event: Month-end Accrued Interest Posting. This job posts the Accrued Interest posting to Interest Receivable control accounts on last day of every month.
Mode: Automated process or Manually Invoked process which computes the interest receivables from respective members and post the Journal Voucher to Financial accounting
Date: 31-10-2012
Account Description | Dr | Cr |
Interest Receivables | 120 |
|
Interest on Loans |
| 120 |
Event: Repayments done
Payment mode: Cash
Date: 15-11-2012
Account Description | Dr | Cr |
Cash on Hand | 1120 |
|
Loans & Advances Short Term Loan |
| 1000 |
Interest Receivables |
| 120 |
5 Closure Dates
Allow setting closure dates at branch level after which accounting transactions cannot be posted.
6 Reports
Only three basic reports (using stretchy reporting)
- Balance sheet
- Profit and Loss Statement
- Trial balance