Defi Integrations

Learn how to swap tokens using Jupiter Exchange integration

Execute token swaps on Solana using Jupiter Exchange aggregation. Support for all SPL tokens with automatic SOL wrapping/unwrapping and slippage protection.

Copy

// Swap SOL for USDC
const signature = await agent.methods.trade(
  new PublicKey("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"), // USDC
  1, // 1 SOL
);

// Swap USDC for SOL with custom slippage
const signature = await agent.methods.trade(
  new PublicKey("So11111111111111111111111111111111111111112"), // SOL
  100, // 100 USDC
  new PublicKey("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"), // USDC
  100 // 1% slippage
);

Parameter
Type
Required
Description

outputMint

PublicKey

Yes

Target token mint address

inputAmount

number

Yes

Amount to swap

inputMint

PublicKey

No

Source token mint (defaults to SOL)

slippageBps

number

No

Slippage tolerance in basis points (default: 300)

Copy

Copy

Copy

  • Uses Jupiter Exchange for best prices

  • Automatic SOL wrapping/unwrapping

  • Dynamic compute unit limits

  • Auto-calculated priority fees

  • Optional referral integration

  • Direct route optimization

Copy

  1. Slippage Management

    • Use appropriate slippage for token

    • Consider market volatility

    • Monitor price impact

    • Handle failed transactions

  2. Amount Calculation

    • Account for token decimals

    • Check minimum amounts

    • Consider fees

    • Verify available balance

  3. Error Handling

    • Implement retries

    • Monitor transaction status

    • Handle timeouts

    • Verify swap results

  4. Performance

    • Use direct routes when possible

    • Set appropriate compute limits

    • Monitor network conditions

    • Consider priority fees

  • SOL: So11111111111111111111111111111111111111112

  • USDC: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v

  • USDT: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB

  • BONK: DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263

  • jitoSOL: J1toso1uCk3RLmjorhTtrVwY9HJ7X8V9yYac6Y7kGCPn

Copy

  • getBalance: Check token balances

  • fetchPrice: Get token prices

  • getTokenData: Get token information

  • transfer: Transfer tokens

Last updated