The Complete Beginner’s Guide to Performing your First IOST Cross-Chain Stablecoin Swap

The wait is over — IOST iStablecoin is now live on Mainnet!

Official Rate3
Official Rate3
9 min readApr 2, 2019

--

Rate3 iStablecoin is a cross-chain Swap service that allows for an asset the Ethereum blockchain to be transported onto the IOST blockchain and vice versa.

We will initially be supporting TUSD and USDC, with more stablecoins (and other assets) to be added on in future.

Update 30th Apr: We’ve added USDT support to iStablecoin as well!

Dapps built on IOST can now benefit from using stablecoins as price-stable mediums of exchange, leveraging on the deep liquidity (based on market cap) already in place for these pre-existing stablecoin projects.

Why is This Significant?

Though it’s still early days, we expect to see loads of adoption of the various IOST Dapps among users going forwards. This would ultimately benefit the adoption of iStablecoin as well as RTE. A low-fee, high throughput blockchain like IOST is very conducive for decentralized, censorship-resistant gaming Dapps for users to make bets against one another. To illustrate this potential, TRONbet recently recorded US$ 41 million dollars in betting volumes just recently.

In fact, within the span of 24 hours from launching on 20th March, the IOST mainnet gambling application Endless Dice managed to surge to second place among all other live Dapp based on 24H volume

https://dapp.review/explore as at 21st March 2019

We foresee Dapps like Endless Games being prime candidates to drive iStablecoin demand as the number of players and amount involved in bets made increase. This in turn will result in more swap transactions, which will increase the demand for RTE, owing to it allowing for discounted fees going forwards.

Early Bird Beta Launch

We’ll be making iterative improvements to the web interface based on user feedback (please do send them via our Rate3 social channels). As today’s launch is still in beta, Do take note of the following:

  • Most Dapps and wallets are right now still taking a measured approach to launching on IOST as it’s a new blockchain. Therefore, expect to see a more gradual uptake in terms of adoption and usage channels for IOST iStablecoin over time
  • There might be some minor user experience kinks along the way which we’ll refine based on feedback :)
  • All swap fees are currently waived during this beta trial phase (to encourage adoption) until further notice¹.
  • During this beta launch period, all swaps between both blockchains will be processed once every 24 hours daily at UTC 0400 between Monday to Friday until further notice². We’ve adopted Bitmex’s ‘security-first’ approach to handling withdrawals in this regard.

Eager to be one of the pioneering users of IOST? Follow these steps below to begin your journey now! (Alternatively, exchange support to buy ITUSD and IUSDC directly will be coming soon too.)

Step 1: Get an IOST account & install the IOST browser extension on Chrome

There are several ways to create an IOST account. For a web-based experience on your desktop, you can create an account (for free) through IOSTABC block explorer (fun fact — they are a fellow IOST partner node):

Make sure you snag your own unique “human-readable” account name before its too late! Take note of your private keys generated within the blue box above. You will need it to import your account into other wallets.

After successfully creating an IOST account, you will need to install a browser-extension based wallet to easily interact with other IOST Dapps (i.e. an experience similar to that of MetaMask).

You can install the IOST iWallet extension for Chrome, before importing your existing IOST private keys over via the following steps:

Click on the iWallet extension logo
a) Set a password for logging into your IOST wallet on this web device before clicking on “Import Account”; b) Enter your private key information to finish importing your IOST account into iWallet

For a mobile-based wallet experience, users have the option of creating free IOST accounts via mobile wallets like Huobi Wallet and TokenPocket:

You can then similarly import the IOST account name and private key details created via these mobile wallet apps into your iWallet browser extension as well.

Step 2: Visit the following link to access the iStablecoin web application

https://istablecoin.io/

Step 3: Connect your MetaMask and iWallet browser extension wallets to the iStablecoin web application

Make sure you have the MetaMask and iWallet browser extension wallets installed and logged into by this stage. You will be prompted to do so if you’re not:

A MetaMask login prompt will appear upon a user entering the home page

Connecting MetaMask

After landing on the website, click on “Connect” when prompted:

Click on “Connect” when this prompt appears.

Connecting iWallet

Additionally, you will be prompted to login to your iWallet account as well before you can navigate further to the other pages (e.g. Proof-of-Assets, Dashboard, Swap Token).

Click on the iWallet browser extension logo and this will bring about a login screen for you to sign in and pair your iWallet with the iStablecoin web application.

Once you’re signed in, you’ve successfully paired your iWallet with the application!

[Note: If you had just imported an IOST account (i.e. from Step 1), your iWallet would already be connected by default (unless you have since then uninstalled or logged out of it).]

You can confirm so by verifying that the Ethereum and IOST account details at the top of the web page are indeed yours.

Step 4: Perform your swap

Clicking on “Swap Token” will bring you to the following interface which will let you swap your stablecoins back-and-forth between Ethereum and IOST:

Click on “Swap Token” to get to this swap interface page

Before proceeding, ensure you have a sufficient stablecoin balance

