Fuentes - Double Entry Accounting for your Elixir App

Fuentes is a little ledger library for your Elixir application.

Ultimately, it’s the first of two packages intended to support the integration of double entry accounting with web apps that use Phoenix. The hope is to allow people to drop resources "/accounts", FuentesPhoenix.AccountController in their routes and have it JustWorkTM.

It’s still in the early stages (v0.0.2), but can be found on Hex: Fuentes and Github: Fuentes.

Next up is cleaning up some of the code to add typespecs and specs, as well as provide configuration for a default Ecto repo.


Wow! Looks cool!

Congradulations on publishing Fuentes :smile:! Great to see that those hours of hard work and slack-questions have paid off. :cake:

For someone(me) who has no idea what double-entry accounting actually is, what would be a good resource to understand the basics? What is the great benefit of accounting this way?


For anyone coming across this post in 2018 because it is the only double entry accounting library for elixir and interested in trying out Fuentes, I discovered that the library is actually not usable due a mismatch between the database migrations and the app data model (migrations provide two tables, ‘credit_amounts’ and ‘debit_amounts’ but Fuentes expects a single table called ‘amounts’).

However it, does look the issues were addressed in this fork: https://github.com/elixir-twister/fuentes, so you should add this fork to your mix file and not the version which is published on Hex, which absolutely will not work.


For anyone reading this in 2019, what I ended up doing is copying the migrations and the 3 or 4 Ecto schema files into my project and then removing Fuentes from my mix file, which has worked very well.