Documentation Index
Fetch the complete documentation index at: https://docs.crossmint.com/llms.txt
Use this file to discover all available pages before exploring further.
Class
Properties
address
The blockchain address of the wallet
chainType
The blockchain type (EVM, Solana, etc.)
config
The wallet configuration including admin signer
owner
The owner of the wallet, if available
type
The type of wallet (smart wallet or MPC wallet)
Functions
addSigner
suspend fun addSigner(signer: DelegatedSigner): Result<Unit, WalletError>
Registers a new delegated signer on this wallet via the recovery/approval flow. Does not change the active signer.
approve
suspend fun approve(transactionId: String, signer: SignerSelection = SignerSelection.Admin): Result<Transaction, TransactionError>
Signs a transaction that is in AWAITING_APPROVAL status.
balances
suspend fun balances(tokens: List<String> = emptyList()): Result<Balances, BalanceError>
Gets the wallet balances.
fund
suspend fun fund(token: String, amount: Int, chain: String): Result<Unit, BalanceError>
Funds the wallet with test tokens (staging only).
getSigner
Returns the current signer for this wallet.
getTransaction
suspend fun getTransaction(transactionId: String): Result<Transaction, TransactionError>
Retrieves a transaction by its ID.
needsRecovery
suspend fun needsRecovery(): Boolean
Returns true when a device signer was configured for this wallet but no matching hardware key exists on the current device.
recover
suspend fun recover(): Result<Unit, WalletError>
Generates a new hardware key on this device and registers it on the wallet using the admin/recovery signer approval flow.
removeSigner
suspend fun removeSigner(signer: DelegatedSigner): Result<Unit, WalletError>
Removes a delegated signer from this wallet. Supported types: DelegatedSigner.Email, DelegatedSigner.Phone, DelegatedSigner.ExternalWallet, DelegatedSigner.Locator.
send
suspend fun send(recipient: String, tokenLocator: String, amount: Double, idempotencyKey: String? = null, signer: SignerSelection = SignerSelection.Admin): Result<Transaction, TransactionError>
Sends tokens to a recipient address.
signerIsRegistered
fun signerIsRegistered(locator: String): Boolean
Returns true if the given locator is registered as a delegated signer on this wallet.
useSigner
suspend fun useSigner(signer: DelegatedSigner): Result<Unit, WalletError>
Sets the active signer for subsequent send and approve operations.
withSigner
fun withSigner(newSigner: Signer): Wallet
Creates a new Wallet instance that uses the specified signer for transactions.