DocsWallet Integration

Wallet Integration

Learn how to authenticate using Phantom, Backpack, Solflare, or OKX Wallet.

Wolvo uses non-custodial wallet authentication exclusively. This means you retain full control of your private keys while accessing the platform through cryptographic signatures.

Security First: Wolvo never requests your private keys or seed phrase. Authentication happens through message signing only.

Supported Wallets

Most popular Solana wallet with browser extension and mobile app.

Feature-rich wallet with xNFT support and cross-chain capabilities.

Non-custodial wallet with hardware wallet support.

Multi-chain wallet with DeFi integration.

Connection Flow

The wallet connection process follows these steps:

1

Detection

Wolvo detects installed wallet extensions in your browser.

2

Selection

User selects their preferred wallet from the connect modal.

3

Approval

Wallet prompts user to approve the connection request.

4

Signature

User signs a message to prove wallet ownership (no transaction).

5

Session

Wolvo creates a session linked to the wallet public key.

Code Example
import { WolvoClient } from '@wolvo/sdk'

const client = new WolvoClient()

// Connect with auto-detection
const wallet = await client.connect()

// Or specify a wallet
const wallet = await client.connect('phantom')

// Check connection status
if (client.isConnected()) {
  console.log('Wallet:', client.getWallet().publicKey.toString())
}

// Disconnect
await client.disconnect()

Session Management

Sessions are managed securely with the following features:

Auto-refresh

Sessions refresh automatically before expiration.

Persistence

Sessions persist across page reloads (optional).

Multi-tab sync

Session state syncs across browser tabs.

Secure storage

Session tokens stored in httpOnly cookies.

Session Options
const client = new WolvoClient({
  session: {
    persist: true,           // Keep session across reloads
    autoRefresh: true,       // Auto-refresh before expiry
    expiresIn: '24h',        // Session duration
    onExpire: () => {
      console.log('Session expired')
    }
  }
})

Multi-wallet Support

Wolvo supports connecting multiple wallets for advanced use cases like team management:

Multi-wallet Example
// Get all connected wallets
const wallets = client.getConnectedWallets()

// Switch active wallet
await client.setActiveWallet(wallets[1].publicKey)

// Add additional wallet
await client.addWallet('backpack')

// Remove wallet
await client.removeWallet(publicKey)