webapp: add expense

never cap-blocks edits, removes or restores of existing expenses

group splitsheet webapp/expense-add.spec.ts

πŸ‘₯ People

Alice @aliceBob @bob
sendsAlice runs /newsplit @bob
πŸ‘₯ Group chat
Alice
/newsplit @bob
Hello! I’m @splitsheetbot, here to help you split bills with friends. β€” show full message
Hello! I’m @splitsheetbot, here to help you split bills with friends.
I use something called a Splitsheetβ€”a dynamic message that keeps track of all expenses and debts. Below, you’ll find your first Splitsheet.

Here’s how to get started:
1. Join the Splitsheet by clicking the πŸ‘₯⁠βž• button (or reply with add @​username)
2. Reply to the Splitsheet with a description of your expense
3. Pin the Splitsheet for quick access

Examples of messages:
- groceries 50 (sender paid, and the cost is split evenly among all members)
- bought coffee for Emma 15 (sender paid, and only Emma owes)
- John bought concert tickets for me and Sarah, 40 each (John spent 80, and both Sarah and you owe)

How to edit expenses:
- Edit your own message
- Reply to your message with the changes
- Reply to your message requesting deletion

Adding expenses is free. One payment shows who owes whom, for the whole group, forever.

When you're ready to start a new Splitsheet, use the /newsplit command. You can mention members to add them immediately: /newsplit @​alice @​bob
If you have any questions or suggestions, feel free to contact @splitsheet_help_bot
🌐
πŸ“‹ Splitsheet

πŸ‘₯ Alice, @bob

Your expenses will appear here

↩️ Reply to add an expense. Or tap here
πŸ‘€βž•More β€’β€’β€’ β†—
πŸ›‘οΈ Admin log channel
πŸ“‹ #splitsheet_created
By: Alice
Sheet: 56614fdb-d008-4e8c-82cf-e13f787b5182

πŸ‘€ #member_joined
Name: Alice
Sheet: 56614fdb-d008-4e8c-82cf-e13f787b5182

πŸ‘€ #member_joined
Name: bob
Sheet: 56614fdb-d008-4e8c-82cf-e13f787b5182
viaWebApp.addExpenseAlice adds an expense (taxi, 100)
πŸ‘₯ Group chat
Alice
/newsplit @bob
Hello! I’m @splitsheetbot, here to help you split bills with friends. β€” show full message
Hello! I’m @splitsheetbot, here to help you split bills with friends.
I use something called a Splitsheetβ€”a dynamic message that keeps track of all expenses and debts. Below, you’ll find your first Splitsheet.

Here’s how to get started:
1. Join the Splitsheet by clicking the πŸ‘₯⁠βž• button (or reply with add @​username)
2. Reply to the Splitsheet with a description of your expense
3. Pin the Splitsheet for quick access

Examples of messages:
- groceries 50 (sender paid, and the cost is split evenly among all members)
- bought coffee for Emma 15 (sender paid, and only Emma owes)
- John bought concert tickets for me and Sarah, 40 each (John spent 80, and both Sarah and you owe)

How to edit expenses:
- Edit your own message
- Reply to your message with the changes
- Reply to your message requesting deletion

Adding expenses is free. One payment shows who owes whom, for the whole group, forever.

When you're ready to start a new Splitsheet, use the /newsplit command. You can mention members to add them immediately: /newsplit @​alice @​bob
If you have any questions or suggestions, feel free to contact @splitsheet_help_bot
🌐
πŸ“‹ Splitsheet

πŸ’° 100.00 β€’ πŸ‘₯ Alice, @bob

Jun 19, 2026
taxi ― 100.00 β€’ Alice for all

πŸ”’ All debts are already calculated. Unlock to see them

