Learn how to add, split, and manage expenses within your BillBuddy groups
Expenses are the core of BillBuddy. When you add an expense, it’s automatically split among selected group members and their balances are updated in real-time.
When you add an expense, the total amount is divided equally among all selected members.For example, if you paid ₹600 for dinner and split it among 3 people, each person owes ₹200.
The system automatically:
Increases the payer’s balance by the full amount
Decreases each split member’s balance by their share
Displays net balances in the group view
1
Navigate to Add Expense
From your group page, click the “Add Expense” button in the top-right corner.You’ll be taken to /add-expense/:groupId where the form is pre-loaded with your group’s member list.
Choose which group members should share this expense:
By default, all group members are selected
Use the “Split Between” dropdown to modify the selection
You can select any combination of members
The payer is automatically included in the split calculation. If you want to pay for everyone without charging yourself, you’ll need to track that separately.
Use the multi-select to exclude members who weren’t part of a particular expense. For example, if only 3 out of 5 roommates went to dinner, select only those 3.
4
Submit the Expense
Click “Add Expense” to save.The backend will:
Create the expense record with you as the payer
Link it to your group
Calculate and update member balances
Redirect you back to the group page
// Backend: routes/expenses.js:34-60const expense = new Expense({ description, amount, paidBy: req.user.id, // You are the payer group, splitAmong, category});await expense.save();// Add expense to group's expense listawait Group.findByIdAndUpdate(group, { $push: { expenses: expense._id }});
You’ll see the expense appear in the group’s expense list immediately.