Skip to main content
Microsoft
separator
https://catalogartifact.azureedge.net/publicartifacts/cloudimg1647283583153.ihatemoney-aebf6da2-2ebe-4002-bb50-ac243be1901a/image3_logolarge.png

IHateMoney on Ubuntu 24.04 by cloudimg

by cloudimg

Share expenses with friends, see who owes what, and settle up from one private instance.

IHateMoney on Ubuntu 24.04 LTS by cloudimg

IHateMoney is a shared budget manager. It answers one question well: when a group of people keep paying for things on each other's behalf, who owes whom, and what is the simplest way to settle it?

Create a project for the flat, the holiday, the wedding or the band, add the people in it, and record expenses as they happen. Each expense records who paid and who it was for, so a bill shared by three of five participants is split between those three only. Participants can carry a weight, so someone who takes the larger room or the double portion absorbs a proportionate share. The balance view then shows what each person has paid, what they have consumed, and where they stand, and the settlement view reduces all of it to the shortest list of repayments that clears the board.

There is more underneath: multiple currencies with automatic conversion, reimbursement entries as well as expenses, a full history of every edit with the ability to undo, monthly statistics, CSV and JSON export, an invitation link and email invites for the other participants, a REST API, and an interface translated into more than thirty languages. Mobile applications talk to the same API.

Your money stays your business. The instance runs entirely on your own virtual machine with its own PostgreSQL database. Nothing about who you live with, what you spend or what you owe leaves the machine, and cloudimg has no access to any of it.

### What cloudimg adds

Nobody can walk up and start creating projects. IHateMoney's own default is that project creation is open to anyone who can reach it, and its create route is written to skip administrator authentication entirely while that default is in force, through the web interface and the REST API alike. On a public address that is an open door. This image closes it: project creation requires an administrator password that is generated on your VM, and the demonstration project that is otherwise reachable by anyone is switched off.

No shared secrets, anywhere. IHateMoney signs every session cookie with a key that ships in its own source with a published default value. Anyone holding that value can mint a session, including an administrator session. This image never runs with it. The signing key, the administrator password and the PostgreSQL password are generated on your VM at first boot and exist nowhere else. A guard runs before both the application and the web server start and refuses to let either serve if any of those is empty, unrotated, or the published default.

Sign-in that actually works. Upstream's shipped configuration marks the session cookie as HTTPS-only, which means a browser silently declines to send it over plain HTTP and every sign-in appears to succeed and then does nothing. The appliance is configured for the way it is actually served, and the guide shows you the one line to change when you put TLS in front of it.

A closed database. PostgreSQL listens on loopback only, and so does the application server behind the web front end, so the only thing exposed to your network is the web interface itself. Your data lives on a dedicated disk, separate from the operating system.

Verified before it shipped. The image is captured only after a fresh virtual machine, launched from the exact image you receive, has proved every one of the above on its own: real credentials issued and accepted, published defaults rejected, anonymous project creation refused, and a genuine three-person project created, split across two expenses, and settled with arithmetic checked to the penny.

### Deployment

Launch the VM, allow inbound port 80 from the networks you trust, and browse to the public address. The administrator password is written to /root/ihatemoney-credentials.txt on first boot. The step by step deployment guide, including how to enable invitation email and HTTPS, is linked from this listing.

IHateMoney is free software under a BSD-3-Clause-style licence; the licence text and the notices for its bundled components ship on the image at /usr/share/ihatemoney/.

Backed by 24/7 cloudimg support.

At a glance

https://catalogartifact.azureedge.net/publicartifacts/cloudimg1647283583153.ihatemoney-aebf6da2-2ebe-4002-bb50-ac243be1901a/image5_screenshot01.png
https://catalogartifact.azureedge.net/publicartifacts/cloudimg1647283583153.ihatemoney-aebf6da2-2ebe-4002-bb50-ac243be1901a/image1_screenshot02.png
https://catalogartifact.azureedge.net/publicartifacts/cloudimg1647283583153.ihatemoney-aebf6da2-2ebe-4002-bb50-ac243be1901a/image0_screenshot03.png
https://catalogartifact.azureedge.net/publicartifacts/cloudimg1647283583153.ihatemoney-aebf6da2-2ebe-4002-bb50-ac243be1901a/image2_screenshot04.png
English (United States)
Your Privacy Choices Opt-Out Icon Your Privacy Choices
Consumer Health Privacy Sitemap Contact Us Privacy & Cookies Terms of Use About our ads Manage cookies