Bug Fixes
- revoke WaaS signed-session callback on client rebuild to stop iOS nonce race,
fixing a race condition where rebuilding the WaaS client on iOS could leave a
stale signed-session callback, causing nonce conflicts during wallet operations.
- sdk-react-core: allow sendOneTimeCode to target non-primary chain wallets,
so React Native apps that use multi-chain setups can now send one-time codes
to wallets other than the primary chain wallet.
- webview-controller: resolve post-login wallet race in Viem and ZeroDev
controllers, preventing a timing issue where wallet state could be inconsistent
immediately after login in React Native apps using Viem or ZeroDev.
Bug Fixes
- conditionally use /op/ route for AA transactions based on block explorer
support, so Account Abstraction transactions now correctly fall back when the
target block explorer does not support the
/op/ route.
- require error codes in all SDK error classes, ensuring every SDK error now
carries a machine-readable code for more reliable error handling in React
Native apps.
Bug Fixes
- react-native-extension: arm loading timer before setUrl to cover
pre-onLoadStart gap, fixing a race condition where the webview loading indicator
could fail to appear for very fast initial loads.
- webview-controller: unwrap ZeroDev smart wallet for native gasless,
ensuring React Native apps using ZeroDev account abstraction correctly resolve
the underlying EOA for gasless transaction signing.
- bitcoin: detect late-registering wallet-standard wallets, so Bitcoin
wallets that register after initial discovery are now picked up.
- nonce: fetch nonce on demand when missing before wallet verification,
preventing verification failures when the nonce was not pre-fetched.
- fetch onramp providers lazily instead of eagerly on mount, reducing
unnecessary network requests during SDK initialization.
⚠ BREAKING CHANGES
- waas: require expectedAddresses on migrateFromFireblocks — React Native
consumers using
migrateFromFireblocks must now pass expectedAddresses to
ensure address verification during Fireblocks migration.
Features
- react-native-extension: instrument all embedded webview failure paths,
providing detailed error telemetry for diagnosing webview-controller issues in
React Native sessions.
- midnight: support shielded/unshielded transfers and dust states in the
embedded Send flow — React Native consumers using the webview-controller can
now perform shielded Midnight transactions.
- waas: migrateFromFireblocks connector method + demo panel
(browser-wallet-client 1.0.46) — enables programmatic migration of Fireblocks
wallets into Dynamic embedded wallets.
Bug Fixes
- sdk-react-core: pin wallet ID in useEmbeddedReveal to prevent post-step-up
race condition, fixing a bug where revealing a private key after step-up auth
could target the wrong wallet.
- zerodev-extension: derive kernel 7702 vs 4337 per-wallet, not from global
dashboard flag, so React Native apps with mixed wallet types use the correct
kernel version.
- replace node-fetch v2 with native fetch to fix Node 22 stream failure.
- remediate high-severity dependency vulnerabilities.
Features
- sdk-react-core: surface shielded address in Midnight deposit view —
React Native consumers using Midnight can now display the shielded deposit
address in the wallet UI.
Bug Fixes
- display actual error message for WaaS export failures instead of generic
fallback, so React Native users see meaningful error text when private-key
export encounters an issue.
- wallet-book: guard replaceKey and remove stale override, preventing a
crash when the wallet-book attempts to replace a key that was already removed.
Features
- midnight: add WaaS layer to @dynamic-labs/midnight — React Native
consumers using the webview-controller can now create and manage Midnight
embedded wallets.
- waas: wire session public key through host backup ops for keyshare
diagnostics, improving troubleshooting for embedded wallet key-share issues
in React Native sessions.
Bug Fixes
- react-native-extension: fall back to
react-native-webview when the
embedded native module is unavailable, so the SDK no longer crashes on
devices where the native module fails to load.
- ethereum-aa: make ZeroDevConnector inert instead of throwing when ZeroDev
config is absent, preventing crashes in React Native apps that do not use
account abstraction.
- sdk-react-core: warn instead of throwing when ZeroDev connector is absent,
matching the defensive behavior of the ZeroDevConnector fix above.
- waas-evm: sign EOA transactions with the resolved chainId, not the
connector default, fixing incorrect chain context for WaaS transactions
routed through the webview-controller.
Features
- add Microsoft to social providers list — React Native consumers using
social-auth flows can now offer Microsoft as a login option through the
webview-controller.
- waas: opt into SDK eager key-share recovery, drop host RECOVER loop —
the embedded wallet now pre-fetches key shares at auth-flow start, reducing
latency for the first signing operation in React Native sessions.
- wallet-connector-core: add
isMidnightConnector util + Midnight
interface hooks for consumers integrating the Midnight network through the
webview-controller.
Bug Fixes
- waas: rebuild WaaS client on session change after step-up reauth, so
React Native sessions no longer hold a stale WaaS client when the user
re-authenticates via MFA.
- waas: refuse to build WaaS client while auth scope is pending
(
createRooms 401 chokepoint) — prevents premature wallet-client
initialization in the webview-controller before authentication completes.
- wallet-connect: skip address comparison on reconnect when
expectedAddress is empty, fixing a reconnection failure for WalletConnect
sessions routed through the webview-controller.
Bug Fixes
- react-native: resolve intermittent “Wallet with id <uuid> not found”
error after login — a timing race in the webview-controller could cause the
SDK to query for a wallet before it was fully registered; the lookup is now
deferred until registration completes.
- waas: instant logout — clear key share host-side and run background iframe
cleanup, so React Native sessions no longer hold stale wallet state after an
explicit log-out.
- retrieve wallet metadata from wallet-book when present, preventing missing
display names or icons for wallets that register after initial discovery.
Bug Fixes
- resolve EOA wallet client on the correct chain for EIP-7702 smart wallets, so
React Native consumers using delegated accounts get the correct chain context
when sending transactions through the webview-controller.
Bug Fixes
- fix an issue where step-up auth completion in the webview-controller did not
automatically show the export private key window — React Native consumers
using MFA-gated wallet export no longer need to manually re-trigger the flow.
Bug Fixes
- support plain EOA transactions for 7702 smart wallets via the viem extension,
so React Native consumers using EIP-7702 delegated accounts can now send
standard EOA transactions without hitting an unsupported-method error in the
webview-controller.
Bug Fixes
- ethereum: bump
@walletconnect/ethereum-provider to 2.23.2, picking up
connectivity and session-handling fixes that affect WalletConnect-based wallet
links routed through the webview-controller.
- persist OTP verification state in
sessionStorage to survive webview remounts,
preventing React Native users from being asked to re-verify OTP after the
webview-controller reloads mid-flow.
Bug Fixes
- remove unnecessary re-renders from
useDynamicWaas and
useCreateDynamicEmbeddedWalletWallets, reducing React-tree churn in
webview-controller flows that create or interact with embedded wallets.
Features
- waas: automatically log out when the embedded WaaS iframe returns a 401,
so React Native sessions using the webview-controller no longer silently hold a
stale wallet after the server-side session expires.
Bug Fixes
- sdk-react-core: only flag an auto-wallet creation as abandoned after a
sustained exit, not a transient
pagehide / visibilitychange event. On
Android webviews and mobile browsers the OS can briefly fire pagehide
(bfcache freeze, app pause) without the user actually leaving — those
transient hides are now ignored, preventing false “abandoned” telemetry.
Features
- ethereum-gasless: expose an optional
nonce on the gasless sign/send/relay
calls routed through the webview-controller, so React Native consumers using
useDynamicClient().client.ethereumGasless can pin the transaction nonce for
sponsored EVM calls and EIP-7702 delegation.
Features
- ethereum-gasless: add
@dynamic-labs/ethereum-gasless-core and
@dynamic-labs/ethereum-gasless-extension plus an EthereumGaslessController
in the webview-controller. React Native consumers can now access EVM
gas-sponsored transactions and EIP-7702 delegation via
useDynamicClient().client.ethereumGasless — including isEnabled(),
is7702DelegationActive(), sign7702Authorization(), and send() for
sponsored calls. Wallets resolve through the existing wallet-connector-core
connectors, so there is no dependency on @dynamic-labs-sdk/evm.
Bug Fixes
- react-native: raise the SDK
<WebView> default loadingTimeout (10s → 20s)
and recoveryTimeout (8s → 20s) so the ~7.5 MB webview-controller bundle
has more headroom on high-latency or constrained mobile networks before the
host SDK surfaces a WebViewFailedToLoadError. Consumers that need the
previous fast-fail behavior can still pass explicit loadingTimeout /
recoveryTimeout props.
Features
- react-native: add
embeddedWebView option to ReactNativeExtension — hosts the
webview-controller in a native overlay (WKWebView / android.webkit.WebView) outside
the RN view tree, isolating the wallet session from RN re-renders and navigation
transitions. See Embedded WebView mode.
Features
- react-native: add
waitForAuthSuccess() to the auth module — returns a promise
that resolves with the authenticated UserProfile when authSuccess fires (or
rejects on authFailed / optional timeout). Useful for awaiting auth completion in
the webview-controller flow without blocking MFA.
Bug Fixes
- react-native: remove extra react-native turbo modules instructions from the setup
flow.
Features
- react-native: add EIP-7702 authorization support.
Bug Fixes
- react-native: remove
crypto dependency.
- react-native: unify session storage so a single storage layer backs all SDK state.
Features
- handle credential_not_enabled_for_sign_in error across all sign-in methods
Bug Fixes
- react-native: ensure session is correctly mapped
Features
- client: expose waitForReady() on SdkModule
- waas: wire up signed session ID reverse channel
Bug Fixes
- react-native: keep WebView ref valid during URL reloads
- require device registration before sdk is in logged in state
- waas: always prompt for password on cloud backup/export operations
- webview: preserve secure storage key map during recovery clear
Features
- add action-based MFA check to wallet export
- integrate checkStepUpAuth into React SDK
- react-native: expose setup auth state
Bug Fixes
- allow for connectors to inject icons into bridge view
- react-native-extension build on iOS
Features
- add MFA methods to useStepUpAuthentication hook
- react-native: add minifiedToken support to authModule
Bug Fixes
- add overflow-y auto to backup codes view to prevent Complete button cutoff
- prevent infinite re-render loop in UserPhoneField due to rapid typing
Bug Fixes
- prevent MFA backup codes screen from being dismissed before acknowledgement
- react-native: add retry when setting items to secure store
Features
- add setPassword method for initial wallet password setup
- add step-up authentication and walletsVerify API
Bug Fixes
- react-native: ensure items are saved to storage successfully
Features
- react-native: raise walletReturnFromDeepLink event to allow redirecting back to the same route as before
Bug Fixes
- react-native: include redirectUrl in WalletConnect connection deep links on iOS and add session redirect metadata for Solana
- ton external wallet connection
Features
- add stellar waas connector
Bug Fixes
- react-native: ensure transaction confirmation UI is displayed
Bug Fixes
- coinbase deeplink url
- react-native: ensure sign transaction with viem
- react-native: upgrade react-native-passkey to v3.3.2
Features
- add iCloud backup functionality
- update PSBT building with Largest-First UTXO selection and fee priorities
Bug Fixes
- allow late registered solana wallets to appear in the wallet list
- correctly show app name in wallet app for wallet connect evm connections
- react-native: filter connectors by enabled chains and add chain parameter to connectWallet
Features
- expose usemetamasksdk in react native
Bug Fixes
- handle Google consent during authentication flow when it’s required
Features
- add getTransactionHistory to react-native
- add useGetTransactionHistory hook
Features
- react-native: add connectOnly option as a client prop
- react-native: add support for metamask
Bug Fixes
- react-native: show captcha screen when enabled during signature prompt
Bug Fixes
- ensure connectWithSocial promise fails on error
- react-native: move peer dependencies to regular deps for auto install on yarn
Features
- react-native: add download file
- react-native: add solana Phantom support with client module for listening to events
Features
- add export client key share from google drive
- react-native: introduce wallets.connectWallet and wallets.walletOptions
Bug Fixes
- await oauth flow on popup
- ensure MFA modal only open when necessary
Features
- react-native: add waas wallet upgrade to react-native
Features
- react-native: add client.solana.simulateTransaction method
- react-native: add simulateEVMTransactionAA and simulateEVMTransaction methods
Bug Fixes
- react-native: register and authenticate with passkey
Features
- react-native: add mfaCompletionSuccess and mfaCompletionFailure events to react-native client
Features
- react-native: add mfa modals
Features
- add support for send balance in React Native
Features
- react-native: add MFA recovery methods
Features
- add locale to react-native client
- add updateUser to react-native client
Features
- react-native: add methods to social module
Features
- add getMultichainBalances to react-native
Features
- adds evmNetworks prop for the react native client
Bug Fixes
- ensure waas wallet is correct when signing in react native
Bug Fixes
- react-native: dont emit network change events for disabled chains
Features
- add sui support to react native
Features
- add permanentlyDeleteUser for react native
Features
- add passkey 1fa to react native
Features
- add passkey to react-native
Features
- add refresh user to react native
Features
Bug Fixes
- add recovery flow for react-native
Bug Fixes
- add log level to react-native
Bug Fixes
- utilize wallet zerodev properties when available in react native
Features
- add mpc methods to RN
- manually create v3 wallets on RN
Bug Fixes
- expose sign authorization on react native
Bug Fixes
- react-native: reload webview when disconnected
Features
- add chain id option to create kernel client in react-native
- improve react-native stability on android
Bug Fixes
- react-native: ensure secure storage items are saved sequentially
- react-native: reload react-native webview when it is unmounted by OS
- react-native: sync state with client when SDK fully loaded
Features
- react-native: add account abstraction multi-chain
Features
- add support for wallet events in RN
- add zerodev extension for react native
- allow creating extra embedded wallets in react-native
Last modified on July 3, 2026