VAP-001 - Create Asset - USD Coin ($USDC)

Title

VAP-001 - Create Asset - USD Coin ($USDC)

Summary

This proposal requests to list USD Coin ($USDC) as a settlement asset on the Vega Network.

Rationale

  • USDC is the second largest stablecoin in the DeFi ecosystem and is widely used across major DeFi protocols.
  • The Name, Symbol & Decimals are all driven by the values of the ERC20 contract so will not be discussed here.
  • Given USDC has 6 decimals and 1 USDC = 1 USD, its conversion to quantum decimals is 1000000
  • The withdrawal delay is set to 1 to act as a buffer in case of a bridge exploit.
  • The lifetime limit is set to $10,000 USD (equivalent) which would be sufficient for alpha mainnet given the high leverage.

New Asset/Update Details:

  • Name = USD Coin
  • Asset symbol = USDC
  • Decimals = 6
  • Quantum = 1000000
  • ERC20 Contract Address = 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
  • Withdrawal delay threshold = 1
  • Lifetime deposit limit = 10000000000 (i.e, $10,000 USD)

Full Proposal JSON:

{
  "rationale": {
    "title": "VAP-001 - Create Asset - USD Coin ($USDC)",
    "description": "## Summary\n\nProposal to add USD Coin ($USDC) as a settlement asset as discussed in: https://community.vega.xyz/t/vap-001-create-asset-usd-coin-usdc/4238.\n\n## Rationale\n\n- USDC is the second largest stablecoin in the DeFi ecosystem and is widely used across major DeFi protocols.\n- Given USDC has 6 decimals and 1 USDC = 1 USD, its conversion to quantum decimals is 1000000\n- The withdrawal delay is set to 1 to act as a buffer in case of a bridge exploit.\n- The lifetime limit is set to $10,000 USD (equivalent) which would be sufficient for alpha mainnet given the high leverage."
  },
  "terms": {
    "newAsset": {
      "changes": {
        "name": "USD Coin",
        "symbol": "USDC",
        "decimals": "6",
        "quantum": "1000000",
        "erc20": {
          "contractAddress": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
          "withdrawThreshold": "1",
          "lifetimeLimit": "10000000000"
        }
      }
    },
    "closingTimestamp": 1684170000,
    "enactmentTimestamp": 1684195200,
    "validationTimestamp": 1684160000
  }
}
2 Likes

Hi @Jubi, congratulations on putting together the first asset proposals! It looks like your “contractAddress” in the JSON itself isn’t matching with the one in the text description above. The code will obviously only use what’s in the JSON so you’ll want to make sure those two match to the contract you’re wanting to suggest :+1:

3 Likes

An additional thing is that validationTimestamp needs to be before closingTimestamp @Jubi

Thanks @Tom and @daunjuan, apologies for the error.

Should be fixed now!

3 Likes

No need to apologize :slight_smile:

In case you want the proposal to be easier to read you could format it a bit differently
"description": "## Summary\n\nProposal to add USD Coin ($USDC) as a settlement asset as discussed in: https://community.vega.xyz/t/vap-001-create-asset-usd-coin-usdc/4238.\n\n## Rationale\n\n- USDC is the second largest stablecoin in the DeFi ecosystem and is widely used across major DeFi protocols.\n- Given USDC has 6 decimals and 1 USDC = 1 USD, its conversion to quantum decimals is 1000000\n- The withdrawal delay is set to $1,000 which still provides some freedom for withdrawals but is also small enough to act as a buffer in case of a bridge exploit.\n- The lifetime limit is set to $10,000 USD (equivalent) which would be sufficient for alpha mainnet given the high leverage."

For safety in case of the bridge export that you referred to, using 1 to trigger a 24 hr delay would be a safer route to go during alpha mainnet.

Technically this proposal does look to be correct.

2 Likes

voting is live: Vega Governance dApp

1 Like

:boom:

Let’s check what’s submitted:

:boom:

Let’s get voting, the clock is ticking.

3 Likes