SAI, DAI and AdEx: Everything you need to know

Posted by AdEx Network on December 17th, 2019

Insights

In November 2019, the MakerDAO enabled multi-collateral DAI (MCD). It also introduced new terminology and names to its stable coins. What was previously known as DAI was renamed to Single-Collateral Dai (SAI). The SAI protocol is expected to shut down after a grace period of at least a few months, but for the time being both stablecoins exist.

NB! For clarity, when we refer to DAI from now on, we mean the new DAI, or MCD.

Right now, the AdEx protocol and platform utilize SAI. We have not conducted a migration to DAI for a few reasons:

  • We are waiting for MCD to prove and establish itself;
  • In addition to this, we are waiting for the majority of the SAI supply to be migrated to DAI; you can check the progress here.
  • There are UX issues that will affect your AdEx experience, and we are looking into solving these;
  • One of our partners, Ramp Network, has not migrated yet either, and such a migration would be crucial for a FIAT bridge (right now we use Ramp to allow topping up AdEx accounts in GBP).
  • We are evaluating stablecoin alternatives to SAI/DAI.

The most important thing here is that we plan to migrate along with an update that would enable more stablecoins in AdEx. Read on for more details on this.

The migration and AdEx

What you need to know right now is that AdEx runs on SAI - so this is the currency you need to send to your identity wallet. Depositing DAI to the platform means that they will not be immediately spendable.

In addition to this, right now DAI means a different thing across wallets/dapps/exchanges - it is all very confusing, we know. This is why we recommend that you double-check before withdrawing ad earnings from AdEx to ensure you end up with the right currency in the right wallet/eхchange.

Going stablecoin-agnostic

We believe that enabling AdEx to support multiple stablecoins is the right way to go both in terms of user experience, and of business strategy. It will make us more flexible and better prepared for unpredictable situations involving a particular stable cryptocurrency.

We are committed to using DAI because it has a very diverse ecosystem, including Ramp Network, which we use to enable topping up your account with GBP.

However, for a lot of our users, other stablecoins such as USDC and USDT are easier to obtain.

Usability is one of our top priorities, so in 2020 one of our goals will be to enable the ability to deposit USDC/USDT.

Under the hood, i.e. the complex technical details

Under the hood, AdEx uses an Identity contract for each account. This is sometimes called a "smart wallet", as it enables many advantages such as paying Ethereum transaction fees in DAI rather than ETH, so the user will only ever care about a single monetary unit.

The advantage we care about here, however, is the ability to do multiple things in one on-chain transaction. For example, opening an AdEx campaign requires opening an OUTPACE channel, which requires a call to an ERC20 approve function before that. In a normal system, this would mean the user has to sign two transactions. In our case, the user only needs to sign one.

Why is this important? Because we can migrate SAI to DAI "automagically" by including a call to swapSaiToDai (a function in the official Maker migration contract) before each spend (withdraw, campaign open) user action.

Let us give you an example: Say you have 20 SAI earned from previous campaigns and 10 DAI that you deposited into your AdEx account. You have 30 DAI to spend. When you decide to spend it, the 20 SAI will be auto-swapped as part of the campaign open transaction. You will need to sign only one transaction.

But this mechanism can go beyond this! If we had an on-chain way to swap USDC/USDT to DAI, you will be able to simply withdraw one of these tokens, and spend it normally.

This is what we're aiming to do in 2020, and more details will follow in subsequent blog posts.


Interested in AdEx? Follow us:

Website | Discord | Facebook | Twitter | Reddit | GitHub