Files
metamask-integration/docs/SMART_ACCOUNTS_FAQ.md

281 lines
5.3 KiB
Markdown
Raw Permalink Normal View History

# Smart Accounts FAQ
**Date**: 2026-01-26
**Network**: ChainID 138 (SMOM-DBIS-138)
---
## General Questions
### Q: What are Smart Accounts?
**A**: Smart Accounts are programmable accounts that enable:
- Delegation (share permissions with dApps)
- Advanced Permissions (fine-grained access control)
- Batch Operations (multiple transactions in one)
- Gas Abstraction (pay gas in tokens)
---
### Q: What's the difference between EOA and Smart Account?
**A**:
- **EOA** (Externally Owned Account): Standard wallet, no programmable features
- **Smart Account**: Programmable account with delegation and permissions
---
### Q: Can I have both EOA and Smart Account?
**A**: Yes! You can link both to the same fiat account via AccountWalletRegistry.
---
### Q: Are Smart Accounts more secure?
**A**: Smart Accounts offer additional security features:
- Delegation with expiry
- Fine-grained permissions
- Programmable compliance checks
- Multi-signature support
---
### Q: Do I pay more gas with Smart Accounts?
**A**:
- Initial creation costs more
- Batch operations can save gas overall
- Gas abstraction can eliminate gas costs
---
## Delegation Questions
### Q: What is Delegation?
**A**: Delegation allows dApps to execute transactions on your behalf with time-limited permissions.
---
### Q: Can I revoke delegation?
**A**: Yes, you can revoke delegation anytime through MetaMask.
---
### Q: What happens when delegation expires?
**A**: Delegation becomes inactive and cannot be used. You must grant a new delegation.
---
### Q: Can I extend delegation expiry?
**A**: No, you must revoke and re-grant with new expiry.
---
### Q: Can I have multiple delegations?
**A**: Yes, you can grant multiple delegations to different dApps.
---
## Advanced Permissions Questions
### Q: What are Advanced Permissions?
**A**: Advanced Permissions (ERC-7715) are fine-grained, function-level permissions for Smart Accounts.
---
### Q: What's the difference between Delegation and Advanced Permissions?
**A**:
- **Delegation**: Broad permission for dApp to execute transactions
- **Advanced Permissions**: Fine-grained, function-level permissions
---
### Q: Do permissions expire?
**A**: Permissions don't expire automatically, but can be revoked anytime.
---
### Q: Can I grant permission for multiple functions?
**A**: Yes, request permission for each function separately.
---
### Q: Can I have multiple permissions?
**A**: Yes, you can grant multiple permissions for different functions.
---
## Payment Rails Questions
### Q: Can I use Smart Accounts for payment rails?
**A**: Yes, if your Smart Account is linked to a fiat account via AccountWalletRegistry.
---
### Q: How do payment rails work with Smart Accounts?
**A**:
1. Smart Account locks tokens in escrow
2. Settlement orchestrator processes
3. Tokens released after completion
---
### Q: What are the benefits?
**A**:
- Enhanced security
- Delegation with expiry
- Programmable compliance checks
---
## Technical Questions
### Q: How do I create a Smart Account?
**A**:
```typescript
const smartAccount = await kit.createAccount({
owner: userAddress,
});
```
---
### Q: How do I link Smart Account to fiat account?
**A**: Contact your account manager to link your Smart Account address.
---
### Q: How do I check if an address is a Smart Account?
**A**:
```typescript
const isSmart = await registry.isSmartAccountAddress(address);
```
---
### Q: How do I check delegation status?
**A**:
```typescript
const status = await kit.getDelegationStatus({
target: dAppAddress,
account: smartAccountAddress,
});
```
---
### Q: How do I check permission?
**A**:
```typescript
const hasPermission = await kit.hasPermission({
account: smartAccountAddress,
target: contractAddress,
functionSelector: functionSelector,
});
```
---
## Troubleshooting Questions
### Q: Smart Account creation fails. What should I do?
**A**:
1. Check ETH balance for gas
2. Verify RPC connection
3. Check EntryPoint and AccountFactory are deployed
4. Try again after refresh
---
### Q: Delegation not working. What should I do?
**A**:
1. Check delegation is active
2. Verify expiry hasn't passed
3. Check permissions are correct
4. Try revoking and re-granting
---
### Q: Permission denied. What should I do?
**A**:
1. Check MetaMask is unlocked
2. Review permission request details
3. Ensure sufficient gas
4. Try again after refresh
---
## Security Questions
### Q: Are Smart Accounts safe?
**A**: Yes, Smart Accounts use the same security model as standard accounts with additional programmable features.
---
### Q: Can someone steal my Smart Account?
**A**: No, Smart Accounts are secured by the same private key as standard accounts.
---
### Q: What if I lose my private key?
**A**: You lose access to your Smart Account, same as with standard accounts. Consider using hardware wallets.
---
### Q: Can I recover my Smart Account?
**A**: No, if you lose your private key, you cannot recover your Smart Account.
---
## Support Questions
### Q: Where can I get help?
**A**:
1. Check documentation
2. Review troubleshooting guide
3. Contact support team
4. Visit community forums
---
### Q: How do I report a bug?
**A**: Report bugs through support channels or community forums.
---
### Q: Where can I find examples?
**A**: Check the developer guide for code examples.
---
**Last Updated**: 2026-01-26