@buckspay/react-native brings the SDK to iOS and Android. The core pipeline (auth-entry build,
fee-bump, prepare -> sign -> send) is platform-agnostic. This package adds three things on top:
nativePasskey- aWebAuthnLikebacked byreact-native-passkeythat drives the device secure enclave instead ofnavigator.credentials. The private key never leaves the device.- Secure-storage adapters -
memorySecureStore,expoSecureStore,keychainSecureStorefor persisting session blobs and credential IDs. - Hermes polyfills - installed as a side-effect on import, before
@stellar/stellar-sdkis used.
BuckspayProvider, useWallet, and useStellarPay are re-exported by reference from
@buckspay/react - the same store, same status machine, zero fork. Your screen logic is
identical to a web component; only the host primitives (<View> / <Text> / <Pressable>)
and the signer differ.
Secure storage
Session blobs and credential IDs are persisted via aSecureStore port. Three adapters are
exported from @buckspay/react-native:
Each adapter lazily imports its peer, so apps that do not use a given adapter never pull the
native module into their bundle.
Full example
Next
Native passkey signer
How
nativePasskey delegates to the shared passkey crypto pipeline.Web - @buckspay/react
The web counterpart - same hooks, browser authenticator transport.

