The Swaps API uses smart contract wallets (account abstraction) to manage user funds and execute transactions. Before placing orders, your smart wallet must be deployed on-chain.
Smart Wallet Address
Your smart wallet address is deterministically computed from your EOA (Externally Owned Account) address. This means:
- The same EOA always produces the same smart wallet address
- The address can be computed before deployment
- No need to wait for deployment to know your wallet address
Deployment Process
Deployment is a one-time process per chain:
-
Get Sign Request - Request a typed data message for deployment
- The message includes permission settings for session keys
- Specifies which chain to deploy on
-
Sign Message - Sign the typed data with your EOA wallet
- This proves you own the EOA and authorize the deployment
-
Deploy - Submit the signed message to deploy the wallet contract
- The smart wallet contract is deployed on-chain
- Session keys are configured for gasless transactions
- Deployment is tracked in the system
After Deployment
Once deployed, your smart wallet can:
- Hold USDC for buy orders
- Hold ERC-1155 tokens for sell orders
- Execute on-chain transactions automatically
- Use session keys for gasless operations
Multi-Chain Support
Each chain requires a separate deployment. The system tracks which chains your wallet is deployed on, so you can deploy to multiple chains as needed.
Deployment requires a one-time on-chain transaction. After deployment, the wallet is ready for use on that chain.