GoPlus SafeToken Locker
GoPlus SafeToken Locker provides flexible lock-up periods, rewards collection, and broad compatibility with major DEX platforms to protect investor interests and ensure project commitment.
Token Locker
Supported Chains and Contract Addresses
Chain | Locker Address |
---|---|
Ethereum | 0xF17A08A7d41F53B24AD07Eb322CBBdA2ebdeC04b |
BNB Chain | 0xF17A08A7d41F53B24AD07Eb322CBBdA2ebdeC04b |
Base | 0xF17A08A7d41F53B24AD07Eb322CBBdA2ebdeC04b |
Arbitrum | 0xF17A08A7d41F53B24AD07Eb322CBBdA2ebdeC04b |
Morph | 0xF17A08A7d41F53B24AD07Eb322CBBdA2ebdeC04b |
Manta | 0xF17A08A7d41F53B24AD07Eb322CBBdA2ebdeC04b |
Gravity | 0xF17A08A7d41F53B24AD07Eb322CBBdA2ebdeC04b |
Abstract | 0x10674043e2445d89b77858E637b5e9070412D95e |
UniV3LPLocker
Supported Chains and Contract Addresses
Chain | Locker Address |
---|---|
Ethereum | 0x25c9C4B56E820e0DEA438b145284F02D9Ca9Bd52 |
BNB Chain | 0x25c9C4B56E820e0DEA438b145284F02D9Ca9Bd52 |
Base | 0x25c9C4B56E820e0DEA438b145284F02D9Ca9Bd52 |
Arbitrum | 0x25c9C4B56E820e0DEA438b145284F02D9Ca9Bd52 |
Morph | 0x25c9C4B56E820e0DEA438b145284F02D9Ca9Bd52 |
Manta | 0x25c9C4B56E820e0DEA438b145284F02D9Ca9Bd52 |
Gravity | 0xCb07c2fcd64c71cDb7f77a880662435f5F790b77 |
Abstract | 0xf7709322F11e86B7433271496bFD2D7A369AF3ff |
For usage
Token Locker
TokenLocker supports locking both standard tokens and LP tokens.
Fee Structures
TokenLocker supports three fee structures, charged during lock and update operations:
Ethereum Locker
Name | Token Type | LP Fee | Lock Fee |
---|---|---|---|
TOKEN | token | 0 | 0.08 ETH |
LP_DEFAULT | lp-token | 0 | 0.08 ETH |
LP_ONLY | lp-token | 0.6% | 0 ETH |
LP_AND_ETH | lp-token | 0.3% | 0.04 ETH |
BNB Chain Locker
Name | Token Type | LP Fee | Lock Fee |
---|---|---|---|
TOKEN | token | 0 | 0.12 BNB |
LP_DEFAULT | lp-token | 0 | 0.12 BNB |
LP_ONLY | lp-token | 0.5% | 0 BNB |
LP_AND_ETH | lp-token | 0.25% | 0.06 BNB |
Base & Morph & Abstract Locker
Name | Token Type | LP Fee | Lock Fee |
---|---|---|---|
TOKEN | token | 0 | 0.02 ETH |
LP_DEFAULT | lp-token | 0 | 0.02 ETH |
LP_ONLY | lp-token | 0.6% | 0 ETH |
LP_AND_ETH | lp-token | 0.3% | 0.01 ETH |
Arbitrum Locker
Name | Token Type | LP Fee | Lock Fee |
---|---|---|---|
TOKEN | token | 0 | 0.04 ETH |
LP_DEFAULT | lp-token | 0 | 0.04 ETH |
LP_ONLY | lp-token | 0.6% | 0 ETH |
LP_AND_ETH | lp-token | 0.3% | 0.02 ETH |
Gravity Locker
Name | Token Type | LP Fee | Lock Fee |
---|---|---|---|
TOKEN | token | 0 | 1000 G |
LP_DEFAULT | lp-token | 0 | 1000 G |
LP_ONLY | lp-token | 0.6% | 0 G |
LP_AND_ETH | lp-token | 0.3% | 500 G |
UniV3LPLocker
UniV3LPLocker is specifically designed for locking Uniswap V3 LP tokens.
Fee Structures
Name | LP Fee | Collect Fee | Lock Fee |
---|---|---|---|
DEFAULT | 0.4% | 1.6% | 0 ETH |
LVP | 0.64% | 0.8% | 0 ETH |
LLP | 0.24% | 2.8% | 0 ETH |
We are excited to announce that a web version of our SafeToken Locker will be launching soon, providing a user-friendly interface for direct usage. Stay tuned for more details, which will be released shortly.
For data integration
There are two methods to integrate and query data from the SafeToken Locker:
Direct On-Chain Query
To query data directly from the blockchain, you can use the following contract functions:
TokenLocker
Lock token or uniswap v2 lp token
function lock(
address token_,
string memory feeName_,
address owner_,
uint256 amount_,
uint256 endTime_
) external payable override nonReentrant returns (uint256 lockId);
Query Lock Information
function locks(
uint256 lockId
) external view returns (LockInfo memory info);
Query User Locks
function getUserNormalLocks(
address user
) external view returns (uint256\[] memory lockIds);
function getUserLpLocks(
address user
) external view returns (uint256\[] memory lockIds);
Query Token Locks
function getTokenLocks(
address token
) external view returns (uint256\[] memory lockIds);
Query Cumulative Lock Info
function cumulativeInfos(
address token
) external view returns (CumulativeLockInfo memory info);
UniV3LPLocker
Lock uniswap v3 lp
function lock(
INonfungiblePositionManager nftManager_,
uint256 nftId_,
address owner_,
address collector_,
uint256 endTime_,
string memory feeName_
) external payable returns (uint256 lockId);
Query Lock Information
function locks(
uint256 lockId
) external view returns (LockInfo memory info);
Query User Locks
function getUserLocks(
address user
) external view returns(uint256[] memory lockIds);
GoPlus API Query
For easier integration, you can use API to query lock data directly.
TokenLocker
UniV3LPLocker
If you have any questions regarding access, please contact [email protected]