The estimated number of people visually impaired in the world is 285 million, 39 million blind and 246 million having low vision; Moreover, nearly 1 in 5 people in the United States have some type of disability. We were inspired to work on this project to make banking accessible to everyone by creating an application with virtual banking assistant who helps them to manage their budgets wisely.
What it does
BankTalk is a web application with a virtual banking assistant (i.e Amazon Alexa) thata aims to make budgeting more convenient for everyone with a focus on those who may be suffering from a disability. BankTalk uses Capital One's Nessie API to get the user's account info (e.g credit. debit), comprised of a list of transactions and purchases made by the user. By looking at all of the previous purchases, BankTalk creates a user's budget. Now, a user can easily interact with virtual assistant to stay up-to-date with his/her bank account budget. For example, these are some of the things one can ask the banking virtual assistant: Hi, what is my account balance?, Get the status of my budget? Increase/Decrease money for certain budget(e.g Set my food budget to $200), List the budget list, etc. BankTalk also has a user interface for visually-abled people and to work with the entire Amazon suit such as the Amazon Show.
How we built it
We first began by looking at Capital One's Nessie API to see what data we had available to us. While the API had usability that was needed for our project, we had to first populate the API with data to later use in our application. After placing the data into out Nessie account, we then had to build up all of our url queries that would be used later by Alexa. Meanwhile, we built our web framework using Flask and Flask-ask for Alexa. We then set up the intents and NLP tasks that Alexa would handle for processing any of the user's possible requests. For actually creating the budget, we had to look at all past transactions that were pulled from the user's account on Nessie. Our program then looked used the data to create a budget that noticed how much they were spending and would approximate what the base budget may look like for the user based off of the data. Once completing these technical tasks for our hack, we then implemented a web-app so that we could demo the data being changed by Alexa and so that users would be able visualize the changes if they were not impaired.
Challenges we ran into
We had several challenges during the progress of our project. Our initial challenge was having enough data provided by the Nessie API to be able to create a base budget depending upon the user's purchase history. Another problem we had was setting up the intents to be general enough that a user can intuitively interact with the application, but specific enough that certain actions wouldn't be mistaken for others.
Accomplishments that we're proud of
We are proud that we were able to get the application running and doing what we had intended it to do. While we had some rough times with data, user-friendless, and Alexa intents, we persevered to create a functional prototype.
What we learned
We learned how to create an Alexa skill and how Alexa makes some NLP tasks simpler. We also received good experience in bulding web applications since we used HTTP to communicate with Alexa.
What's next for BankTalk
Next, we will extended the functionality of creating the initial budget that our application provides so that it is more accurate to what users may initially want. We will also expand the number of banking APIs that Alexa uses so that it can be used by a wider audience.
- Python Flask Web Framework
- Capital One Nessie API
- Amazon Alexa