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.
Prerequisites
- API Key: Ensure you have an API key with the scopes:
wallets.create.
Try it Live
Experience wallet creation in action with this interactive demo. Create a Solana testnet wallet using just your email address:
Create a Wallet
React
Node.js
React Native
Swift
REST
import { useWallet } from '@crossmint/client-sdk-react-ui';
const { getOrCreateWallet } = useWallet();
const wallet = await getOrCreateWallet({
chain: "base-sepolia",
signer: {
type: "email",
email: "user@example.com"
},
});
See the React SDK reference for all parameters.import { CrossmintWallets, createCrossmint } from "@crossmint/wallets-sdk";
const crossmint = createCrossmint({
apiKey: "<your-server-api-key>",
});
const crossmintWallets = CrossmintWallets.from(crossmint);
const wallet = await crossmintWallets.createWallet({
chain: "base-sepolia",
signer: {
type: "external-wallet",
address: "0x1234567890123456789012345678901234567890"
},
});
See the SDK reference for all parameters and return types.import { useWallet } from '@crossmint/client-sdk-react-native-ui';
const { getOrCreateWallet } = useWallet();
const wallet = await getOrCreateWallet({
chain: "base-sepolia",
signer: {
type: "email",
email: "user@example.com"
},
});
See the React Native SDK reference for all parameters.import CrossmintClient
import Wallet
let sdk = CrossmintSDK.shared
let wallet = try await sdk.crossmintWallets.getOrCreateWallet(
chain: .baseSepolia,
signer: .email(email: "user@example.com")
)
Parameters
The chain to use the wallet on.See all supported chains for more details. On staging only testnet chains are supported.Note: For EVM-compatible chains, wallets are created for all
chains as part of the shared address space derived from the same private key. However, to
interact with a specific chain using the SDK, you must instantiate a wallet object per chain.
This allows the SDK to correctly route interactions to the appropriate network configuration. The signer to use the wallet with. An optional identifier for the wallet, used to organize multiple wallets on the same chain.Aliases are:
- Unique per wallet type and chain.
- Must use only lowercase letters, numbers, underscores, or hyphens (
a-z, 0-9, _, -).
- No spaces or empty strings allowed.
Examples:
trading, long-term-holdings, treasury Returns
curl --request POST \
--url https://staging.crossmint.com/api/2025-06-09/wallets \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <x-api-key>' \
--data '{
"chainType": "evm",
"config": {
"adminSigner": {
"type": "email",
"email": "user@example.com"
}
},
"owner": "email:user@example.com"
}'
See the API reference for more details.