Ensure that you have a sufficient amount of TUSD (or USDC) on balance inside your connected MetaMask account to successfully perform your swap. This can be checked through the following two ways:

  1. Via the iStablecoin Web Interface

In this screenshot, the interface displays next to the drop-down arrow that the user currently has 50 TUSD (ERC20 stablecoin) available on hand to swap.

2. Via MetaMask

You can also add TUSD and USDC as a “Custom Token” in order to view your balances within MetaMask.

The “Token Contract Address” details that are to be inputted for TUSD and USDC respectively are as follows:

TUSD: 0x0000000000085d4780B73119b644AE5ecd22b376

USDC: 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48

Performing your swap

With sufficient TUSD on balance, you can now input the parameters for your swap into the interface, before clicking “Next”.

Input your desired swap parameters into the field before clicking “Next”.
  • Click on the bidirectional arrows to select the direction of the swap which you wish to make
  • Click on the drop-down arrow to choose the stablecoin which you wish to perform the swap with
  • Input the amount of ERC20 stablecoin which you wish to swap onto IOST and click on “Next”

Signing your swap transactions

You will now need to sign two transactions that will be prompted by Metamask³. Also, some users may encounter a common “nonce too low” error from slightly older versions of MetaMask; please refer to the footnotes for troubleshooting instructions⁴.

The first transaction signing is an “Allowance Permission” meant to give permission to the SwapContract()smart contract to facilitate transactions of your TUSD stablecoin token. In this case, the user has given permission for the smart contract to obtain up to 50 TUSD from him/her.

After that, a second MetaMask prompt will appear. This second transaction signing signifies the user allowing the SwapContract()smart contract to finally transfer the 50 TUSD from the user to the SwapContract()smart contract, as seen in the screenshot below:

Once the above is done, it would signify the completion of the “Ethereum leg” of the swap transaction!

The user can then click on “View Swap Status” in order to see the details of the transaction on Etherscan.

Click on “View Swap Status” to obtain further details on Etherscan about your swap transaction.

Step 5: Receive your ITUSD iStablecoin for use

And that’s it! If everything is in order, your swap request will be approved. You will receive your ITUSD token in your IOST wallet, and also be able to view the transaction occurrence on the IOSTABC block explorer:

Where can I use my iStablecoin?

You can begin leveraging on IOST’s low-fee and high throughput blockchain to transact in a stable medium of exchange with other users for purchases or Dapp transactions!

Your iStablecoin (i.e. ITUSD, IUSDC etc.) will be supported for use over time via the following IOST ecosystem partner wallets and Dapps:

Wallets

These include IOST partners such as Huobi Wallet, Trust Wallet, Cobo Wallet, Secrypto, TokenPocket, Monarch Wallet, Magnum Wallet and more!

Clockwise from top left: Huobi Wallet, Trust Wallet, Secrypto Wallet, Cobo Wallet

Gaming Dapps

Watch out for future integrations between iStablecoin and a whole range of IOST Dapps, such as CryptoNinja, Liar Game, Snake, RealmX, and Endless Game (gambling Dapps)!

Clockwise from top left: World War Endless (strategy), CryptoNinja (RPG & collectibles), Endless Game (gambling), IOST Joy (blockchain-based Snake)

Footnotes

[1] In order to pay for operational costs, a small 5 basis points fee will in future be levied on swaps made from IOST back to Ethereum, with discount incentives incorporating RTE usage.

[2] During this beta phase, we will be vetting every swap transaction that comes in prior to approval. This will eventually evolve into an automated process once this beta phase is over.

[3] It is a common standard practice for all Ethereum Dapps to require users to sign two transactions before actual usage of the Dapp. To understand in detail why it is necessary, you can read about it in more detail over at https://tokenallowance.io/

[4] Users encountering the “nonce too low” error can either a) sign out and then sign back in into MetaMask, before then switching the connected network from “Mainnet” to “Testnet”, and then back to “Mainnet” again, OR b) uninstall and reinstall the latest version of MetaMask again.

What exactly happened when I was making a swap?

When swapping your ERC20 stablecoins onto the IOST blockchain, these ERC20 tokens are actually first being moved into the SwapContract()smart contract — which functions as an escrow. Only upon the completion of this step will IOST-based stablecoins be minted for the user.

Details of the various contract and cold storage addresses can be found on our Proof-of-Assets page.

When a user makes a request to convert their IOST-based stablecoin back into ERC20 form, she will receive the ERC20 token in their connected Ethereum wallet address, with the IOST-based stablecoin token being burnt.

You can also read more about why we started this service in an earlier blog post:

About Rate3

Rate3 is a decentralised dual protocol for cross-chain asset tokenization and identity management. The Rate3 Tokenization Protocol is an end-to-end protocol for tokenization on both Ethereum and Stellar, while the Rate3 Identity Protocol is a protocol to create and manage a unified cross-chain identity.

Website: https://rate3.network

Twitter: https://twitter.com/officialrate3

Telegram: https://t.me/officialrate3

--

--