mtotschnig / MyExpenses

GPL licenced Android Expense Tracking App
http://www.myexpenses.mobi/
GNU General Public License v3.0
811 stars 217 forks source link

Export to Ledger/Beancount format #309

Open amjr108 opened 8 years ago

amjr108 commented 8 years ago

I don`t know how popular this approach but for me plain-text files (http://plaintextaccounting.org/) are best for archiving accounting data.

Of course, it's already possible to convert csv/qif files to plain text, but it's not so easy.

mtotschnig commented 7 years ago

Ledger really seems to be an interesting approach. I would like to understand your needs with respect to My Expenses better. Could you describe the workflow between My Expenses and other tools based on Ledger that you have in mind?

amjr108 commented 7 years ago

It's simple: I'm using My Expences to collect data, which then exported to ledger for use on desktop (several important reports are scripted) and archiving. It's the best of two worlds: I have actual info about my cash in my pocket, and when I want to analyze something, I use ledger on big computer. But there are some problems with importing data:

  1. There is no general qif-to-ledger converter
  2. CSV isn't good for split transaction
  3. It's not so easy to merge data of several accounts in one file.

On the other hand, Ledger format is very simple to generate.

For my case, I solved this problem with custom QIF to ledger converter, which works only with output of your program.

So, my current workflow is:

  1. Collect data
  2. On the weekend, export data to QIF files on Dropbox
  3. Run script to convert data to ledger format.
  4. Check the output and paste it to main ledger file.
  5. Run reports.
  6. Save data in safe place.

Third step isn't hard actually, but pressing one button to get one ledger file for all accounts is much simpler.

jelmer commented 7 years ago

My use case is pretty much the same as @amjr108's.

alensiljak commented 2 years ago

I've been thinking about the same thing. The issue is how exactly to map the Categories to Ledger accounts. Is there a distinction between the top-level account groups (income, expenses, equity, liabilities)? How about Trading accounts for converting currencies?