Project Details
Group Number: 30 Project Prompts: Create currency automation that checks currency exchange rates(inspired from beginner prompt), Create an automation that is triggered using UiPath Forms, uses any website API to gather information, and displays results in UiPath Forms.
Inspiration
I am an international student living in Canada, and very often I have to exchange US dollars for Canadian dollars because my country's banks do not have good rates with the Canadian currency, and neither do the Canadian banks with my country's. This creates quite a hassle when it comes to conversion. I wanted to make this process a bit more simple.
What it does
Every time I convert USD to CAD, I have to look through several Canadian bank websites and compare them with each other to find the best conversion rate. This might be a minor issue too, but it takes quite a bit to figure out what the buying and selling rate actually means; is it when you buy CAD, or buy USD? What was the difference between USD-CAD and CAD-USD again?
The bottom line is. I just wanted to click a button that printed out a result that said: "If you have USD and want CAD, go to this bank". So I made it with UiPath Automation Software.
How I built it
The UiPath Studio automation process I created, visits 5 websites and makes API calls to the Central Bank of Canada, to get current market and bank exchange rates. After getting this data, we compare the values and figure out which bank is the best for selling or buying CAD.
The UiPath Studio software allows for scraping websites. By giving the automation website URLs and then highlighting the part of the website I need the data from. Then I fed the data to several variables, made logical comparisons to find the bank that sells you the most CAD for USD and the bank that requires the least CAD for USD.
After getting all this data, I used UiPath Forms to display them in a meaningful and intuitive way. And most importantly, I gave a clear explanation of what the Buy and Sell rates mean. I would not be lying when I said that I still can't say what each of them means exactly without looking it up.
I also utilized the WebAPI and Forms packages of UiPath Studio to utilize the functionalities I mentioned above.
Challenges I ran into
Turns out all websites are different. Some load all items at the same time, and some don't. Some of them load some parts with a value that isn't the actual value you need, so you must tell your program to wait until the actual value loads up. This was honestly the most disappointing part for me because I really wanted the downtime the user has while waiting for data to be fetched to be as minimal as possible, but there was not much I could do except ensure the right data was fetched.
Another notable challenge I faced is the fact that CIBC bank did not have a website that displayed exchange information. So I wasn't able to add them to my program and compare the values with other banks.
I am fairly new to software engineering and namely documentation, so it was probably my first time trying to go through the documentation to create a project. I've learned invaluable research skills that I will always need though, so I'm thankful for that.
Accomplishments that I'm proud of
The app works!! Woohoo!
Jokes aside, I'm really happy that I made an application that is quite really useful, and especially, useful for me. I'm sure it can be quite useful for others who also go through this process but I'm happy that I'll just click a button and know which bank I'll go to today rather than opening 5-6 tabs and memorizing several values and comparing them in my head.
What I learned
UiPath Studio is amazing. It makes things quite easy once you learn how to use it. By drag-dropping items, you can do very powerful computing and data gathering. The idea that you can automate everything is truly awesome. I often found myself daydreaming about how I could have a multimillion-dollar company and be the only employee and automate everything from Accounting to Customer Service. A truly revolutionary idea.
What's next for Exchange Guardian
I might make this application for Android Studio, or make the application using UiPath Apps and publish it on a website that everyone could use to check exchange rates best for them.
Used Resources:
https://www.bankofcanada.ca/valet/docs#exchange_rss https://www.td.com/ca/en/personal-banking/solutions/exchange/currency-converter/#/fxcalculator https://online.royalbank.com/cgi-bin/tools/foreign-exchange-calculator/start.cgi https://www.scotiabank.com/ca/en/personal/rates-prices/foreign-exchange-rates.html https://www.bmo.com/home/personal/banking/rates/foreign-exchange https://www.nbc.ca/en/rates-and-analysis/interest-rates-and-returns/exchange-rates.html
Built With
- uipath
- valetapi


Log in or sign up for Devpost to join the conversation.