Skip to content

Fintech Finder. Module 19. App that enables customers to calculate and send cryptocurrency payments to fintech professionals

License

Notifications You must be signed in to change notification settings

nataliaburrey/Paying_Salary_With_Crypto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fintech Finder

Screen Shot 2021-08-02 at 12 48 01 PM

📌 Challenge 19

"In this Challenge, I assumed the role of blockchain lead developer, working for a fintech startup. My goal is to integrate the Ethereum blockchain network into Fintech Finder application in order to enable customers to instantly pay the fintech professionals whom they hire with cryptocurrency. "

Table of content

Overview of the project

In this Challenge, I was task to complete the code that enables customers to send cryptocurrency payments to fintech professionals. To develop the code and test it out, we assume the perspective of a Fintech Finder customer who is using the application to find a fintech professional and pay them for their work.

To complete this Challenge, I am using two Python files:

  1. fintech_finder.py contains the code associated with the web interface of the application. The code included in this file is compatible with the Streamlit library.

  2. crypto_wallet.py contains the Ethereum transaction functions. By using import statements, I integrate the crypto_wallet.py Python script into the Fintech Finder interface program that is found in the fintech_finder.py file.

Integrating these two files allow the user to automate the tasks associated with generating a digital wallet, accessing Ethereum account balances, and signing and sending transactions via Ethereum’s Kovan testnet.

Project goals

  1. Generate a new Ethereum account instance by using your mnemonic seed phrase (which you created earlier in the module).

  2. Fetch and display the account balance associated with your Ethereum account address.

  3. Calculate the total value of an Ethereum transaction, including the gas estimate, that pays a Fintech Finder candidate for their work.

  4. Digitally sign a transaction that pays a Fintech Finder candidate, and send this transaction to the Kovan testnet.

  5. Review the transaction hash code associated with the validated blockchain transaction.

  6. Once you receive the transaction’s hash code, you will navigate to Kovan’s Etherscan (Links to an external site.) website to review the blockchain transaction details

Project steps

The steps for this Challenge are divided into the following sections:

Step 1: Import Ethereum Transaction Functions into the Fintech Finder Application

Import generate_account, get_balance, and send_transaction from the crypto_wallet.py file.

Screen Shot 2021-08-04 at 4 03 03 PM

Call the generate_account function and store the account object.

Screen Shot 2021-08-04 at 4 03 48 PM

Call the get_balance function and pass it the Ethereum account.address.

Screen Shot 2021-08-04 at 4 05 12 PM

Step 2: Sign and Execute a Payment Transaction

Calculate the transaction’s total wage.

Screen Shot 2021-08-04 at 4 08 53 PM

Call the send_transaction function and pass it the account, candidate_address, and wage parameters.

Screen Shot 2021-08-04 at 4 07 07 PM

Return the transaction hash from the send_transaction and display it on the application’s web interface.

Screen Shot 2021-08-04 at 4 23 43 PM

Step 3: Inspect the Transaction on Etherscan

Send a transaction using the Fintech Finder app
Screen.Recording.2021-08-03.at.6.47.11.PM.mov
Use the returned transaction hash to verify the transaction on Etherscan.

Screen Shot 2021-08-04 at 3 59 28 PM

Include a screenshot of the provided transaction details.

Screen Shot 2021-08-04 at 4 14 36 PM

Provide screenshots from Etherscan that show the sender’s address balance and history, and the recipient's address balance and history.
        ##### Sender

Screen Shot 2021-08-04 at 4 20 53 PM

        ##### Recipient

Screen Shot 2021-08-04 at 4 17 51 PM

Software version control

Libraries

Following libraries were imported
  • crypto_wallet.py

Screen Shot 2021-08-02 at 1 05 59 PM

  • fintech_finder.py
# Import the required libraries and dependencies


import streamlit as st
from dataclasses import dataclass
from typing import Any, List

  • Streamlit- is an open-source app framework for Machine Learning and Data Science teams.
  • Dataclasses-a utility tool to make structured classes specially for storing data. These classes hold certain properties and functions to deal specifically with the data and its representation.
  • Typing-provides runtime support for type hints. The most fundamental support consists of the types Any, Union, Tuple, Callable, TypeVar, and Generic.

Work with GitHub

  • Repository created on GitHub
  • Files were committed using command line
  • Our repository is organized, and includes Resources folder with CSV project files,
  • Jupyter Notebook with code runs without errors.
  • Answers on nesassary questions are included

How to install

  • Save remote repo from GitHub to your computer (Desktop): in Terninal type:
cd desktop

git clone https://github.com/nataliaburrey/Paying_Salary_With_Crypto.git

now you can find the repo Paying_Salary_With_Crypto on your desktop

Run streamlit

  1. In the terminal, navigate to the repository folder

  2. In the terminal, run the Streamlit application by running the command

streamlit run fintech_finder.py

Helps recruiters

The project was created in collaboration with Berkeley Fintech Bootcamp team

License

MIT

📔 Contact me: 📩 nataliaburrey@gmail.com

About

Fintech Finder. Module 19. App that enables customers to calculate and send cryptocurrency payments to fintech professionals

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages