Skip to main content

Provider config

Pass a HeliusWalletConfig object to the provider’s config prop — see Setup.
apiKey
string
required
Your Helius API key. Authenticates RPC, transaction sending, and the WaaS bootstrap.
cluster
string
The Solana cluster to connect to: "mainnet-beta" or "devnet".
authMethods
object
Optional client-side override of the enabled sign-in methods. Normally you set these per project in the dashboard under WaaS → Configuration — see Configure sign-in methods.
You don’t pass a projectId or RPC URLs — the SDK derives your project id and key-less Secure RPC URLs from your API key at bootstrap.
theme
object
Customizes the wallet UI: darkMode, primaryColor, borderRadius, logoLight, logoDark.
onError
function
Callback invoked when the SDK encounters an error: (error: Error) => void.

Configure sign-in methods

Choose which methods your users see in the dashboard under WaaS → Configuration — toggle each on or off and save. Changes apply the next time a user signs in; no redeploy needed. The SDK reads your project’s configuration at bootstrap, so you manage this in one place rather than in code.
Passkey, email, SMS, and external wallet are self-service in the dashboard today. Social login (Google, Apple, Discord, X) is coming soon. Keep at least one method enabled, or your users won’t be able to create wallets. To override the project setting from code (e.g. per environment), pass authMethods to the provider config.
External wallet is a sign-in method. It authenticates a user into their embedded Helius wallet — signing always happens with the embedded wallet, not the external one. See Migrating from Privy.

Next steps

Using the wallet

Read auth state, sign, send, and read history

Migrating from Privy

Move existing Privy wallets to Helius WaaS