Skip to main content

Create a Lock

Overview

This guide explains how to use PinkLock, Pinksale's audited tool for locking tokens or Liquidity Pool (LP) tokens. You can create simple time locks or set up vesting schedules for gradual release. This is commonly used for team tokens, marketing allocations, or locking liquidity to build investor trust. After reading this, you will understand:

  • The purpose of PinkLock and its audit status.
  • How to create a simple time lock (Method 1).
  • How to create a lock with vesting (Method 2).
  • The specific parameters required for each method, using original descriptions where preferred.
  • The crucial step of excluding the PinkLock address from fees for taxed tokens.
  • How locking information can be used to display tokenomics on your presale page.

Note: You can use PinkLock to generate lock information that helps populate the tokenomic chart displayed on your Pinksale presale/fair launch page.

Note: PinkLock has been audited by CertiK and potentially other firms. View the CertiK audit here: https://skynet.certik.com/projects/pinksale

PinkLock Interface Overview

Method 1: Create a Lock Without Vesting (Simple Time Lock)

Use this method to lock a specific amount of tokens until a set date and time.

  1. Connect Wallet: Ensure your wallet is connected to Pinksale on the correct network.

  2. Navigate: From the Pinksale homepage, click "PinkLock" => "Create Lock", or go directly to: https://pinksale.finance/pinklock/create

  3. Token Address: Input the contract address of the token or LP token you want to lock.

  4. Owner: By default, the connected wallet is the owner. Check "use another owner" and input a different wallet address if you want someone else to be able to withdraw the tokens after the lock expires.

  5. Title: Give this lock a descriptive title (e.g., "Team Tokens Lock", "Marketing Wallet Lock").

  6. Amount: Enter the total number of tokens to lock. (Enter a number, not a percentage).

  7. Lock until (UTC time): Select the exact date and time (in UTC) when the tokens will become unlockable.

    PinkLock - Simple Lock Configuration

  8. Approve: Click the "Approve" button. Confirm the transaction in your wallet (e.g., MetaMask) and pay the gas fee. This allows PinkLock to handle the specified token amount.

    PinkLock - Approve Button

  9. Lock: After approval, click the "Lock" button. Confirm the final transaction in your wallet and pay the gas fee to create the time lock.

Important Note (Both Methods): * If the token you are locking has transfer fees, rewards, or max transaction limits, you must exclude the PinkLock lockup address 0x5E5b9bE5fd939c578ABE5800a90C566eeEbA44a5 from these features in the token's contract before clicking "Lock". Failure to do so will likely cause the lock transaction to fail.

Method 2: Create a Lock Using Vesting

Use this method to lock tokens and release them gradually over time based on a schedule.

  1. Connect Wallet: Ensure your wallet is connected to Pinksale on the correct network.

  2. Navigate: From the Pinksale homepage, click "PinkLock" => "Create Lock", or go directly to: https://pinksale.finance/pinklock/create

  3. Token Address: Input the contract address of the token you want to vest.

  4. Owner: By default, the connected wallet is the owner. Check "use another owner" and input a different wallet address if you want someone else to be able to claim the vested tokens.

  5. Title: Give this lock a descriptive title (e.g., "Advisor Vesting Schedule").

  6. Amount: Enter the total number of tokens to be included in this vesting schedule.

  7. Enable Vesting: Place a check in the check box "use vesting".

  8. Configure Vesting Parameters: Below are some important parameters:

    • TGE Date: Should be the listing time.
    • TGE (percent): The percentage of the first batch of team tokens to be released. Please note that this is expressed in percentage, not number of tokens.
    • Cycle (days): How long, in days, between each batch of vested tokens is released.
    • Cycle Release (percent): How many tokens will be released each cycle following the First Token Release batch. Please note this is expressed in percentage, not in number of tokens. And the rest percent will release in the last cycle.

    PinkLock - Vesting Configuration

  9. Approve: Click on "Approve". MetaMask will now ask you to confirm the transaction. It will also show you the fee that you are required to pay for that transaction. If you agree, then click on the “Confirm” button to finish the "Approve" process.

    PinkLock - Approve Button \\(Vesting\\)

  10. Lock: Click on "Lock". MetaMask will now ask you to confirm the transaction. It will also show you the fee that you are required to pay for that transaction. If you agree, then click on the “Confirm” button to finish the "Lock" process.

Important Notes (Vesting): * As mentioned above, exclude the PinkLock address 0x5E...A44a5 from fees/rewards/limits in your token contract before locking if applicable. * Team Vesting doesn't support rebase tokens.

Q&A (FAQs)

  • Q1: What's the difference between locking Tokens and LP Tokens?
    • A: Locking Tokens refers to locking your project's own native token (like team or marketing allocation). Locking LP Tokens refers to locking the Liquidity Pool tokens you receive after adding liquidity on a DEX; this proves liquidity is locked and cannot be removed ("rugged") for the specified duration. Both use the same PinkLock interface.
  • Q2: Why is excluding the PinkLock address from fees important?
    • A: When you click "Lock", the tokens are transferred to the PinkLock contract (0x5E...A44a5). If your token taxes this transfer, the lock contract receives fewer tokens than intended, causing issues with unlocking the correct amount later. Excluding the address ensures the full amount is locked without tax.
  • Q3: Can I unlock tokens before the set time or vesting date?
    • A: No. The core purpose of PinkLock is to enforce the lock duration or vesting schedule immutably on the blockchain. Tokens can only be withdrawn by the designated owner after the lock expires or the vesting period arrives.
  • Q4: What happens after the simple lock duration ends?
    • A: The designated owner can go to the PinkLock page, find the specific lock entry, and click an "Unlock" or "Withdraw" button to claim the full amount of locked tokens back to their wallet.
  • Q5: How does claiming work for vested tokens?
    • A: Similar to the simple lock, the designated owner visits the PinkLock page. When the TGE date or a cycle end date passes, an "Unlock" button appears for that specific vesting lock, allowing the owner to claim the portion of tokens that became available during that period. Unclaimed amounts accumulate. (Refer to the Team Vesting guide for more details on claiming).

Troubleshooting

  • Q: My "Approve" or "Lock" transaction fails.
    • A: Ensure you have enough native currency (BNB, ETH, etc.) for gas fees. Crucially, check if the token being locked has fees/rewards/limits and if you have correctly excluded the PinkLock address (0x5E...A44a5) in the token contract BEFORE attempting to lock. Confirm you are using the wallet that holds the tokens you intend to lock.
  • Q: I made a mistake in the lock duration or vesting schedule after clicking "Lock". Can I change it?
    • A: No. Once a lock is confirmed on the blockchain via the "Lock" transaction, the parameters (duration, vesting schedule, amount, owner) are generally permanent and cannot be modified. Plan carefully beforehand.
  • Q: I can't find my lock on the PinkLock page after creating it.
    • A: First, ensure you are connected with the correct wallet (usually the one that created the lock or the designated owner wallet) and are on the correct blockchain network. Check the transaction hash on the block explorer to confirm the lock transaction was successful. Then, navigate within Pinksale: go to the PinkLock section, select the correct tab for what you locked (e.g., "Token" or "Liquidity"), and then click on the "My Locks" tab. Your successfully created locks associated with the connected wallet should appear there. Try refreshing the page if needed.