Withdraw ERC20

Withdraw ERC20 from Loopring L2 to Ethereum L1

Withdrawing an ERC20 token will move it from the Loopring Layer2 environment to Ethereum Layer1.

circle-info

Trade value should with decimals sdk.toBig(value).times("1e" + TOKEN_INFO.tokenMap.LRC.decimals)

chevron-rightStep 1: GetAccounthashtag
const {accInfo} = await LoopringAPI.exchangeAPI.getAccount({
  owner: LOOPRING_EXPORTED_ACCOUNT.address,
});
console.log("accInfo:", accInfo);
chevron-rightStep 2: Get eddsaKeyhashtag
const eddsaKey = await signatureKeyPairMock(accInfo);
console.log("eddsaKey:", eddsaKey.sk);
chevron-rightStep 3: Get apiKeyhashtag
const {apiKey} = await LoopringAPI.userAPI.getUserApiKey({
    accountId: accInfo.accountId,
  },
  eddsaKey.sk
);
console.log("apiKey:", apiKey);
chevron-rightStep 4: Get storageIdhashtag
const storageId = await LoopringAPI.userAPI.getNextStorageId({
    accountId: accInfo.accountId,
    sellTokenId: TOKEN_INFO.tokenMap["LRC"].tokenId,
  },
  apiKey
);
console.log("storageId:", storageId);
chevron-rightStep 5: Get feehashtag
const fee = await LoopringAPI.userAPI.getOffchainFeeAmt({
    accountId: accInfo.accountId,
    requestType: sdk.OffchainFeeReqType.OFFCHAIN_WITHDRAWAL,
    tokenSymbol: TOKEN_INFO.tokenMap["LRC"].symbol,
  },
  apiKey
);
console.log("fee:", fee);
chevron-rightStep 6: Withdrawhashtag

Last updated