Deposit
Once assets are deposited into a user’s DeGate account, they become available for placing orders and transactions. As illustrated in the figure below, the user initiates a deposit transaction on-chain. After the transaction is included in a block and confirmed after 12 blocks, the DeGate node will credit the deposited amount into the user’s DeGate account balance, so that the user can immediately use these assets. Meanwhile, the Operator will initiate an off-chain transaction to confirm the deposit. The transaction goes through several phases, including block inclusion, block production, proof generation, and updating assets in the Merkle tree, before being rolled up on chain, thereby completing the deposit.

Deposit Process
Advanced deposit refers to the deposit process achieved by calling the DeGate smart contract method. All assets can be deposited in this way, with no special limit on the deposited amount.
To reduce costs for users, DeGate also offers a standard deposit option where users can directly transfer their assets to the DeGate contract address to complete the deposit. However, the standard deposit method does not guarantee complete trustlessness and users must trust that the DeGate node will accurately credit their assets into their account balance. Therefore, the node operator imposes limits on the amount of funds that can be deposited and supported tokens using the standard deposit method to reduce potential losses suffered by users.
Comparison | Advanced Deposit | Standard Deposit |
---|---|---|
Gas usage of user initated deposit transaction 1 | ETH: ~110141
ERC20: ~132605 | ETH: ~21055
ERC20: ~60000 |
Credit Duration | After the deposit transaction received 12 block confirmations | After the deposit transaction received 12 block confirmations |
Applicable Asset | All | Selected assets based on the configuration of node operator. |
Trustless | DeGate smart contract will verify the deposit address and asset amount. If the deposit is not processed after a period of time, users can call a smart contract function to retrieve their asset | DeGate smart contract can only verify the asset amount and is unable to verify the deposit address. Technically, it is possible for the DeGate node to amend the deposit address. If the deposit is not processed, users cannot retrieve it on their own and they will have to contact the node operator to return the tokens. |
Restrictions | None | There is a deposit amount limit per deposit and there is also a limit on the amount for all pending deposits. |
Note: The gas consumption here represents the average value obtained from our testing results. The actual gas consumption for depositing ERC20 tokens is related to the contract implementation method, and could exceed the reference value in the table.
1
Typically, the DeGate node subsidizes the L1 Gas fees for confirming deposit requests, and users only need to bear the cost of initiating the deposit transaction. However, to prevent exploitation of the mechanism, a cap is placed on the number of free deposits. With each deposit, the number of free deposits will decrease. However, this number will recover linearly over time. The parameters for advanced and standard deposits differ. Once the number of free deposits is exhausted, users must pay to have their deposits credited to their account.
The paid deposit logic for advanced deposit is controlled by the DeGate smart contract. If the number of free deposits has been exhausted when a user calls the contract, they will need to add an extra 0.01 ETH to the transaction (this parameter is set by the node operator). Otherwise the deposit transaction will fail.
The paid deposit logic for standard deposit is controlled by the DeGate node. The difference is that the the DeGate node will only check the number of free deposits when confirming the deposit transaction. If the number of free deposits has been exhausted, users must pay a certain amount of ETH fees (this parameter is set by the node operator) to complete the deposit. Users can locate the deposit record in the "Assets Record” section and click “Paid Deposit" to complete the operation.
Last modified 11d ago