Overview
Magic provides wallet infrastructure with two integration paths:- Embedded Wallets: Client-side Magic SDK handles authentication and signing. Keys are managed by Magic and signing happens through their RPC provider.
- Server Wallets: Backend-managed wallets via Magic Express API. Keys live in Magic’s TEE (Trusted Execution Environment) and signing happens through server-side API calls.
Integration
- Embedded Wallet
- Server Wallet
Prerequisites
- A Magic account and publishable API key
- Rhinestone API key
- React application setup
Authenticate and Get Wallet Address
Use Magic’s client-side SDK for authentication:Magic also supports SMS, social login, WebAuthn, and more. See Magic’s authentication overview for all options.
Cross-Chain Transactions
Once initialized, both wallet types use the same Rhinestone API:Next Steps
- See it in action: Check out our complete Magic example for a full working app
- Learn more about Magic’s wallet types
- Explore chain abstraction capabilities
- Check out creating an account for more details