FlashFi
  • ⚡ FlashFi
  • ⚒️Technical Deep Dive
    • 🔄 Swapping
    • Bridging
    • đź”—Staking
  • Privy Implementation
  • Contribution To Covalent Agent Kit
  • 🚀Future Plans
Powered by GitBook
On this page
  • Overview
  • Bridging Assets to Arbitrum
  • Approving USDC for Staking
  • Depositing USDC into Radiant Lending Pool
  • Transaction Execution
  • Why Use FlashFi for Staking?
  1. Technical Deep Dive

đź”—Staking

Overview

FlashFi enables cross-chain staking by bridging assets from Binance Smart Chain (BSC) to Arbitrum and depositing them into Radiant Capital's lending pool with minimal user steps.

How It Works

  1. Bridge USDT from BSC to Arbitrum – Swap assets across chains.

  2. Approve USDC for Staking – Authorize Radiant Capital to use USDC.

  3. Deposit into the Lending Pool – Earn yield by staking assets.


Bridging Assets to Arbitrum

USDT from Binance Smart Chain is swapped for USDC on Arbitrum.

tsCopyEditconst params = {
  fromAddress: signer.address,
  fromChain: "56", // Binance Smart Chain
  toChain: "42161", // Arbitrum
  fromToken: "0x55d398326f99059fF775485246999027B3197955", // USDT on BSC
  fromAmount: ethers.parseUnits(amount, 18).toString(),
  toToken: usdcArbitrumAddress,
  toAddress: signer.address,
};
const route = await getRoute(params);

Approving USDC for Staking

The contract approves Radiant Capital's lending pool to spend USDC.

tsCopyEditconst approvalData = erc20Interface.encodeFunctionData("approve", [
  radiantLendingPoolAddress,
  ethers.MaxUint256,
]);

Depositing USDC into Radiant Lending Pool

After approval, USDC is staked into Radiant Capital for yield generation.

tsCopyEditconst depositData = radiantLendingPoolInterface.encodeFunctionData("deposit", [
  usdcArbitrumAddress,
  "0",
  signer.address,
  0,
]);

Transaction Execution

The entire process is executed in a single transaction using Squid Router.

tsCopyEditconst tx = await signer.sendTransaction({
  to: route.transactionRequest.target,
  data: route.transactionRequest.data,
  value: route.transactionRequest.value,
  gasLimit: route.transactionRequest.gasLimit,
});
await tx.wait();

Why Use FlashFi for Staking?

✅ Cross-Chain Staking – Stake assets seamlessly across chains. ✅ Automated Approval & Deposit – Reduces manual steps. ✅ Radiant Capital Integration – Earn passive income.

PreviousBridgingNextPrivy Implementation

Last updated 3 months ago

⚒️