Configuration
Configuration options and settings for @tetherto/wdk-wallet-solana
Wallet Configuration
The WalletManagerSolana accepts an optional configuration object that defines how the wallet interacts with the Solana blockchain:
import WalletManagerSolana from '@tetherto/wdk-wallet-solana'
const config = {
rpcUrl: 'https://api.mainnet-beta.solana.com', // Solana RPC endpoint
wsUrl: 'wss://api.mainnet-beta.solana.com/', // Optional: WebSocket endpoint
transferMaxFee: 10000000 // Optional: Maximum fee in lamports
}
const wallet = new WalletManagerSolana(seedPhrase, config)Account Configuration
import { WalletAccountSolana } from '@tetherto/wdk-wallet-solana'
const accountConfig = {
rpcUrl: 'https://api.mainnet-beta.solana.com',
wsUrl: 'wss://api.mainnet-beta.solana.com/', // Optional
transferMaxFee: 10000000 // Optional: Maximum fee in lamports
}
const account = new WalletAccountSolana(seedPhrase, "0'/0/0", accountConfig)Configuration Options
rpcUrl
The rpcUrl option specifies the Solana RPC endpoint for blockchain interactions.
Type: string (optional)
Default: If not provided, wallet functionality that requires RPC will throw an error
Examples:
// Mainnet
const config = {
rpcUrl: 'https://api.mainnet-beta.solana.com'
}
// Devnet
const config = {
rpcUrl: 'https://api.devnet.solana.com'
}
// Custom RPC
const config = {
rpcUrl: 'https://your-custom-rpc-endpoint.com'
}wsUrl
The wsUrl option specifies a custom WebSocket endpoint for real-time subscriptions and confirmations.
Type: string (optional)
Default: If not provided, the WebSocket URL will be automatically derived from the rpcUrl
Example:
const config = {
rpcUrl: 'https://api.mainnet-beta.solana.com',
wsUrl: 'wss://api.mainnet-beta.solana.com/' // Custom WebSocket endpoint
}transferMaxFee
The transferMaxFee option sets the maximum allowed fee (in lamports) for transfer operations. This helps prevent unexpectedly high transaction fees.
Type: number (optional)
Unit: Lamports (1 SOL = 1,000,000,000 lamports)
Example:
const config = {
transferMaxFee: 10000000 // 0.01 SOL in lamports
}Complete Configuration Example
import WalletManagerSolana from '@tetherto/wdk-wallet-solana'
const config = {
// Required for most operations
rpcUrl: 'https://api.mainnet-beta.solana.com',
// Optional: Custom WebSocket endpoint
wsUrl: 'wss://api.mainnet-beta.solana.com/',
// Optional: Fee protection
transferMaxFee: 10000000 // 0.01 SOL maximum fee
}
const wallet = new WalletManagerSolana(seedPhrase, config)Network Endpoints
Mainnet
RPC:
https://api.mainnet-beta.solana.comWebSocket:
wss://api.mainnet-beta.solana.com/
Devnet
RPC:
https://api.devnet.solana.comWebSocket:
wss://api.devnet.solana.com/
Testnet
RPC:
https://api.testnet.solana.comWebSocket:
wss://api.testnet.solana.com/
Security Considerations
Always use HTTPS URLs for RPC endpoints
Set appropriate
transferMaxFeelimits for your use caseConsider using environment variables for configuration in production
Use trusted RPC providers or run your own Solana validator for production applications
</tbody>
