All Collections
How to deposit USDC or any ERC-20 token into your L2 Perpetual account?
How to deposit USDC or any ERC-20 token into your L2 Perpetual account?
Written by Gog
Updated this week

To start trading on dYdX, a user needs to connect their Ethereum wallet and deposit funds into their Perpetual account.

Users can deposit funds to their account by sending a Layer 1 Ethereum transaction through their wallet. Users will need ETH in their wallet to pay for gas fees to deposit funds.

Users can deposit either USDC, or an array of other assets, which are then converted to USDC via 0x API's on-chain liquidity.

  1. On the left hand panel, click "Connect Wallet", then click your preferred wallet.

2. For first time users on Layer 2, you will need to Generate a Stark Key. The Stark Key is a public key defined over a Stark-friendly elliptic curve that is different from the standard Ethereum elliptic curve. Users must first request to sign the linkage of an Ethereum key to a Stark Key and then register the Stark Key on dYdX’s smart contract before any other user operation can take place. Your Stark Key identifies your account on Layer 2 and is saved locally on your browser. Signing is free and will not send a transaction. You can recover your Stark Key at any time with your wallet. Click on “Generate Stark Key” and sign the transaction.

3. To create an account you will need to agree to dYdX’s Terms of Use and Privacy Policy, and certify that you are not a resident of the United States. You also have the option to submit a username and email address to receive updates from the dYdX team. Click on “Create account” and sign the transaction. Before proceeding, you will need to deposit funds into your wallet to continue onboarding.

4. At this point, to trade on Layer 2, you will need to register your account on-chain with the StarkEx smart contract. This is the final step before you have complete access to lightning fast trading on Layer 2. You will be asked to send a transaction for this step which consumes gas. You will only have to ever do this once per wallet address. Click “Register” and confirm the transaction.

5. At this point, you will need to deposit funds into your dYdX account. You must enable USDC the first time you deposit on dYdX. You will only have to do this once. In the left panel, click on “Deposit” and then “Enable USDC.” You must pay gas fees to confirm this transaction.

6. You then enter the amount of USDC you want to deposit to your dYdX account. Then press “Confirm Deposit.” You must pay gas fees to confirm this transaction.

7. After the deposit transaction is mined, 14 Ethereum network confirmations (usually about 3 minutes) are required for your funds to be available to trade. You will see the status of your deposit in a notification on the top right of the page.

Your account is now funded on Layer 2 and you can place your first trade.

Other Resources:

You can read more about our authors here.

Did this answer your question?