Nobody likes spending those extra 10 minutes on the way back home splitting a bill after a delicious meal with friends. Every time it happens, you lose 10 minutes of your life that you'll never get back! I've experienced this all too well, and during BitCamp, I created MoneyMe to help all the faithful bill-fronters who are also tired of doing more work after handing over their card.
What it does
MoneyMe uses computer vision and OCR technology to automagically scan your paper receipts, and generates a virtual bill that can be opened via a QR Code by other members of your party. After each person selects which items they ate, MoneyMe will calculate each person's individual cost, as well as the general split between subexpenses like taxes & fees. MoneyMe then displays the preferred payment method of the host, and fills in the details, making it easy for party members to pay back the host.
How we built it
I developed the web app using a popular react framework called Next.js. The party integration and realtime cost updates rely on Socket.io, a poweful websocket library. Receipt scanning was implemented in python with opencv and tesseract OCR. The backend is powered by express and Next.js' own api framework.
Challenges we ran into
Computer vision is hard! I spent a bulk of my time debugging opencv.js and polishing the user interface to be as accessible and friendly as possible.
Accomplishments that we're proud of
- MoneyMe is privacy focused. It doesn't store any kind of telemetry / tracking info, and generates randomized identities for every new session created. Bill details are never stored permanently!
- MoneyMe was designed to be as frictionless as possible. Users can pull out their phone, scan the QR code, and pay for their meal in less than 30 seconds!
What's next for MoneyMe
- Integration with payment vendors (i.e. Menusifu & Square)
- Mobile apps for iOS and Android
- Personalized accounts & bill history
- Venmo / Paypal integration