Hedgey Community Docs
  • โœŒ๏ธThis is Hedgey.
  • Products
    • ๐Ÿช™Vesting Plans
      • Getting Started
        • โœ…Note for Issuers
        • ๐Ÿ‘ฉโ€๐Ÿ’ผFor Issuers
        • ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆFor Token Vesting recipients
        • โœ”๏ธDelegating your tokens
    • ๐Ÿ’ฐToken Grants
      • Getting Started
      • ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆFor Grant Recipients
      • ๐Ÿ‘จโ€๐Ÿ’ผFor Grant Issuers
    • ๐Ÿ›๏ธInvestor Lockups
      • Getting Started
        • โœ…Note for Issuers
        • ๐Ÿคตโ€โ™€๏ธFor Issuers
        • ๐Ÿ‘ฏFor Investors who have received locked token allocations via Hedgey
      • Special Features
        • Segmenting Plans
        • โœ”๏ธDelegating your tokens
      • Creating Investor Lockups using Fireblocks (+troubleshooting)
    • ๐Ÿ”Treasury Lockups
      • Getting Started
      • Creating Treasury Lockups
    • ๐Ÿช‚Token Claims
      • ๐Ÿ‡Getting started
        • Using token claims on Farcaster
        • ๐ŸŽFor Claims Issuers
        • ๐Ÿ•ต๏ธโ€โ™‚๏ธCreating a test claim to verify wallet addresses
        • ๐ŸŽ‰For Claims Recipients (unlocked & locked claims)
    • ๐Ÿ•—Time Locks
      • ๐Ÿ‡Getting started
        • โฐCreating Time Locks
  • ๐ŸงฐSupport docs
    • ๐Ÿ”ตGrants (Arbitrum STIP)
      • Getting Started
      • For STIP Grant Recipients
      • For Arbitrum Grant Issuers
    • ๐Ÿ”ตGrants (Arbitrum LTIPP)
      • Getting Started
      • For LTIPP Grant Recipients
      • For Arbitrum Grant Issuers
    • ๐ŸŸฃGrants (Polygon Village)
      • Getting Started
      • For Grant Recipients
      • For Polygon Village Grant Issuers
    • ๐Ÿ”ตLocking your team tokens and LP tokens on Hedgey using Hedgey Treasury Locks (for ShimmerSea)
      • Getting Started
      • Creating a Treasury Lockup
    • ๐ŸŸ (Celo Specific) Connecting with Celo Terminal
    • โœ…(Celo Specific) using Hedgey through Valora
    • ๐ŸคฉGovernance
      • โšกHedgey <> Snapshot strategy
    • ๐Ÿ‘ฝOn-Chain Governance
    • ๐Ÿ”บUsing Hedgey app with Fireblocks
    • โš’๏ธTroubleshooting
    • ๐Ÿ’ปAdding Hedgey Apps as "custom" Safe apps
    • ๐ŸชฑFor Wormhole investors who have received lockups on Hedgey
    • โค๏ธโ€๐Ÿ”ฅCreating Investor Lockups using FireBlocks (+troubleshooting)
    • ๐ŸกViewing your Puffer lockup
  • FOR DEVELOPERS
    • โŒšTechnical Documentation
      • ๐Ÿ’พToken Vesting
        • Smart Contract Details
        • Integration & Direct Contract Interactions
      • ๐Ÿ“ผToken Lockups
        • Smart Contract Details
        • Integration & Direct Contract Interactions
      • โ˜Ž๏ธDelegation Architecture
        • Delegator Architecture
        • Voting Vaults & On-Chain Delegation
        • ERC721Delegate
      • ๐ŸฅณToken Claims
        • Smart Contract Information
      • ๐Ÿ“€V1 Contracts
        • Hedgeys NFT
          • Technical Details
        • DAO <> DAO Swap
        • Error Codes
    • ๐ŸAudits
    • ๐Ÿ“ŽBug Bounty
    • Deployments
      • Token Vesting Plans
      • Voting Token Vesting Plans
      • Vesting + Lockup Plans
      • Token Lockup Plans
      • Voting Token Lockup Plans
      • Bound Token Lockup Plans
      • Bound Voting Token Lockup Plans
      • Batch Planner Contract
      • Token Claims (ClaimCampaigns)
      • V1 Streaming Contracts
      • V1 Stream Vesting Contracts
      • Hedgeys
  • Contact HEDGEY
    • Social Media
    • Press and Media kit
  • LEGAL
    • Protocol Disclaimer
    • Terms of Use
    • Hedgey Pro Terms of Use
Powered by GitBook
On this page
  1. FOR DEVELOPERS
  2. Technical Documentation

Token Vesting

This Section covers smart contracts related to Vesting

PreviousTechnical DocumentationNextSmart Contract Details

Last updated 1 year ago

Overview:

The Token Vesting Contracts allow on-chain teams to distribute tokens to their employees, contributors, grant recipients, and other beneficiaries, with a time based vesting schedule where tokens that are unvested may be revoked and the schedule cancelled at anytime prior to completion. This tool can be used for any ERC20 payment, whether token or stable coin compensation, with the primary goal being a periodic or streaming based payment schedule that can be cancelled and revoked.

The contract has two main users, the Plan Admin (and generally the creator) and the Beneficiary. The Admin has control over cancelling/revoking the plan, which returns tokens back to the Admin address, and the Beneficiary can claim vested tokens from the escrow contract. The jobs that the contract manages are the vesting over time of the tokens, making them redeemable by the Beneficiary, allowing the Beneficiary to participate in governance with unvested tokens, and allowing the Admin to revoke and cancel a plan.

The escrow contract is built on top of the ERC721 standard, with additional features, whereby the beneficiary has an NFT issued to their wallet address that is the owner of the vesting plan. The tokens are stored in the ERC721 escrow contract, and then when an NFT is minted and issued to a beneficiary, the details of that plan are created and stored in storage, including all of the necessary details to claim tokens, revoke tokens and delegation functions.

Vesting plans are not transferable, except in special case where the Vesting Admin can transfer a plan on behalf of the beneficiary. This means that the NFT are 'soul bound' at the contract level, with the caveat of the special OBO transferability.

Beneficiaries may claim vested tokens anytime, tokens do not automatically stream into their wallet, however, they do have to initiate a token claim / redemption each time. Beneficiaries can also delegate the unvested (and vested but unclaimed) tokens locked inside their NFT to themselves or any other address so as to participate in on-chain and/or offchain (snapshot) governance. The contracts support on-chain governance for Governor Bravo / Alpha natively, as well as dedicated snapshot strategies to make adding governance rights simple for users. Once a beneficiary has redeemed 100% of the vesting tokens, the NFT is burned.

Vesting Admins can revoke plans at any time before they are fully vested. Revoking a plan will return any unvested tokens back to the vesting admin, but will not burn the NFT if there are unclaimed but vested tokens still left for the beneficiary to claim, whereupon they may claim manually on their own schedule. Vesting Admins can revoke the plans as of the current block time, or they can revoke with a future date - in case there is an agreement to vest tokens through an agreed upon future time (like letting someone go at the end of the week and vesting their tokens through EOD Friday).

โŒš
๐Ÿ’พ