Phantom Wallet SDKs

Phantom offers multiple SDK options to integrate wallet functionality into your applications. Each SDK is designed for specific use cases and environments:

SDK Comparison

Server SDK

For custodial server-side wallets
  • Use case: Backend applications where the server controls all transactions and costs
  • Target: Server-side applications, APIs
  • Control: Full custodial control over wallets and transactions
  • Security: Server-managed private keys
  • Package: @phantom/server-sdk
  • Documentation: Server SDK Guide

React SDK

For non-custodial client wallets in React applications
  • Use case: React web applications with direct wallet integration
  • Target: React frontend applications
  • Control: User controls their own wallet
  • Security: IndexedDB with non-extractable crypto keys
  • Package: @phantom/react-sdk
  • Documentation: React SDK Guide

Browser SDK

For non-custodial client wallets in vanilla JavaScript
  • Use case: Web applications without framework dependencies
  • Target: Vanilla JavaScript/TypeScript browsers
  • Control: User controls their own wallet
  • Security: IndexedDB with non-extractable crypto keys
  • Package: @phantom/browser-sdk
  • Documentation: Browser SDK Guide

React Native SDK

For non-custodial mobile wallets
  • Use case: Mobile applications built with React Native
  • Target: iOS and Android mobile apps
  • Control: User controls their own wallet
  • Security: Secure storage on device
  • Package: @phantom/react-native-sdk
  • Documentation: React Native SDK Guide

Choosing the Right SDK

Server-Side Applications

If you’re building a backend service or need full control over wallets and transactions, use the Server SDK. This is ideal for:
  • Backend APIs
  • Custodial wallet services
  • Automated transaction processing
  • Server-side signing

Client-Side Applications

If you’re building a frontend application where users control their own wallets, choose based on your platform:
  • React applications: Use React SDK for hooks-based integration
  • Vanilla JavaScript: Use Browser SDK for framework-agnostic integration
  • Mobile apps: Use React Native SDK for iOS/Android applications

Security Models

  • Trusted Execution Environments (TEEs) for secure operations
  • Hardware Security Modules (HSMs) for key encryption
  • Multi-layer encryption with threshold cryptography
  • Cryptographically signed audit trails
  • Organization-based access control with configurable policies