↩️ Reply to add an expense. Or tap here
πŸ‘€βž•More β€’β€’β€’ β†—
πŸ”“ See the debts
πŸ“‹ Splitsheet πŸ’° 100.00 β€’ πŸ‘₯ Alice, @bob Jun 19, 2026 taxi ― 100.00 β€’ Alice for…
Alice added via the app:
taxi ― 100.00 β€’ Alice for all
πŸ“± Mini App
Mini App
given50 expenses already on the sheet
πŸ‘₯ Group chat
Alice
/newsplit @bob
Hello! I’m @splitsheetbot, here to help you split bills with friends. β€” show full message
Hello! I’m @splitsheetbot, here to help you split bills with friends.
I use something called a Splitsheetβ€”a dynamic message that keeps track of all expenses and debts. Below, you’ll find your first Splitsheet.

Here’s how to get started:
1. Join the Splitsheet by clicking the πŸ‘₯⁠βž• button (or reply with add @​username)
2. Reply to the Splitsheet with a description of your expense
3. Pin the Splitsheet for quick access

Examples of messages:
- groceries 50 (sender paid, and the cost is split evenly among all members)
- bought coffee for Emma 15 (sender paid, and only Emma owes)
- John bought concert tickets for me and Sarah, 40 each (John spent 80, and both Sarah and you owe)

How to edit expenses:
- Edit your own message
- Reply to your message with the changes
- Reply to your message requesting deletion

Adding expenses is free. One payment shows who owes whom, for the whole group, forever.

When you're ready to start a new Splitsheet, use the /newsplit command. You can mention members to add them immediately: /newsplit @​alice @​bob
If you have any questions or suggestions, feel free to contact @splitsheet_help_bot
🌐
πŸ“‹ Splitsheet

πŸ’° 100.00 β€’ πŸ‘₯ Alice, @bob

Jun 19, 2026
taxi ― 100.00 β€’ Alice for all

πŸ”’ All debts are already calculated. Unlock to see them

↩️ Reply to add an expense. Or tap here
πŸ‘€βž•More β€’β€’β€’ β†—
πŸ”“ See the debts
πŸ“‹ Splitsheet πŸ’° 100.00 β€’ πŸ‘₯ Alice, @bob Jun 19, 2026 taxi ― 100.00 β€’ Alice for…
Alice added via the app:
taxi ― 100.00 β€’ Alice for all
viaWebApp.saveExpenseAlice edits the expense (taxi, 200)
  • βœ“the edit landed at cap (amount 200)
πŸ‘₯ Group chat
Alice
/newsplit @bob
Hello! I’m @splitsheetbot, here to help you split bills with friends. β€” show full message
Hello! I’m @splitsheetbot, here to help you split bills with friends.
I use something called a Splitsheetβ€”a dynamic message that keeps track of all expenses and debts. Below, you’ll find your first Splitsheet.

Here’s how to get started:
1. Join the Splitsheet by clicking the πŸ‘₯⁠βž• button (or reply with add @​username)
2. Reply to the Splitsheet with a description of your expense
3. Pin the Splitsheet for quick access

Examples of messages:
- groceries 50 (sender paid, and the cost is split evenly among all members)
- bought coffee for Emma 15 (sender paid, and only Emma owes)
- John bought concert tickets for me and Sarah, 40 each (John spent 80, and both Sarah and you owe)

How to edit expenses:
- Edit your own message
- Reply to your message with the changes
- Reply to your message requesting deletion

Adding expenses is free. One payment shows who owes whom, for the whole group, forever.

When you're ready to start a new Splitsheet, use the /newsplit command. You can mention members to add them immediately: /newsplit @​alice @​bob
If you have any questions or suggestions, feel free to contact @splitsheet_help_bot
🌐
πŸ“‹ Splitsheet

πŸ’° 700.00 β€’ πŸ‘₯ Alice, @bob

⭐ Expense limit reached. One payment lifts it, forever

...31 more expenses

