New Pocket Money v1.0 — now open source
Self-hosted · Multi-currency · Family-first

Family payroll,
settled every month.

Pocket Money keeps your family's books around one question: how much do I transfer to each person this month — and is it settled? Base pay, chores, adjustments and loan EMI, added up per person, on a server you own.

One Docker image EUR · USD · INR Members see only their own
Statement
July 2026
Sharma Family · Aarav
You'll receive this month
₹3,250
Settled · paid Jul 31
🪙
Base allowance
Monthly standing amount
+2,000
🧹
Chores · 7 done
Dishes, trash, tutoring…
+1,750
🎁
Festival bonus
One-off adjustment
+500
🏦
Bike loan · EMI
4 of 10 · ₹6,000 left
−1,000
Net payable ₹3,250
Groups in EUR, USD & INR
Self-hosted, single image
Members see only their own
Chores, loans & adjustments
Open source
Everything the household needs

The whole ledger, one clear number per person

Pocket Money is family payroll: base pay, chores, one-off adjustments and loans, rolled into a single monthly payable for every member — and a way to record that you actually paid it.

The monthly formula

Base + chores + adjustments − loan EMI, computed for each member, every month. One number that answers "what do I owe, and is it done?"

Groups with a fixed currency

Spin up a group in EUR, USD or INR. The currency is permanent for the group, so the books never quietly drift between denominations.

Add anyone by email

Registered users attach instantly. Unknown emails become shadow members you can bookkeep against right away — they claim the history when they sign up.

Chores catalog

Keep a catalog of chores with values. Tick them off through the month and each completed one rolls straight into that person's payable.

Base pay & adjustments

Set a standing monthly base per member, then drop in one-off bonuses or deductions — a festival gift, a docked week — whenever life happens.

Loans with EMI

Lend against the ledger and let a fixed monthly EMI net out of each statement automatically — with the remaining balance in view — until it's cleared.

Record real payments

Log the actual transfer you made and watch the month flip to Settled. A per-member passbook keeps the running history of every payout.

Members see only their own

Every member gets a read-only view of their statement, passbook and loans — and never sees another member's amounts. Privacy is built into the roles.

Notifications, built in

A notifications bell keeps everyone in the loop — a new statement, a recorded payment, a loan update — across web, Android and iOS from one codebase.

Yours to self-host

The web app and the API ship as one Docker image. Migrations run on boot, one secret is all it needs — your family's ledger lives on your box.

How a statement adds up

Every month, one number you can trust

No mental math, no "wait, did I already pay you?" The admin keeps four moving parts per person, and Pocket Money settles them into a single payable — then tracks whether it's been paid.

  • Base allowance. The standing monthly amount you've set for that member.
  • Chores. Each completed chore from the catalog adds its value to the month.
  • Adjustments. One-off bonuses or deductions for the things a formula can't predict.
  • Loan EMI. Any active loan nets a fixed amount out until the balance is cleared.
+ Base allowance
₹2,000
+ Chores · 7 done
₹1,750
+ Festival bonus
₹500
Bike loan · EMI
₹1,000
Monthly payable Settled
₹3,250
Two roles, clean boundaries

The admin keeps the books. Everyone else sees only theirs.

One person runs the group's payroll. Every member gets a private, read-only window into their own money — and nothing more.

Runs the group

Admin

Keeps payroll for the whole family and settles everyone.

  • Create groups — each with a permanent currency and its own members.
  • Add people by email — registered users or shadow members.
  • Manage chores, base pay & loans — the catalog and the numbers.
  • Record payments — mark each member's month as settled.
  • Sees every statement — the full payroll view across the group.
Their own money

Member

A private, read-only view of just their statement.

  • Their monthly statement — the full breakdown, this month and past.
  • Their passbook — every payment recorded against them.
  • Their loans — balances and EMI progress at a glance.
  • Never other members' amounts — everyone's numbers stay private.
  • Submit chores (optional) — off by default, behind a per-group flag.
A look inside

Calm surfaces, tabular numbers, nothing to reconcile

The same app runs on Android, iOS and the web — a clean light and dark theme on all three, built mobile-first.

You'll receive · July
₹3,250
● Settled
🪙 Base
+2,000
🧹 Chores · 7
+1,750
🏦 Loan EMI
−1,000

Your money, at a glance

One payable, the full breakdown, and whether it's been paid — nothing else.

A
Aarav
Base + 7 chores
₹3,250
Settled
M
Meera
Base + bonus
₹2,400
Due
R
Rohan
Base − loan EMI
₹1,500
Due

The admin's monthly view

Every member's payable and settle status for the group, in one list.

Record a payment to
Meera · July 2026
₹2,400
1
2
3
4
5
6

Log the transfer, mark settled

Record what you actually paid; it lands in the passbook and flips the month.

Run it yourself

Self-host in one command

The web app and the API are one image. You need only Docker and a single secret — the family's money ledger never leaves your machine.

● Available now

Self-host (Docker)

One image serves the web app and the API same-origin. Postgres migrations run on boot; JWT_SECRET is the only required env var.

Quick-start guide
● Available

Android APK

Grab the signed APK from the latest release and sideload it. Built with EAS and pointed at the server you configure — no app-store listing required.

Download latest APK Release notes & older builds →
○ Same codebase

iOS

Built from the same Expo & React Native codebase. Run it in the simulator today; a provisioned device arrives once Apple signing is set up.

On the roadmap
terminal
# Clone, set the one required secret, and bring it up
git clone https://github.com/srjn45/pocket-money.git && cd pocket-money
export JWT_SECRET=$(openssl rand -hex 32)
docker compose up --build

# Then open the web app + API, same-origin:
 http://localhost:8080
1

Clone & set a secret

Grab the repo and generate a JWT_SECRET. It's the only required env var — docker compose fails fast with a clear message if it's missing.

2

Bring it up

Run docker compose up --build. Migrations run automatically on first boot, so a fresh Postgres is set up for you.

3

Register & create a group

Open http://localhost:8080, register an account, pick a currency, and add your family by email. On the same network, your phone's browser works too.

Full instructions, native builds and backups in the project README.

Stop doing pocket-money math in your head.

Base pay, chores, adjustments and loans — one clear monthly number per person, on a server you own.

Self-host Pocket Money