Wallet Integration with Engram
Connecting your DERO wallet to Engram allows you to interact with decentralized applications that require blockchain transactions. This guide explains the integration process and available options.
Understanding XSWD Protocol
Engram uses the XSWD (Cross-Site WebSocket DERO) protocol for secure wallet communication:
Learn About XSWD: This guide uses the XSWD protocol for wallet communication. See the protocol page for technical details and how XSWD provides secure, permissioned access to your wallet.
XSWD enables permissioned web socket interactions between applications and DERO wallets, allowing for secure transactions while maintaining control over your funds.
The protocol provides several key benefits:
- Secure connection: All communication is encrypted
- Permissioned access: You control what applications can do
- No private key exposure: Your wallet's private keys never leave your wallet
- Transaction verification: All transactions require explicit approval
Compatible Wallets
Engram works with wallets that support the XSWD protocol:
- DERO WebSocket Wallet (opens in a new tab)
- Engram Wallet (opens in a new tab)
- [Other third-party wallets with XSWD support]
Connection Methods
Connecting via XSWD (Recommended)
This is the preferred method for connecting your wallet to Engram:
- Ensure your XSWD-compatible wallet is running
- In Engram, go to Wallet > Connect Wallet
- Select XSWD Connection
- Engram will automatically detect available wallets
- Select your wallet from the list
- Approve the connection request in your wallet
- You'll see a confirmation message in Engram when connected
Wallet Permissions
When connecting your wallet, Engram will request certain permissions:
Basic Permissions
- View Balance: See your DERO balance
- View Addresses: Access your wallet addresses
- Network Information: See blockchain status
Extended Permissions (Optional)
- Create Transactions: Generate unsigned transactions
- Sign Transactions: Authorize and sign transactions
- Deploy Smart Contracts: Create new contracts on the blockchain
Always review permission requests carefully. Only grant permissions that you're comfortable with.
Managing Wallet Connections
Viewing Connection Status
To check your wallet connection status:
- Look for the wallet icon in the status bar
- Green: Connected and ready
- Yellow: Connected with limited permissions
- Red: Not connected or connection issues
- Hover over the icon for more details
Disconnecting Your Wallet
To disconnect your wallet from Engram:
- Go to Wallet > Disconnect Wallet
- Confirm the disconnection
- The wallet status icon will update to show you're disconnected
Changing Connected Wallet
To switch to a different wallet:
- First disconnect your current wallet
- Go to Wallet > Connect Wallet
- Select the new wallet to connect
- Follow the standard connection process
Using Your Wallet with dApps
Transaction Approval
When using a dApp that requires blockchain transactions:
- The application will create a transaction request
- Engram will forward this request to your connected wallet
- Your wallet will display the transaction details for review
- Review the details carefully before approving
- Approve or reject the transaction in your wallet
- The result will be sent back to the application
Viewing Transaction History
To see your transaction history:
- Go to Wallet > Transaction History
- View a list of all transactions made through Engram
- Click on any transaction for more details
- Filter transactions by application, type, or status
Security Considerations
Best Practices
Follow these security best practices when connecting your wallet:
- Verify applications: Only connect to trusted dApps
- Check transaction details: Always review transactions before approval
- Use session timeouts: Configure your wallet to disconnect after inactivity
- Separate wallets: Consider using different wallets for different purposes
- Regular updates: Keep both Engram and your wallet software updated
Privacy Settings
Enhance your privacy with these settings:
- Go to Settings > Privacy
- Enable Request Confirmation for All Transactions
- Configure Wallet Connection Timeout
- Set Default Permission Level to your preference
Troubleshooting Wallet Connections
Common Issues
Wallet Not Detected
If Engram doesn't detect your wallet:
- Ensure your wallet is running and unlocked
- Verify the wallet supports XSWD protocol
- Check that no firewall is blocking communication
- Try the manual connection method
Connection Timeouts
If the connection times out:
- Verify your wallet is still running
- Check network settings on both applications
- Restart both Engram and your wallet
- Try using a different port for connection
Transaction Failures
If transactions fail:
- Check your wallet has sufficient balance
- Verify your network connection is stable
- Ensure your wallet is properly synchronized with the blockchain
- Try creating a simple test transaction
Advanced Wallet Features
Multi-Wallet Support
Engram supports connecting multiple wallets simultaneously:
- Go to Wallet > Manage Wallets
- Click Add Wallet
- Follow the connection process for each wallet
- Choose which wallet to use for each application
Hardware Wallet Integration
For hardware wallet users:
- Connect your hardware wallet to your computer
- Use an XSWD-compatible wallet as a bridge
- Connect the bridge wallet to Engram
- Transactions will be forwarded to your hardware wallet for approval
Next Steps
Now that your wallet is connected:
- Explore available dApps
- Learn how to use Engram
- Understand XSWD Protocol - Technical details of the connection protocol
For Developers:
- Wallet RPC API - Available wallet methods
- TELA Development (opens in a new tab) - Build XSWD-enabled apps
- Complete XSWD API (opens in a new tab) - Full protocol reference