Skip to main content
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:
  1. Get Sign Request - Request a typed data message for deployment
    • The message includes permission settings for session keys
    • Specifies which chain to deploy on
  2. Sign Message - Sign the typed data with your EOA wallet
    • This proves you own the EOA and authorize the deployment
  3. 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.