New issue 223: Cost of the same currency
https://bitbucket.org/blais/beancount/issues/223/cost-of-the-same-currency
Zhuoyun Wei:
Hi,
I am not sure if this is a bug or this is by design.
I try to use a special approach to record my gift card transactions. Here is a
minimal bean file:
```
1970-01-01 open Assets:Cash
1970-01-01 open Assets:GiftCards
1970-01-01 open Income:SomeIncome
1970-01-01 open Expenses:Music
1970-01-01 open Expenses:Apps
2018-01-01 * "Some income"
Income:SomeIncome -1000.00 USD
Assets:Cash +1000.00 USD
2018-02-01 * "Buy 100 USD gift card with 50% discount"
Assets:Cash -50.00 USD
Assets:GiftCards +100.00 USD { 0.50 USD }
2018-02-02 * "Buy some music with gift cards"
Assets:GiftCards -10.00 USD { 0.50 USD }
Expenses:Music +5.00 USD
```
The idea is, I am tagging lots in "Assets:GiftCards" with a cost, but the cost
is of the same currency. I put 100 USD (which I "bought" with 50 USD) into
GiftCards, then buy music with 10 USD (which I "bought" with 5 USD) in the gift
card.
The balance looks good (but the cost tag is already missing)
```
# bean-report
Assets:Cash 950.00 USD
Assets:GiftCards 90.00 USD
Equity
Expenses:Apps
Expenses:Music 5.00 USD
Income:SomeIncome -1000.00 USD
Liabilities
```
However, if I forget to attach a cost, things went wrong:
```
2018-02-02 * "Buy some apps with gift cards"
Assets:GiftCards -20.00 USD
Expenses:Apps
# bean-report
Assets:Cash 950.00 USD
Assets:GiftCards 70.00 USD
Equity
Expenses:Apps 20.00 USD
Expenses:Music 5.00 USD
Income:SomeIncome -1000.00 USD
Liabilities
```
At this time the "Assets:GiftCards" account should be a mixed inventory, with
two lots: 90 "discounted USD" and -20 "normal USD". But no, Beancount does not
distinguish a "discounted USD" (i.e. USD with a cost) and a "normal USD",
instead if merges the two lots together into a 70 USD lot.
This is quite an edge case. I remember someone in the mailing list recommended
creating a new commodity GUSD (gift card USD) for gift card balances. But if I
have gift cards of different currencies, creating gift card counterpart for
each one of them seems cumbersome.
So may I ask if distinguishing between "currency with cost of the same currency
(e.g. 100 USD { 0.50 USD })" and "normal currency (e.g. 100 USD)" is trivial to
implement? If the "feature" is implemented, there would be no need to create
imaginary currencies like "GUSD" any more.
--
You received this message because you are subscribed to the Google Groups
"Beancount" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beancount/20180301081323.21539.31114%40celery-worker-106.ash1.bb-inf.net.
For more options, visit https://groups.google.com/d/optout.