Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: I added punctuation like colons and full stops,and Vocabulary

...

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 General Ledger (GL) “Detail account” for the placeholders MifosX Mifos X accounting module provides

...

Continue having the same design with five main account "Types":

  • Assets
  • Liabilities
  • Income
  • Expenditure
  • Equity

...

  • So system should associate all journal entries to branch which owns the entity that caused the entry (ExExample: Loan account on which a disbursal occuredoccurred)
  • all user defined journal entries should also be associated with a branch

...

The 'accounting cycle' image provided on page 22 of attached accounting summary document provides a good visualisation visualization of steps involved from 'economic activity step (transaction)' to closing books for a given cycle period (weekly/monthly/quarterly/yearly)

...

The Journal entries view would look similar to the below mockupmock up

3.1        Automated Journal Entries

MifosX Mifos X to automatically log (log each transaction as a separate journal entry....no need of daily consolidation 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 (ExExample: a user reverts a loan disbursal etc.)

...

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 for Loans

...

Would only involve posting to three new accounts (Receivables "incomeTypeincome Type") .

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

...

The entire interest (for complete duration of the loan) is recognized immediately after disbursal.

There are quite a few conflicting views on if this special treatment is required. However, leaving it in here for now till we get feedback from a few accountants.

The sample loan shown here follows a monthly repayment cycle.

Event

Debit

Credit

Disbursal

(7-10-2012)

Portfolio Control Account (1)

Fund (1)

Interest Receivable (2)

Income from interest (2)

Apply Fee

(7-10-2012)

Fees Receivable(3)

Income from fees

(3)

Principal, Interest and Fee Repayment(1)

(7-11-2012)

 

Fund (4)

Interest Receivable (4)

Portfolio Control Account (4)

Fees Receivable(4)

Prepayment for next n-1 Instalments Installments (excluding part of last principal)

(8-11-2012)

 

Fund (5) 

Interest Receivable (5)

Portfolio Control Account(5)

Prepayment of remaining Principal

(17-11-2012)

Fund (6)

Portfolio Control Account(6)

...

Event

Debit

Credit

Disbursal

(7-10-2012)

Portfolio Control Account (1)

Fund (1)

Automated System Event (when an Interest repayment becomes due)

(7-11-2012)

Interest Receivable (2)

Income from interest (2)

Principal, Interest Repayment(1st Installment)

 (7-11-2012)

Fund (3)

Interest Receivable (3)

Portfolio Control Account (3)

Prepayment for remaining Instalment’s Installment’s (no interest accrued)

 (7-11-2012)

Fund (4)

 

Portfolio Control Account(4)

...

  • Real account: Debit what comes in and credit what goes out.
  • Personal account: Debit who receives and Credit who gives.
  • Nominal account: Debit all expenses & losses and Credit all incomes & and gains

 

 

Debit

Credit

Asset

Increase

Decrease

Liability

Decrease

Increase

Equity

Decrease

Increase

Income

Decrease

Increase

Expenditure

Increase

Decrease

...

7.2  Income Statement (P & L statement)

 

Income Statement Is a company's financial statement that indicates how the revenue (money received from the sale of products and services before expenses are taken out) is transformed into the net income (the result after all revenues and expenses have been accounted for, also known as Net Profit ).
It displays the revenues recognized for a specific period, and the cost and expenses charged against these revenues

...

Table stores the “Chart of Accounts” for an organization.

Column Name Data TypeDescription
idint 
gl_codevarchar(45) 
categoryvarchar(45)Whether the account falls under “asset”, “income”, “expense”, “liability” or “equity”
parent_IdintReferences “id” of table “m_acc_coa”. For enabling a hierarchical COA
namevarchar(45) 
typevarchar(45)Either “header” or “detail” account. Header accounts will not have transactions logged against them
descriptionvarchar(500) 
disabledBoolean

A Flag indicating if the account has been disabled (not deleted). No more manual entries can

be posted against a disabled Account

manual_entries_allowedBooleanFlag indicates if manual Journal entries can be passed against this account

...

Table stores the “Chart of Accounts” for an organization.

Column NameData TypeDescription
accounting_rulevarchar(45)

The type of accounting required. Either “none”, “cash” or “accrual”

*Selecting none would disable posting of all accounting transactions

...

Table stores all journal entries generated in the system (either created automatically by the system and those created manually).

Column NameData TypeDescription

id

 

Primary key for the entry

coa_idintForeign key to the Chart of Accounts Table

entry_date

DATE TIME

The entry date for the journal entry (can be backdated to any date etc)

batch_id

varchar(45)

Batch key for the entry, could be a UUID generated by Java.Used to link together a set of related Journal entries

type

varchar(45)

Whether the entry is a debit or a credit

amount

Float

 

description

varchar(500)

user notes for manual entries

branch_id

 

Branch with which this entry is associated

reversal_id

 

Foreign key to another journal entry which reversed this journal entry (id column of acc_journal_entry)

is_reversed

Boolean

Flag indicating if the Journal entry is reversed (an entry can be reversed only once)

entity_type

varchar(45)

“Loan” or “Savings” account for system generated entries. Null for manual entries

entity_id

int

Nullable foreign key to a loan or savings account

system_generated

Boolean

Flag indicating whether the entry was logged automatically by the system

created_date

Date

Audit feild to indicated the actual date on which the entry was posted into the system

created_by

varchar(45)

Foreign key to user who created the Entry (for manual entries)

...

Table stores details of all branches and dates for which all Journal entries have been closed.

Column NameData TypeDescription

Id

Int

 

closing_date

DATE

 

office_id

Int

Id of the office for which the closure date is applicable 

created_by

varchar(45)

 

created_date

DATE

 

last_updated_date

DATE

 

...