ExMoney is a [work-in-progress] self-hosted web application which helps you to track your personal finances.
It's built around Spectre API so
ExMoney can export bank transactions for you.
The list of available banks you can find here.
The main idea behind
ExMoney is to have free, open source application which can help to track personal finances at(almost) no cost.
ExMoney is written in Elixir using Phoenix framework,
the app on production consumes very little of RAM and it should work just fine on Heroku free plan.
Spectre API is a Financial Data Aggregation Platform.
It allows to export bank transactions automatically which allows
ExMoney to solve the main flaw of most personal finance apps —
need to enter every single transaction.
Spectre API provides 'Test' mode using which it's possible to have connections with up to 10 providers(banks) for free.
ExMoney has a mobile version for an iPhone. The mobile version is built using Framework7.
ExMoney is supposed to run as Standalone web app(i.e.
Add to Home Screen in Safari).
Currently mobile version looks like this
ExMoney has a desktop version which is not ready yet, however it provides some
Settings to manage providers(banks), accounts, categories, etc.
The desktop version is built using Bootstrap and utilizes default
ExMoney has two types of Rules which can be applied for every incoming transaction from Spectre API:
a rule to reassign category which has been assigned automatically by Spectre API
In case of automatically assigned category does not make sense it's possible to reassign category based on transaction's description and payee fields.
a rule to detect withdraw transaction and to create appropriate 'Income' transaction in a 'Cash' account
If a bank does not require one-time-password/captcha/etc to log in,
ExMoney will run a periodic job to export transactions for you.
ExMoney will run a job to export transactions from a bank every hour.
ExMoney disables this task during the nights to not violate Heroku's free plan limitations.
ExMoney allows to manually export transactions from banks which require one-time-password as well.
For now only
otp is supported.
How to use
ExMoney, please make sure that
Saltedge supports your bank here.
Please check the wiki page which describes how to use
ExMoney is a work-in-progress/prototype/'works on my machine' stage.
Why another personal finance app?
I've written a blog post about ExMoney http://blog.damirca.one/ex-money.
Why only iOS?
I don't have an Android device to test
ExMoney on Android. Feel free to add necessary Framework7 styles and test
ExMoney on Android.
Why Desktop version does not use React/ES7/Clojurescript/Elm/etc?
I'm a backend developer, I don't know frontend part, I don't know how to js/html/css, so I took the most easiest approach to build a frontend.
Contributions welcome! Please feel free to create pull-requests and issues.
This software is licensed under the ISC license.