Crossmint Smart Wallets
⏱️ 3 min read
Overview
This guide points to a reference repository that shows you how to integrate DeFindex vaults using Crossmint smart wallets — enabling fully automated, server-side deposits, withdrawals, and cross-chain bridging with zero user interaction.
The pattern uses an EVM private key registered as adminSigner to control both an ERC-4337 smart wallet on Base and a Stellar smart wallet. All Defindex vault interactions go through Crossmint's REST API as Soroban contract-call transactions — no manual XDR construction required.
Repository
defindex-io/crossmint-defindex-guide
What the Repository Covers
Crossmint setup
Server API key (sk_), wallet email, staging vs production
EVM wallet
ERC-4337 smart wallet on Base with external-wallet adminSigner
Stellar wallet
Stellar smart wallet with auto-XLM funding, Soroban contract-call signing
Deposit
contract-call via Crossmint REST → base64 XDR approval → poll
Withdraw
Withdraw by amount or by shares (% redemption)
Bridge
Base USDC → Stellar → Defindex vault via Sodax
Gotchas
9 documented edge cases with root causes and fixes
Architecture at a Glance
All vault operations follow the same pattern:
POSTto Crossmint REST → createcontract-calltransactionResponse is
awaiting-approvalwith a base64-encoded XDR messageSign with
keypair.sign(Buffer.from(message, "base64"))usingSTELLAR_SERVER_KEYPOSTsignature to/approvalsPoll until
onChain.txIdis returned
Quick Start
Prerequisites
Crossmint account with a server API key (must start with
sk_, notck_)EVM_PRIVATE_KEY— becomes theadminSignerof the EVM smart wallet on BaseSTELLAR_SERVER_KEY— Stellar ed25519 secret key, becomes theadminSignerof the Stellar walletDefindex API key — request access on Discord
Additional Resources
Last updated