[Kmymoney-devel] [Bug 300503] New: Net Worth Report Does Not Reconcile with Income/Expense Report

James Zhixin Zhang reachjames at reachjames.net
Wed May 23 14:15:56 UTC 2012


https://bugs.kde.org/show_bug.cgi?id=300503

            Bug ID: 300503
          Severity: major
           Version: unspecified
          Priority: NOR
          Assignee: kmymoney-devel at kde.org
           Summary: Net Worth Report Does Not Reconcile with
                    Income/Expense Report
    Classification: Unclassified
                OS: Linux
          Reporter: reachjames at reachjames.net
          Hardware: Ubuntu Packages
            Status: UNCONFIRMED
         Component: general
           Product: kmymoney4

I’m an active user of KMyMoney and have been using KMyMoney on daily basis for
almost two years. I think that I’ve found a serious logic flaw in the
Income/Expense Report that Net Worth Report did not reconcile with the
Income/Expense Report. Based on my observation, it seems that the reason might
because of the Income/Expense Report does not consider the fair value
adjustment of the balance sheet accounts. Below is a simple scenario that the
current Income/Expense Report fails to reconcile with Net Worth Report:

----------Sample Start----------
Suppose that we have only two asset accounts in our book (base currency is
USD): 

Cash-USD, open date 01/01/2011, currency USD, opening balance 1000.00
Cash-EUR, open date 01/01/2011, currency EUR, opening balance 0.00

And there’s neither liability account nor income/expense account.

Then we make one entry for foreign exchange from USD to EUR with bank:

05/01/2011, exchange from USD130.00 to EUR100.00

On 12/31/2011, we update the exchange rate EUR/USD to be 1.50 and the Net Worth
Report to be viewed for the calendar year 2011 shall be like this:
Cash-USD    USD870.00
Cash-EUR    USD100.00 * 1.50 = EUR150.00
Balance        USD870.00 + USD150.00 = USD1020.00
----------Sample End----------
In the above example, we have opening balance of USD1000.00 and ending balance
of USD1020.00 in calendar year 2011. It is supposed that we shall have income
of USD20.00 for the year because of the difference between the opening balance
and ending balance. Such income of USD20.00 comes from the unrealized exchange
rate gain because we enjoyed lower exchange rate for the foreign exchange
transaction made on May 01, 2011. However in Income/Expense report, we see
grand total of zero for calendar year 2011 because in the above example, we
make no income/expense-related journal entry. Although the USD20.00 gain is not
realized and in most countries it is also not taxable, such gain is part of the
income because of the asset appreciation and it shall be shown in the
Income/Expense report. 

Beside the above scenario, I think that the Income/Expense report may fail in
any book in which there are balances in asset/liability accounts whose price
fluctuates. More specifically if there’s foreign currency account or investment
current in KMyMoney and such account has balance, the Income/Expense report
will not reconcile with Net Worth Report.

As a consultant specialized in finance and accounting, I can tell you that it
is incorrect and non-GAAP not to include such kind of unrealized gain/loss. In
practice, all of our clients (many of which are Fortune 500 companies) have
unrealized gain/loss accounts for different categories of asset/liability
account to carry the gain/loss resulting from period end revaluation. The
unrealized gain/loss amounts will be included in income statement under
Comprehensive Income, for instance. Therefore income statement can reconcile
with balance sheet. This article provides simple explanation on this:
http://www.investopedia.com/articles/04/022504.asp (see section Comprehensive
Income).

Based on my knowledge of KMyMoney, I think there are two ways that you can fix
this bug:

1. The easy way is to add report entries like Unrealized Gain and Unrealized
Loss to collect the gain/loss resulting from exchange rate fluctuation or
equity price fluctuation for each asset/liability account when generating the
Income/Expense report.
2. The difficult way is to add revaluation function in KMyMoney to make
unrealized gain/loss journal entries automatically based on fiscal period end
exchange rates and equity prices. To do this, you might need to add two fields
for the asset/liability account so that user can maintain the income/expense
accounts to which the unrealized gain/loss are adjusted to. Then using this
automatic revaluation function, KMyMoney will make journal entries by
calculating the different between the transaction price and period end price.
Therefore there’ll be no need to revise the Income/Expense Report.

I believe the most important reason why people and businesses maintain
bookkeeping is for reporting based on which decision-making can be made. If we
allow this kind of flaw exist in KMyMoney, it will be misleading for
decision-making. For example, people won’t find out that why their net worth is
so low even if they have high income and low expenditure when their books carry
huge amount of (unrealized) investment loss. I myself found that I had
thousands of dollars Net Worth gain not shown in the Income/Expense report. It
took me a while to find out where it came from and even I’ve found out the
reason,  I don’t know whether it comes from foreign currency gain/loss or
investment gain/loss. I hope this bug can be fixed in KMyMoney. Thank you.

Reproducible: Always

Steps to Reproduce:
1. Create a new book and enter the transaction specified in the Details section
2. Review Net Worth Report balance for 2010 and then review Net Worth Report
balance for 2011.
3. Review Income/Expense Report for 2011.
Actual Results:  
Net Worth Balance in 2010 = USD1000.00
Net Worth Balance in 2011 = USD1020.00
Income/Expense Grand Total = USD0.00

Expected Results:  
Net Worth Balance in 2010 = USD1000.00
Net Worth Balance in 2011 = USD1020.00
Income/Expense Grand Total = USD20.00

See http://www.investopedia.com/articles/04/022504.asp for brief explanation on
the subject matter

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the KMyMoney-devel mailing list