We have a friend who keeps all of his receipts in his wallet and we found this rather unsightly and inconvenient. We began by building a website with the intent of tracking receipts digitally. However, while chatting with some mentors, we were inspired to direct our aim towards a different target market - businesses. We realized this app would have more merit for businesses than individual consumers. In the end, we decided to incorporate both ideas but with more emphasis on businesses.

iExpense is a solution to prevent cash fraud from occurring in companies. Technological advancements are linked with internal scams being more transparent and embezzlement of cash, which is a huge issue in companies. To prevent this from occurring, we came up with iExpense, a webapp that will allow businesses to have a tighter control on employee expenses. On a side note, there is also an option to use this website for personal budget tracking purposes.

What it does

iExpense provides a service for businesses and individual consumers. It allows company-based employee expenditures to be tracked more accurately and reliably. For businesses, its purpose is to provide all receipts of expenses that employees can claim as reimbursements including but not limited to items like travel expenses and dental insurance. Through an entire collection of employees’ virtual receipts, management can be assured that expense claims are indeed for the expenses incurred. For individual customers, iExpense provides a platform to track all their purchase receipts that can then be retrieved easily at a later date.

How I built it

First we obtained a domain name and hosted the website using Amazon Web Service. The dynamic website was built using LAMP (Linux Apache MySQL PHP) stack using Javascript, HTML/CSS with jQuery and Bootstrap frameworks. Using NFC technology we were able to execute a receipt uploading script upon user interaction. The database stores all user information and transaction information. Using Walmart as a client, we created a JSON parser to use Walmart’s Development API allowing us to access their database while successfully obtaining the image URL, price, name, and categories of their products. All features are implemented.

Challenges I ran into

Challenges we faced included broken codes, merging problems, coordination mistakes, and learning and implementing new codes on the fly. A notable challenge was parsing the Walmart API JSON file since we could not find a pre-made wrapper for it. We also ran into trouble efficiently storing arrays into the MySQL database. To resolve this, we created our own string encapsulation system for server to client connections.

Accomplishments that I'm proud of

-Completed prototype with all the desired implementations -Beta-tested the entire program with successful results -Aesthetically pleasing combination of font, color, and images -Receipts from actual transactions retrievable from databases, displayed in large modal thumbnails as well as text format

What I learned

Some of us learnt a totally new language while others learned how to deal with multiple APIs and databases. But most importantly, we learned that working after midnight will lead to some backward progress.

What's next for iExpense

Our next steps include more secured encapsulation, connecting to more secured databases, and partnering with companies and retailers to commercialize this idea.

Share this project: