Phantom Connect
Overview
Phantom Connect provides developers with flexible authentication options to integrate Phantom wallets into their applications. Users can connect to your app using either Social Login providers (Google, Apple) or their existing Phantom browser extension, creating a seamless embedded wallet experience.Connect Flow (Social Login)
When users choose to connect using Social Login providers (Google or Apple), they will be redirected toconnect.phantom.com to complete the authentication process.
How it works
- Authentication: Users sign in with their Google or Apple account
- Account Selection: Users with existing Phantom accounts can select which wallet they want to connect to your app
- Permissions: Users review and approve permission requests and spending limit policies for your application
- Connection Complete: Once approved, users are redirected back to your app with their embedded wallet connected
Permissions and Spending Limits
During the connect flow, users will be presented with:- Permission screens: Users can review what actions your app is requesting access to
- Spending limit policies: Users can set maximum amounts your app is allowed to spend on their behalf

Learn more about how spending limits work and their impact on transaction handling in the Spending Limits documentation.
Login with Phantom Extension
For users who already have the Phantom browser extension installed, you can offer a streamlined connection experience that leverages their existing wallet.How it works
- Extension Detection: Your app detects the user’s Phantom extension
- Authorization Request: A prompt appears in the extension asking the user to approve the connection
- One-Time Approval: After the initial authorization, the embedded wallet is connected
- Seamless Experience: Like the Social Login connect flow, users maintain control through permission screens and spending policies
Benefits
- Faster onboarding: Users with existing Phantom wallets can connect instantly
- Familiar interface: Users authenticate through their trusted Phantom extension
- Same security controls: Permission screens and spending limit policies still apply
Account Selection Behavior
The account selection experience differs between the Connect flow and Extension login, depending on the user’s wallet configuration.Connect Flow (Social Login)
In the Connect flow, users have full control over which account they want to connect to your app:- Multiple accounts: Users can choose from any of their existing accounts
Extension Login
The Extension login flow uses a streamlined approach that automatically connects with the first account:- No selection screen: Users are not presented with an account picker during this flow
- Consistent authentication: The authentication factor is always derived from the first account
How it works with different account types
Users with only Seed Phrase accounts:- The first account derived from their seed phrase is used for authentication. Note that the wallet address will be different than the Seed Phrase account they have imported into the extension.
- The first account is used for authentication
- The first account is always the Social Login account and is used for authentication
- This ensures consistent behavior across all wallet configurations
Disconnecting from Your App
Users maintain full control over their wallet connections and can disconnect from your app at any time.How to disconnect
- Open the Phantom wallet (extension or mobile app)
- Navigate to Settings → Connected Apps
- Find your app in the list
- Select Revoke permissions or Disconnect
Session Management
Session Duration
- Active session: 7 days from the last login
- Re-authentication: After 7 days, users will need to log in again to continue using your app
Related Resources
- Spending Limits - Understanding spending limit policies and transaction constraints
- Choosing your wallet
- React SDK
- Browser SDK
- Server SDK
- React Native SDK
- Withdraw funds from your embedded Wallet
For implementation details and code examples, refer to the SDK documentation relevant to your platform.