Part 7: Buy Cryptocurrency Specification
Today, we will talk about the process of buying cryptocurrency specification in detail.
Hi. Good morning guys.
This is your one stop channel to become a full stack blockchain engineer.
This is part 7 of the whole course on how to build a Crypto E-Wallet and Exchange System using Odoo.
As defined in the system features before, it should provide a functionality that enable customer to buy cryptocurrency from our exchanger company, and store it into his crypto wallet.
Later on, he can withdraw the cryptocurrency into other external blockchain addresses if he want to, or sell it back to our company, to gain profit or to cut loss.
Before continuing, please consider to like, share, and subscribe our channel if you find it useful, as we will update the topics of Building E-wallet Exchange system with Odoo regularly.
Ok, now let's talk about the specification details.
Buying cryptocurrency is essentially a process of transferring cryptocurrency from our company crypto wallet to the customer's crypto wallet.
But, this can be done only after the customer send us some amount of fiat money from his main wallet, into our company wallet. Of course, he must first deposit his main fiat wallet before doing so.
As depicted in the picture, the buy process is done by:
1.Calculating the amount of fiat wallet required to buy the cryptocurrency, or calculate the amount of cryptocurrency obtained by a certain amount if fiat money, by converting it using the current rate.
2. Check the main wallet availability.
3. Move fiat money from customer wallet to our company wallet.
4. Move cryptocurrency from our company crypto wallet to customer crypto wallet.
As we defined in the previous section, at the customer dashboard, he can see shortcut of all his favorite wallets and it's balances, as well as the list of crypto currency he is watching the price for.
To buy a cryptocurrency, customer must select the crypto wallet which he want to Buy, Sell, Send, and Receive.
The selected crypto wallet page will appear as follows:
The page shows the current total wallet balance and the transaction history.
To buy the cryptocurrency, he will click the Buy/Sell button.
A page to buy or sell cryptocurrency will appear.
On this page, customer can see the price chart of selected cryptocurrency on a certain period.
An information about the cryptocurrency is also displayed, where customer can read and analyse it before deciding to buy or sell.
Next, the buy price and the sell price is shown.
Customer will click the Buy button if he decided to buy the cryptocurrency at the current rate, or the Sell button, if he decided to sell.
If Buy button is clicked, then, a page buy the cryptocurrency is shown.
On this page, the current fiat wallet balance is shown, as well as the cryptocurrency buy price estimation.
Customer can manually enter the amount of cryptocurrency to buy in fiat currency, or select the percentage of current fiat wallet balance available. Our system will calculate the amount of cryptocurrency obtained with that amount of money.
Or, he can enter the amount of cryptocurrency to buy directly. Our system will then calculate the amount of fiat money required to by entered the cryptocurrency.
Click the Continue button to execute the buy process.
If the amount of cryptocurrency value in fiat money exceeded the main wallet balance, then a warning pop up message will appear, and the continue button will stay inactive.
Otherwise, the buy process is finally executed.
The backend system will move customer fiat wallet to our company wallet. So, his main wallet balance will be decreased.
Next, it will move our company cryptocurrency wallet to the customer cryptocurrency wallet for the amount bought. So, his cryptocurrency wallet will be increased for the amount.
Ok, those are the minimum feature specification for the customer cryptocurrency buying mechanism.
Please consider to like, share, and subscribing our channel if you find it useful, as we will update the topics of Building E-wallet Exchange system with Odoo regularly.
Thanks for watching.