Jun 19, 2026
seed 30 ― 10.00 β€’ Alice for all
seed 31 ― 10.00 β€’ Alice for all
seed 32 ― 10.00 β€’ Alice for all
seed 33 ― 10.00 β€’ Alice for all
seed 34 ― 10.00 β€’ Alice for all
seed 35 ― 10.00 β€’ Alice for all
seed 36 ― 10.00 β€’ Alice for all
seed 37 ― 10.00 β€’ Alice for all
seed 38 ― 10.00 β€’ Alice for all
seed 39 ― 10.00 β€’ Alice for all
seed 40 ― 10.00 β€’ Alice for all
seed 41 ― 10.00 β€’ Alice for all
seed 42 ― 10.00 β€’ Alice for all
seed 43 ― 10.00 β€’ Alice for all
seed 44 ― 10.00 β€’ Alice for all
seed 45 ― 10.00 β€’ Alice for all
seed 46 ― 10.00 β€’ Alice for all
seed 47 ― 10.00 β€’ Alice for all
seed 48 ― 10.00 β€’ Alice for all
seed 49 ― 10.00 β€’ Alice for all

πŸ”’ All debts are already calculated. Unlock to see them

↩️ Reply to add an expense. Or tap here
πŸ‘€βž•More β€’β€’β€’ β†—
πŸ”“ See the debts
πŸ“‹ Splitsheet πŸ’° 700.00 β€’ πŸ‘₯ Alice, @bob ⭐ Expense limit reached. One payment l…
Alice added via the app:
taxi ― 200.00 β€’ Alice for all
πŸ“± Mini App
Mini App
viaWebApp.removeExpenseAlice removes the expense
  • βœ“the remove landed at cap
πŸ‘₯ Group chat
Alice
/newsplit @bob
Hello! I’m @splitsheetbot, here to help you split bills with friends. β€” show full message
Hello! I’m @splitsheetbot, here to help you split bills with friends.
I use something called a Splitsheetβ€”a dynamic message that keeps track of all expenses and debts. Below, you’ll find your first Splitsheet.

Here’s how to get started:
1. Join the Splitsheet by clicking the πŸ‘₯⁠βž• button (or reply with add @​username)
2. Reply to the Splitsheet with a description of your expense
3. Pin the Splitsheet for quick access

Examples of messages:
- groceries 50 (sender paid, and the cost is split evenly among all members)
- bought coffee for Emma 15 (sender paid, and only Emma owes)
- John bought concert tickets for me and Sarah, 40 each (John spent 80, and both Sarah and you owe)

How to edit expenses:
- Edit your own message
- Reply to your message with the changes
- Reply to your message requesting deletion

Adding expenses is free. One payment shows who owes whom, for the whole group, forever.

When you're ready to start a new Splitsheet, use the /newsplit command. You can mention members to add them immediately: /newsplit @​alice @​bob
If you have any questions or suggestions, feel free to contact @splitsheet_help_bot
🌐
πŸ“‹ Splitsheet

πŸ’° 500.00 β€’ πŸ‘₯ Alice, @bob

⭐ Expense limit reached. One payment lifts it, forever

...31 more expenses

Jun 19, 2026
seed 30 ― 10.00 β€’ Alice for all
seed 31 ― 10.00 β€’ Alice for all
seed 32 ― 10.00 β€’ Alice for all
seed 33 ― 10.00 β€’ Alice for all
seed 34 ― 10.00 β€’ Alice for all
seed 35 ― 10.00 β€’ Alice for all
seed 36 ― 10.00 β€’ Alice for all
seed 37 ― 10.00 β€’ Alice for all
seed 38 ― 10.00 β€’ Alice for all
seed 39 ― 10.00 β€’ Alice for all
seed 40 ― 10.00 β€’ Alice for all
seed 41 ― 10.00 β€’ Alice for all
seed 42 ― 10.00 β€’ Alice for all
seed 43 ― 10.00 β€’ Alice for all
seed 44 ― 10.00 β€’ Alice for all
seed 45 ― 10.00 β€’ Alice for all
seed 46 ― 10.00 β€’ Alice for all
seed 47 ― 10.00 β€’ Alice for all
seed 48 ― 10.00 β€’ Alice for all
seed 49 ― 10.00 β€’ Alice for all

