One of the ground breaking results of advanced technology is the development of Smart Contracts through the blockchain. The Smart contract is a computer protocol that enables people to carry out contracts without relying on a third party. The terms of agreement of the two parties involved are being written into lines of codes. Then the computer protocol enforces and verifies the negotiation of the terms. And due to the nature of the blockchain, all Smart contracts are track able and irreversible. Smart contracts ensure that both parties meet their terms of agreement before executing the proceeds of a contract.
This simple yet effective technological breakthrough is applicable in a range of situations. A typical example is someone who wants to buy a house. He needs to get an agent involved to handle the documentation and legal paper works for the desired property at a certain fee. At the end of the contract, the agent walks away with his commission from the seller and service fees from the buyer.
With Smart contract, the buyer can transact directly with the seller, eliminating the third party agent and entrusting the Smart contract to ensure the terms of agreement of both parties are been met before the contract is being processed. Once negotiation is complete, the escrow provided by the Smart contract then delivers the house documents to the buyer and releases the money for the house to the seller.
A more technical and interesting application of the Smart contract is in the project by BlockCAT Technologies, Tabby Pay. Tabby Pay is a decentralized application that is built as a Smart contract on the Ethereum blockchain to help eliminate user error when sending ETH payments.
One of the notable features of the blockchain is its irreversibility. No processed transaction can be reversed, as this may have it's advantages, it is also has it's disadvantages. People loose money everyday as a result of committing errors when transferring funds to other wallet addresses. Most times the wallets owners who receive the funds can't be reached for a refund and the transaction cannot be reversed. This situation is terrible enough that it can completely crumble a users finances, that one time error might be all it takes.
However, Tabby Pay is a smart contract that is built to prevent user error. If a user sends Ether to the wrong wallet, he can cancel the payment and the Ether will be returned. Tabby pay is available as a web interface that can be accessed by the P.C.
How Tabby Pay Works
- The senders payment is routed through the smart contract, it contains information about the recipients data. The payment is restricted to only the data contained within the contract.
- After the payment has been sent, the sender notifies the recipient who then goes to the site to claim it.
- The contract verifies the recipient and the funds sent are finally released. If the recipient fails to claim the funds or fails the smart contract verification, then the funds will be sent back.
- Finally if a user sends funds to the wrong wallet, the intended recipient won't be able to claim the funds and the transaction can be cancelled.
How To Use
The Tabby.io has a very friendly user interface. It is easy to use and quite straight forward. [Make sure you have Metamask plugin. It is available on Chrome browser]
- Firstly you need to own an ETH wallet.
- Next thing is to visit Tabbypay.io
- Scroll down to the bottom of the page and click on the New Payment button.
The page pops up a window requesting how the user will like to connect with the ETH wallet illustrated in the image below.
There are three options available, Browser Wallet, which offers log on option through Metamask extension (Google chrome) and parity.. There is also the hardware wallet and external wallets like My Ether Wallet MEW. For me, I used Metamask which is available in the first option, and it was very simple. After I clicked choose, a series of dialogue box followed each other beginning from Welcome as illustrated in the image below.
After the "Lets begin" button is clicked, the following message boxes are shown as below.
Clicking on "next" leads to the final part where the user is asked to re select the option to connect to the ETH wallet.
After clicking the option I wanted, Metamask automatically popped up and requested for my password which I supplied and the next window was loaded as shown in the image below.
This is my account's control panel. It also shows my wallet information such as my ETH balance.
From this control panel, I can carry out all the necessary operation. It shows the option for the currency I wish to send and the intended recipients address space for me to fill. After the necessary details have been entered and I click send, the funds get sent as I wait for the recipient to acknowledge the notification of the sent funds through the Tabby pay site . After the recipient acknowledges the notification, the funds get deposited in their wallet. If I'm on the receiving end, the arrow in red points at the payments notification panel, where a message will show incoming funds.
Remarks(Pros and Cons) and Recommendation
I like the idea of Smart contracts. More so, I love that it's been applied to such an important operation like sending of funds. Tabby Pay motto says "Never send Ether to the wrong wallet", and it does just that. Tabby Pay works on only ETH wallet, that's like an aberration to the entire cryptosphere. It should accommodate a lot more cryptocurrency as it is all round useful. Tabby pay has a profile strength of 91% according to the State of Dapps, and it is also the only decentralized application with this service yet. I rate the Tabby pay dapp a 5 star, and I hope the dev team can expand the service to cover other cryptocurrency as well.
I hope with this review you've been able to grasp what Smart contract is and how it is being applied to secure users funds. Will you like to use it?
Thanks for reading.
All images are from my usage of the platform, others are duly specified.
Github link for Tabby Pay