Skip to main content
The Wallets Kit signer wraps Stellar Wallets Kit and gives users their preferred browser wallet - Freighter, xBull, or LOBSTR - without any wallet-specific branching in your application code.

When to use

Choose walletsKit when your users already have a Stellar wallet installed. It suits classic G... accounts backed by an existing keypair. For new users who have no wallet, consider the passkey signer instead.

Factory

walletsKit(opts) accepts a KitOptions object: The factory returns a BuckspaySigner. The browser wallet library is loaded lazily on first use so it never runs during server-side rendering.

Example

The snippet below shows a complete classic gasless transfer using walletsKit paired with classicAccount. This is the canonical starting point for users who already have a wallet.

How signatures work

Freighter historically returned a double-encoded auth entry in some versions. The Wallets Kit signer applies normalizeSignature internally before returning, so your code always receives a clean 64-byte signature regardless of which wallet or version the user has installed.

Next

Passkey

Passwordless flow for new users - no wallet required.

Account models

Pair walletsKit with classicAccount or ozContractAccount.