A Joel Lee's ʕ•ᴥ•ʔ Blog

HowToCrypto: Making an Exchange on UniSwap

Intended Audience: Anyone who has an existing social media account. You’ll need the social media account so that you can obtain Ether on the test network in order to perform a transaction

I don’t understand how Blockchain and cryptocurrencies work and I’d like to find out more.

After a dinner conversation with a senior, I was pointed to a list of tasks which would help provide a better understanding of the Cryptocurrency Ecosystem as a whole. I figured that the community might want to do the same so I decided that I’d document each step in a series of How To Guides so that others can follow along. Over the next few posts, I’ll attempt to provide a series of easy to follow instructions to guide you through each task.

Here’s the list of tasks courtesy of Cedric:

  1. How to buy an ETH domain name
  2. How to do a transaction on Uniswap(This thread).
  3. How to get some Synthetix and farm them on layer two
  4. How to do an ETH transaction on an Optimistic rollup sidechain. I have no idea what an optimistic rollup sidechain is but we’ll figure that out.
  5. How to mint an NFT on OpenSea
  6. TBD!

Note that 5. links to an article on OpenSea. I was originally planning on writing an overview but I later realised that Open sea already has a comprehensive tutorial so I decided to just link to that.

In this post, we’ll be using Uniswap to convert Testnet Ether to Uniswap tokens. Before we begin, do note that we’ll be using Uniswap v3. One reason for doing so is that v3 gives a clear indication of the difference between spot price and execution price. At time of writing, it is still possible to make a transaction on Uniswap v2 just that there might not be such an indication(I’ve not tested this so I’m not sure).

Do also note that you should keep a small amount of ETH on top of the amount that you are converting so that you can pay for gas fees. We will explain what gas fees are shortly.


  1. First, we’ll need an Ethereum wallet to store the test Ether so let us set up a wallet. We’ll be using Metamask for this demonstration so head over to the chrome web store to install the Metamask chrome extension.

Metamask Chrome Extension

  1. Obtain some TestNet Ether. The TestNet simulates the main network and allows the community to run tests in a Sandboxed environment. For this demo, we’ll be using the Rinkby network. So head over to a faucet to get some TestNet Ether. You’ll need to make a tweet similar to this one to validate that you’re not a malicious attacker.

Rinkeby Authenticated Faucet

  1. Okay, now we’re ready to make a transaction. Let’s head on over to the Uniswap application. We’ll do a swap of 2 ETH to UNI at the going rate(1 UNI= 0.7279ETH).

Swapping between ETH and Uniswap

  1. Confirm the swap. Note that there’s a Liquidity provider fee and a difference between execution price and spot price.

Details of Swap between ETH and UNI

  1. Let’s hit confirm and wait for the transaction to proceed

Confirmation of Swap

  1. A pop up within Metamask will show up, highlighting the details of the transaction. Do note that there is a gas fee– we’ll break down what that is in the section below.

Swap details on Metamask

Let’s head over and validate that our transaction went through on EtherScan. You might note that the gas price is listed in Gwei. A Gwei is a unit used to denote 0.000000001(that’s nine zeros) of an ether

Transaction Validation

Voila! You have just completed a transaction on UniSwap. Thanks for staying with me.

Here are some questions you might have after going through the series of instructions:

  1. What is Uniswap(in detail)?

    Uniswap is an Automated Market Maker. It is a tool which allows for digital assets to be traded without a broker to mediate the deal. For further details about Automated Market Makers(AMMs) I suggest you check out Haseeb’s post on AMMs .

  2. What are Gas fees and why do I need to pay them

    I think CryptoZombies has a great explanation and I see no point in reinventing the wheel. Here’s their explanation:

Ethereum is like a big, slow, but extremely secure computer. When you execute a function, every single node on the network needs to run that same function to verify its output — thousands of nodes verifying every function execution is what makes Ethereum decentralized, and its data immutable and censorship-resistant.

The creators of Ethereum wanted to make sure someone couldn’t clog up the network with an infinite loop, or hog all the network resources with really intensive computations. So they made it so transactions aren’t free, and users have to pay for computation time as well as storage.

That’s all for now! Drop me a mail at joel[at]joellee[dot]org if you’d like to discuss.