πŸ”’ All debts are already calculated. Unlock to see them

↩️ Reply to add an expense. Or tap here
πŸ‘€βž•More β€’β€’β€’ β†—
πŸ”“ See the debts
πŸ“‹ Splitsheet πŸ’° 500.00 β€’ πŸ‘₯ Alice, @bob ⭐ Expense limit reached. One payment l…
Alice added via the app:
taxi ― 200.00 β€’ Alice for all
πŸ“± Mini App
Mini App
viaWebApp.saveExpenseAlice edits the expense (taxi, 100)
  • βœ“the restore landed at cap
πŸ‘₯ Group chat
Alice
/newsplit @bob
Hello! I’m @splitsheetbot, here to help you split bills with friends. β€” show full message
Hello! I’m @splitsheetbot, here to help you split bills with friends.
I use something called a Splitsheetβ€”a dynamic message that keeps track of all expenses and debts. Below, you’ll find your first Splitsheet.

Here’s how to get started:
1. Join the Splitsheet by clicking the πŸ‘₯⁠βž• button (or reply with add @​username)
2. Reply to the Splitsheet with a description of your expense
3. Pin the Splitsheet for quick access

Examples of messages:
- groceries 50 (sender paid, and the cost is split evenly among all members)
- bought coffee for Emma 15 (sender paid, and only Emma owes)
- John bought concert tickets for me and Sarah, 40 each (John spent 80, and both Sarah and you owe)

How to edit expenses:
- Edit your own message
- Reply to your message with the changes
- Reply to your message requesting deletion

Adding expenses is free. One payment shows who owes whom, for the whole group, forever.

When you're ready to start a new Splitsheet, use the /newsplit command. You can mention members to add them immediately: /newsplit @​alice @​bob
If you have any questions or suggestions, feel free to contact @splitsheet_help_bot
🌐
πŸ“‹ Splitsheet

πŸ’° 600.00 β€’ πŸ‘₯ Alice, @bob

⭐ Expense limit reached. One payment lifts it, forever

...31 more expenses

Jun 19, 2026
seed 30 ― 10.00 β€’ Alice for all
seed 31 ― 10.00 β€’ Alice for all
seed 32 ― 10.00 β€’ Alice for all
seed 33 ― 10.00 β€’ Alice for all
seed 34 ― 10.00 β€’ Alice for all
seed 35 ― 10.00 β€’ Alice for all
seed 36 ― 10.00 β€’ Alice for all
seed 37 ― 10.00 β€’ Alice for all
seed 38 ― 10.00 β€’ Alice for all
seed 39 ― 10.00 β€’ Alice for all
seed 40 ― 10.00 β€’ Alice for all
seed 41 ― 10.00 β€’ Alice for all
seed 42 ― 10.00 β€’ Alice for all
seed 43 ― 10.00 β€’ Alice for all
seed 44 ― 10.00 β€’ Alice for all
seed 45 ― 10.00 β€’ Alice for all
seed 46 ― 10.00 β€’ Alice for all
seed 47 ― 10.00 β€’ Alice for all
seed 48 ― 10.00 β€’ Alice for all
seed 49 ― 10.00 β€’ Alice for all

πŸ”’ All debts are already calculated. Unlock to see them

↩️ Reply to add an expense. Or tap here
πŸ‘€βž•More β€’β€’β€’ β†—
πŸ”“ See the debts
πŸ“‹ Splitsheet πŸ’° 600.00 β€’ πŸ‘₯ Alice, @bob ⭐ Expense limit reached. One payment l…
Alice added via the app:
taxi ― 100.00 β€’ Alice for all
πŸ“± Mini App
Mini App