After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 302609 - Accounts receivable system does not respect currency?
Accounts receivable system does not respect currency?
Status: VERIFIED DUPLICATE of bug 343187
Product: GnuCash
Classification: Other
Component: Business
unspecified
Other All
: Normal normal
: ---
Assigned To: Chris Lyttle
Chris Lyttle
Depends on:
Blocks:
 
 
Reported: 2005-05-01 09:19 UTC by Peter Selinger
Modified: 2018-06-29 20:51 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Peter Selinger 2005-05-01 09:19:17 UTC
Please describe the problem:
My default currency is Canadian Dollars (CAD). If I set up an invoice in U.S.
dollars, it is printed in U.S. dollars, but posted to my accounts receivable
register in Canadian Dollars.

Steps to reproduce:
1. Make CAD your default currency. Create a set of business accounts.
2. Create a customer, make USD ($) his default currency.
3. Create an invoice for the customer.
4. Post and print the invoice.



Actual results:
The printed invoice is correctly in U.S. dollars (e.g. $115.90 USD).
The transaction is posted to the accounts in Canadian dollars (e.g. $115.90 CAD). 

Expected results:
I am not sure, since the documentation on multiple currencies is still
incomplete. Certainly I would expect the invoice to be posted in the same
currency in which it was made out. 

Does this happen every time?
Yes. 

Other information:
Comment 1 Christian Stimming 2005-05-02 08:45:33 UTC
I think your guess is correct and the business subsystem incorrectly ignores the
currency completely so far. However, fixing this is probably non-trivial. Do you
have any suggestions about how the GUI for handling these cases should look
like? Maybe that helps the developers who work on this code.
Comment 2 Peter Selinger 2005-05-03 07:31:34 UTC
I don't know much about multiple-currency accounting, so I am no expert on how
this should be done. However, I suspect that it should be handled in precisely
the same way as multi-currency splits. 

Try this: create a CAD account and a USD account and transfer some money from
one to the other. You will see that a pop-up window appears and asks for the
current exchange rate. 

This seems to be consistent with some accounting standards documents that I have
seen on the web (SSAP 20 for Canada/UK, FASB 52 for the US). Since the 1970's,
it seems to be the standard that transactions should usually be recorded in the
exchange rates that are current at the time when the transaction occurs (as
opposed to the historical price at which assets were originally purchased, which
is what they apparently used before 1970).

In designing the GUI, one should keep in mind that posting an invoice can
involve various accounts, and they can all be in different currencies. For
example, consider this invoice in USD:

Wares:   USD $100
Tax GST: USD $7
Tax PST: USD $8

When posting this, $100 should be added to Income:Sales, $7 should be added to
Liabilities:GST, $8 to Liabilities:PST, and finally $115 should be added to
Assets:A/R to balance everything.

Now assume this invoice is sent to a U.S. customer (who lives in Canada but
likes to be billed in USD). Further assume that the company sending the invoice
is German, but does frequenty business in Canada (and thus has a Canadian sales
tax account). Then Income:Sales would be in EUR, Liabilities:GST and
Liabilities:PST would be in CAD, and Assets:A/R would be in USD (it could also
be in EUR, depending on whether the company keeps separate A/R accounts for
different currencies). 

The invoice should be posted exactly the same way as the following hypothetical
transaction: create a new, empty, account "Assets:Invoice" which is in USD. Then
do the following transfers:

Asset:Invoice  -->   Asset:Accounts receivable     $115
Asset:Invoice  <->   Liabilities:Taxes:GST         +$7
Asset:Invoice  <->   Liabilities:Taxes:PST         +$8
Asset:Invoice  <->   Income:Sales                  +$100

The point of the example is the currency conversion. If you actually do the
above transfers by hand, you will be presented with 3 different pop-up windows,
each asking for an exchange rate. My feeling is that the GUI attached to the
"post" button should do exactly the same thing. Maybe it can even re-use the
same code. 

Comment 3 Derek Atkins 2005-05-27 21:47:13 UTC
It's a LOT more difficult than you expect.

Right now the invoice system does not handle multiple currencies.  Any
particular invoice can be in any currency you want, but all accounts touched by
that invoice (including A/R, expenses, etc) MUST be in the same currency.  The
system does not actually enforce this, but your results will be wrong if you
violate this requirement.

I have no expectation that this will get fixed anytime soon.  If you want to
create an invoice in USD then you need a USD A/R and a USD Income account.
Comment 4 Christian Stimming 2006-09-18 11:48:01 UTC

*** This bug has been marked as a duplicate of 343187 ***
Comment 5 John Ralls 2018-06-29 20:51:42 UTC
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=302609. Please update any external references or bookmarks.