This page has been updated for Wallets SDK V1. If you are using the previous version,
see the previous version of this page or the V1 migration guide.
CrossmintProvider— SDK initialization (required for all Crossmint features)CrossmintWalletProvider— Wallet creation and management
CrossmintProvider
Root provider for the Crossmint SDK. Must wrap your entire application. Initializes the SDK with your API key and sets up logging.Props
Your Crossmint client-side API key.
Minimum log level for console output (or “silent” to suppress all output). Logs below this level will not be written to the console. Set to “silent” to completely suppress console output. Defaults to “debug” (all logs shown) for backward compatibility.
Override the base API URL.
Usage
CrossmintWalletProvider
Provider for wallet creation and management. Must be nested inside CrossmintProvider. Handles secure communication with the Crossmint signer via a hidden WebView.Props
Optional appearance configuration for styling built-in UI components.
Optional lifecycle callbacks invoked during wallet creation and transaction signing.
Wallet configuration for automatic creation on user login. Defines the chain and signer type for the wallet.
Storage implementation for device signer keys. Defaults to
NativeDeviceSignerKeyStorage (Secure Enclave on iOS, Android Keystore on Android). Override for testing or custom storage.When true (default), built-in OTP signer UI prompts are shown during signing flows. When false, signing flows must be handled manually via the useWalletOtpSigner hook.
Usage
Note: CrossmintWalletProvider must be nested inside CrossmintProvider. showOtpSignerPrompt defaults to true in React Native, showing built-in OTP dialogs automatically. Set to false to handle signing flows manually via the useWalletOtpSigner hook.

