GoFundMeme
  • GoFundMeme - Launch the next viral meme
  • FAQs
  • Getting Started
    • Referral Program
    • Reward System
    • Point System
    • Fees
  • GoFundMeme
    • Launch a Memecoin
      • Bonding Curve
        • Intro
      • Fair Launch
        • Tokenomics
        • Target Target
        • Boosters & Vesting
    • Harvest (LP LOCK)
      • How it works
      • Harvesting LP Fees
      • Claim Rewards
    • GFM Protocol
    • Defi x Memecoins
    • Staking
    • KYC Gating
    • SocialFi
      • Community Bubbles
  • Developers
    • GFM for Builders
    • Installation Guide
    • Init gfmSDK
    • GFM Methods
      • Bonding Curve
        • Pool Interaction
        • Pool Staking Network
      • Fair Launch
        • Pool Interaction
    • APIs
      • Create Pools
    • WebSockets
      • Subscriptions
Powered by GitBook
On this page
  • 🔥 Staking in the Bonding Curve Pool
  • 🎯 Fetching Staker Profile
  • ⛓️ Staking Tokens
  • 🔓 Unstaking Tokens
  • 🎁 Claiming Staking Rewards
  1. Developers
  2. GFM Methods
  3. Bonding Curve

Pool Staking Network

🔥 Staking in the Bonding Curve Pool

For graduated Bonding Curve Pools, LP fees are distributed through the pool’s staking network.

🎯 Fetching Staker Profile

Check your staking balance, claimed rewards, and available rewards.

const stakerAccountData =
  await bondingCurvePool.actions.staking.fetchStakerAccount({
    staker: payer.publicKey,
  });

console.log("Staker Account Data:", JSON.stringify(stakerAccountData));

📌 Example Response:

{
  "staked": 95108188.8443,
  "stakingTimestamp": "2025-02-21T09:46:03.000Z",
  "claimed": {
    "tokenA": 0.153621963,
    "tokenB": 8530868.3904
  },
  "available": {
    "tokenA": 0.004289379,
    "tokenB": 154977.2035
  }
}

⛓️ Staking Tokens

Stake tokens into the Bonding Curve Pool’s Staking Network to earn rewards.

const stakeTokensTransaction = await bondingCurvePool.actions.staking.stake({
  staker: payer.publicKey,
  amountUI: 112325.1425, // Staking 112,325.1425 tokens
});

const stakeTokensTxid = await sendAndConfirmTransaction(
  connection,
  stakeTokensTransaction,
  [payer]
);

console.log(
  `⛓️ Successfully staked tokens in the pool's Staking Network! TXID: ${stakeTokensTxid}`
);

🔓 Unstaking Tokens

Unstake your Bonding Curve Pool tokens partially or fully.

const unstakeTokensTransaction =
  await bondingCurvePool.actions.staking.unstake({
    staker: payer.publicKey,
    amountUI: 112325.1425 / 2, // Unstaking 50% of staked tokens
  });

const unstakeTokensTxid = await sendAndConfirmTransaction(
  connection,
  unstakeTokensTransaction,
  [payer]
);

console.log(
  `🔓 Successfully unstaked tokens from the pool's Staking Network! TXID: ${unstakeTokensTxid}`
);

🎁 Claiming Staking Rewards

Claim your LP rewards from the staking network.

const claimRewardsTransaction =
  await bondingCurvePool.actions.staking.claimRewards({
    staker: payer.publicKey,
  });

const claimRewardsTxid = await sendAndConfirmTransaction(
  connection,
  claimRewardsTransaction,
  [payer]
);

console.log(
  `🎁 Successfully claimed staking rewards! TXID: ${claimRewardsTxid}`
);
PreviousPool InteractionNextFair Launch

Last updated 2 months ago