◆ booting phatdev.net
<PhatLam/>
000%
← All projects
iOS · Family finance · Sync

MoneyFlow

iPhone and iPad app for Vietnamese household finances: one shared ledger for the family, quick entry with categories picked from the note, rolling budgets, bills and recurring transactions, savings and a live 99.9 gold price, debts and loans, and cost splitting with the minimum transfers. Synced through a server the household runs itself.

Version 0.6.0, used internally by the family

MoneyFlowMoneyFlow
Role
Author: planning, architecture, product direction
Stack
Swift 5, SwiftUI, SwiftData; Node.js and PostgreSQL server
Version
0.6.0 (Oct 11, 2026)
Runs on
iPhone and iPad, iOS/iPadOS 26.1+
63
app tests for bills, recurring items, budgets, gold price, CSV and category suggestions
27
default categories (9 income, 18 expense) with identifiers stable across devices
250+
Vietnamese keywords behind category suggestions, accent-insensitive
0
third-party libraries or SDKs in the app

Highlights

One shared ledger for the household

Transactions, categories and budgets sync between members through a server the household runs itself. Splitting is computed over every member, with the minimum transfers needed to settle.

Categories picked from the note

Type "phở" or "grab" and the app picks the category from the household's history, then a Vietnamese keyword set. A manual choice is never overridden.

A gold price that says how fresh it is

The 99.9 buy-back price comes through a proxy server, with no API key in the app. Old or missing prices are labelled, and alerts fire only for a freshly fetched price.

Budgets and bills that do not slip

Rolling budgets alert at 80% and 100%. Bills remind at 9 AM and show overdue clearly. Recurring transactions keep their original day even through short months.

The household owns its data

The store is encrypted while the device is locked, the app locks with Face ID or Touch ID, and the session token sits in the Keychain. The app ships no passwords or API keys.

Screenshots

Overview: balance per period, spending chart, spending by category, upcoming bills (sample data)Overview: balance per period, spending chart, spending by category, upcoming bills (sample data)
Overview: balance per period, spending chart, spending by category, upcoming bills (sample data)
Transactions: the day-grouped list, search, filters and the calendar view (sample data)Transactions: the day-grouped list, search, filters and the calendar view (sample data)
Transactions: the day-grouped list, search, filters and the calendar view (sample data)
Adding a transaction: amount card, quick amounts, a category suggested from the note (sample data)Adding a transaction: amount card, quick amounts, a category suggested from the note (sample data)
Adding a transaction: amount card, quick amounts, a category suggested from the note (sample data)
Savings: the 99.9 gold price, gold value and profit or loss, savings goals (sample data)Savings: the 99.9 gold price, gold value and profit or loss, savings goals (sample data)
Savings: the 99.9 gold price, gold value and profit or loss, savings goals (sample data)
Budgets: per-category limits, progress in the period, alerts at 80% and 100% (sample data)Budgets: per-category limits, progress in the period, alerts at 80% and 100% (sample data)
Budgets: per-category limits, progress in the period, alerts at 80% and 100% (sample data)
Bill reminders: due soon, overdue, paid cycles (sample data)Bill reminders: due soon, overdue, paid cycles (sample data)
Bill reminders: due soon, overdue, paid cycles (sample data)
Reports: spending by category, cash flow, per member (sample data)Reports: spending by category, cash flow, per member (sample data)
Reports: spending by category, cash flow, per member (sample data)
Family split: spending per person, the even share, balancing suggestions (sample data)Family split: spending per person, the even share, balancing suggestions (sample data)
Family split: spending per person, the even share, balancing suggestions (sample data)
Account: sync, Face ID lock, CSV export (sample data)Account: sync, Face ID lock, CSV export (sample data)
Account: sync, Face ID lock, CSV export (sample data)

Click an image to enlarge, use the arrow keys to browse.

On this page
  1. The problem
  2. The solution
  3. Comparison with the usual approaches

The problem

A Vietnamese household usually has several people spending: a couple, sometimes children or grandparents. Each keeps track in their own way, or not at all. At the end of the month nobody can answer simple questions: how much did the household spend, where did the money go, who spent more than their share, are the electricity and water bills due yet, what is the gold we hold worth now.

The existing approaches all have gaps. Personal spending apps are usually designed for one person, so splitting costs in the home is still done by hand. A shared spreadsheet works but is slow to fill in on a phone, easy to break with a formula and never reminds you of anything. On top of that, a household's financial data is something many people do not want on a third party's service. And things that are very Vietnamese, such as the 99.9 gold price, monthly electricity and water bills, and notes like "phở" or "grab", are rarely handled well by foreign apps.

The solution

MoneyFlow is a shared financial ledger for the whole household: quick entry on the iPhone, sync to a server run by the household itself, and the calculations a household keeps having to do already built in.

Fast entry, categories picked for you

The amount groups thousands as you type, with six quick amounts. Type a few words of note and the app picks the category: the household's own history first, then a built-in set of about 250 Vietnamese keywords, accent-insensitive. A manual choice is never overridden.

One shared ledger, accurate splitting

Transactions, categories and budgets sync between members. Because everyone sees every expense, the app can work out each person's total, the even share, and the minimum set of transfers that brings everyone level. The even share is computed over every registered member, including someone who has not spent anything yet.

Budgets, reports, bills and repeating items

Per-category budgets roll over automatically and warn at 80% and 100%. Period reports show the breakdown, the cash flow and each member. Monthly bills are reminded ahead of the due date at 9 AM and are shown clearly when overdue; recurring transactions such as salary and rent are created on the right day and keep their original day of the month even through short months.

Savings, gold and debts

The 99.9 gold price (the buy-back price) is updated live through a proxy server, so the API key is never inside the app. When there is no real price or the price is old, the app says so instead of letting you think it is the current price, and price alerts fire only for a freshly fetched live price. Savings goals have progress and deadlines; money lent and borrowed has repayment dates and a net balance.

Data stays with the household

Data is stored on the device, the store is encrypted while the device is locked, the app locks with Face ID or Touch ID, and the session token is in the Keychain. The sync server is set up by the household, authenticates with bcrypt and JWT, and depends on no third-party service apart from the gold price source.

Comparison with the usual approaches

The table compares groups of common solutions rather than individual products. The "personal spending app" and "shared spreadsheet" columns describe the typical case; not every product behaves that way. Key: Yes means done well, Partial means done in part or by hand, No means not available.

Feature MoneyFlow Personal spending app Shared spreadsheet
One ledger for several members Yes Partial Yes
Cost splitting with the minimum transfers Yes No Partial
Category picked from a Vietnamese note Yes Partial No
Rolling budgets with 80% and 100% alerts Yes Yes Partial
Bill reminders ahead of time, overdue shown Yes Partial No
Recurring transactions created automatically Yes Partial No
Live 99.9 gold price, gold profit and loss Yes No Partial
Debts and loans per person Yes Partial Partial
App lock with Face ID Yes Partial No
Data on a server the household runs Yes No No
Automatic import of bank transactions No Partial No
On the App Store No Yes Yes

MoneyFlow's strength is one shared ledger for the household with accurate splitting, Vietnamese-aware category suggestions and a live gold price, while the data stays in the household's hands. Its limits: figures are entered by members rather than pulled from banks; it works in Vietnamese dong only; savings, gold, debts, bills and recurring items stay on each device and do not sync; the shared ledger has no privacy between members and is not end-to-end encrypted; the household must set up and run a server; and the app is still an internal development build that has not been released.

More projects