Orange juice and toothpaste. Bleach and ammonia. Lego bricks and feet. Friends and money. These pairs all have one thing in common: they are best left unmixed. Mixing friends and money can be an unnecessary source of strain in friendships. Harmoney is a group payments solution that eliminates these pain points.


We have been inspired by our own personal experiences! We have come up with three scenarios that we have experienced in some way or another in our own lives. In each of these three scenarios, Harmoney streamlines the process of group payment as it helps you to organize and keep track of payments for each person in the group.

  1. Suppose you are eating out with your friends at a restaurant that only takes debit. You offer to take the entire bill for your friends, but in exchange you ask that they re-pay you at a later day. You can use Harmoney to create a Room, and invite your friends to that Room. You can specify a Room Balance, and Harmoney will automatically split this balance equally between your friends. A request will be sent to each friend, and you will be able to view the progress of the Room at any time.

  2. Suppose you are living with a roommate, and you both decide to split the monthly Internet bill. Normally, you pay the bill, while your roommate sends you an e-transfer to repay you. With Harmoney, you can create a Room with your roommate, and set-up a recurring monthly balance. At the same time each month, the Room will notify your roommate to transfer you money.

  3. Suppose you and a group of friends want to buy a big gift for someone. You are with your friends at the mall, and you guys find a good gift. You offer to pay for the gift. Similarly to our restaurant scenario, you can use Harmoney to create a Room and invite your friends to the Room.

What it does

Harmoney aims to solve situations that may arise during everyday life. One major pain point that Harmoney aims to solve is the idea of "group e-tranfers". Our app allows you to request money from other users on a per-request or on a scheduled basis.

Users that want to request money can create a Harmoney Room. These users are known as the Room Owner. With a Room, you can generate a unique Room ID and share this ID with other users (such as your friends). Your friends can use this ID to join your Room. Once your friends are in the Room, they can see other users who are in the Room, and they can also see how much money is owed to the Room Owner. Money is transferred between users through the use of e-transfers, which can be completed through services such as Stripe or Interac. Using a Room is useful because it keeps a record of all transactions. The Room can also notify other users of how much money they owe.

How we built it

The application runs on mobile devices. React Native was used to develop the front-end interface, while Node.js was used to power the back-end. MongoDB is used to store Users and Room Data, and Passport is used to authenticate users.

Challenges we ran into

The biggest challenges that we ran into were learning how to use new technologies in our project. React Native was a new technology to all members of our team, and it was a challenge to learn how to develop code for a mobile application.

Accomplishments that we're proud of

We are proud of being able to work together as a team to delegate tasks. Each team member found the experience to be very valuable. We learned a lot and we had fun at the same time!

What we learned

We learned that it is important to prioritize tasks. It was very important to get an MVP going ASAP so that we could identify any major bugs or logical flaws with our program early into development.

What's next for Harmoney

The next step for Harmoney is to integrate the application with mobile payment solutions such as Stripe or Interac. We would also like to deploy Harmoney so that the application can be run in a production instance.

Share this project: