I want to keep track of my expenses. For me as a software developer means that automate as much as possible. When I’m in front of my PC I can use Wallet without the need of doing an extra step. When I’m on transit I want to track my expenses as well, for example via an iOS app. Then export all entries from this app as CSV and import it into Wallet.
It’s complicate to find a good app.
Pocket Expense App
Pocket Expense can export CSV. You can direct download a CSV file via WLAN from you iPhone. That makes it easy to create a script which downloads and imports CSV files direct from your iPhone. This CSV file is useless for my purposes because it doesn’t have an ID column. I need to know which entries I already imported into my application. How should I identify a single entry without ID? I cannot use the date. No timestamp available.
Moni App
Moni has a simple user interface. Simple is good. You can export a CSV file via email. That’s not simple. When I want to export my expenses I need to go to the in-app settings of Moni. Then on My Moni Account, Export Data. Then I get an email with a CSV file attached. After that I can run my script to import it to Wallet.
Moni adds a unix timestamp to the CSV file. It’s like an ID but it’s actually the modification timestamp. So each time you edit an old entry the ID changes as well. That’s bad. A changing ID for the same entry means that you maybe import this entry many times if you don’t be aware.
Conclusion
The next time you write an app that exports CSV files think twice. Either you do it well and add an ID column or don’t include this feature at all.