Connect

Paste the Web App URL and token from your Apps Script deployment. They are stored only on this device — nothing is committed to the public repo.

Got an invite link? Paste the whole link into the first box and leave the token empty.

Run setup() once in the Apps Script editor, deploy as a Web App (Execute as: Me · Who has access: Anyone), then run showToken().

Net balance

—
Simplest way to settle
Everyone is square

History

0

Settle up

The fewest transactions that clear every balance. Debts are chained through, so nobody pays a middleman.

Settings

Exchange rates · per 1 AUD

Live rates come from open.er-api.com (Frankfurter as backup) and are cached in the ExchangeRates tab for the day. A manual override sticks until you clear it.

An invite link lets someone use the app on their own phone. They see only the projects you pick, and only the expenses they're part of. They can add and edit their own expenses and log their own settlements, but can't change people, rates or projects. Turning a link off takes effect on their next sync.

Connection
Backend—
Unsynced changes0
Receipt scanningoff
Offline receipt reader…

Every change is saved on this phone first and pushed when Google is reachable, so the app keeps working with no signal. Google services are blocked in some countries — there the queue simply holds until you are back online or on a VPN.

New expense

≈ A$0.00 —
1 AUD = HKD

Expense

Rate

Mark as settled

Scan a receipt

Who had what, or who paid. Tap the 🎤 on your keyboard to dictate instead of typing.

The photo is read once — only the expense it produces is saved.

Describe the expense

Tap the 🎤 on your iPhone keyboard and just say it. Amounts, who paid, and who was in are all understood.
Working…
This takes a few seconds

Invite someone

Invite link

Projects

A project keeps its own expenses, balances and settle-up. Give one a date range and the app switches to it by itself while you're away.

New project

Add a currency

The rate is fetched straight away, so a code nobody quotes is rejected here rather than turning up as a dead row later.

Recurring

New occurrences are added by the Sheet on the day they fall due, the next time any phone syncs. Ones already added are ordinary expenses — editing or deleting one never touches the series.

Series

Recurring transfer

A transfer records money moving, which settles a debt. On its own it creates one — if a housemate pays you $1,200 a month toward rent, also set up the rent as a recurring expense (Repeat on the add screen), or the balances will say you owe her.