Is this possible that we make a real world transaction (buying goods/services for money) decentralised using Ethereum to avoid trust issues?

Example: let's take an example of virtual currency exchange, someone is selling Bitcoins, and I want to buy, we agreed on terms and price, now he asked me to transfer money to his/her bank account. I have a fear what will happen if I move money and he is not transferring Bitcoins?

Can we avoid this situation? Using a smart contract which can hold a real money and only transfer to the seller if can verify transaction on the blockchain, If not send me back.

I know Escrow contracts can do same but that will hold Ethers and value of Ether can go up and down, so there is a possibility I don't get the same amount back.

1 Answer 1


Applications like the one you have mentioned that need to interact with off-chain assets need to delegate that trust over to an Oracle - a piece of code that works outside the blockchain while listening to events on a contract. This code can hold the money in for example a PayPal wallet and make sure the funds are transferred to the vendor once bitcoins are deposited to owner's wallet.

You can see more details about how Oracles are used and how multiple oracles help avoid single trust issues here. https://medium.com/@mustwin/building-an-oracle-for-an-ethereum-contract-6096d3e39551

  • 1
    To add to that, no matter how you exchange or convert value, volatility will always be an issue so long as the value of one asset is not directly pegged to the value of the other. The only way to mitigate volatility overtime is to minimize the amount of time that funds are held via escrow or smart contracts
    – user9402
    Commented Jun 8, 2017 at 17:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.