diff --git a/content/docs.yml b/content/docs.yml index c3ec99401..cdca96fb5 100644 --- a/content/docs.yml +++ b/content/docs.yml @@ -830,87 +830,15 @@ navigation: path: wallets/pages/index.mdx - page: Quickstart path: wallets/pages/smart-wallets/quickstart/sdk.mdx - - section: Get Started - contents: - - section: React - contents: - - page: Quickstart - path: wallets/pages/react/getting-started/quickstart-in-section.mdx - - section: From scratch - contents: - - page: Initialization - path: wallets/pages/react/getting-started/initialization.mdx - - page: Environment setup - path: wallets/pages/react/getting-started/setup.mdx - - page: UI Customization - path: wallets/pages/react/getting-started/ui-customization.mdx - - page: App Integration - path: wallets/pages/react/getting-started/existing-project.mdx - - section: React Native - contents: - - page: Overview - path: wallets/pages/react-native/overview.mdx - - page: Quickstart with Expo - path: wallets/pages/react-native/getting-started/getting-started-quickstart.mdx - - section: From scratch - contents: - - page: Using Expo - path: wallets/pages/react-native/getting-started/getting-started-expo.mdx - - page: Using Bare React Native - path: wallets/pages/react-native/getting-started/getting-started-rn-bare.mdx - - page: App integration - path: wallets/pages/react-native/getting-started/app-integration.mdx - - section: Other JavaScript frameworks - contents: - - page: Overview - path: wallets/pages/core/overview.mdx - - page: Quickstart - path: wallets/pages/core/quickstart.mdx - - section: Transaction APIs - contents: - - page: Quickstart - path: wallets/pages/smart-wallets/quickstart/index.mdx - - page: Using SDK - path: wallets/pages/smart-wallets/quickstart/sdk.mdx - - page: Using API - path: wallets/pages/smart-wallets/quickstart/api.mdx - - section: Recipes - contents: - - page: Overview - slug: recipes - path: wallets/pages/recipes/overview.mdx - - page: Send USDC - slug: recipes/send-usdc - path: wallets/pages/recipes/send-usdc.mdx - - page: Programmatic Wallet Creation - path: wallets/pages/recipes/programmatic-wallet-creation.mdx - - page: Onramp Funds - slug: recipes/onramp-funds - path: wallets/pages/recipes/onramp-funds.mdx - - page: Session Keys with Smart Wallets - slug: recipes/wallet-session-keys-app - path: wallets/pages/recipes/wallet-session-keys-app.mdx - - page: Hyperliquid Transactions - slug: recipes/hyperliquid-wallets - path: wallets/pages/recipes/hyperliquid-wallets.mdx - - page: Smart Wallets with Aave - slug: wallets/recipes/smart-wallets-aave - path: wallets/pages/recipes/smart-wallets-aave.mdx - - page: Upgrade to Smart Accounts - slug: recipes/upgrade-to-smart-accounts - path: wallets/pages/recipes/upgrade-to-smart-accounts.mdx - - page: Multi-chain setup - slug: recipes/multi-chain-setup - path: wallets/pages/recipes/multi-chain-setup.mdx - - page: Multi-chain Balances - path: tutorials/data/how-to-get-crosschain-token-balances.mdx - page: Supported Chains path: wallets/pages/overview/supported-chains.mdx - section: Transactions contents: - - page: Overview - path: wallets/pages/transactions/overview.mdx + - page: Using SDK + path: wallets/pages/smart-wallets/quickstart/sdk.mdx + - page: Using API + path: wallets/pages/smart-wallets/quickstart/api.mdx - section: Send transactions collapsed: true contents: @@ -976,7 +904,17 @@ navigation: contents: - page: Overview path: wallets/pages/authentication/overview.mdx - - section: Embedded wallets + - page: Privy + path: wallets/pages/third-party/signers/privy.mdx + - section: Other signers + contents: + - page: Openfort + path: wallets/pages/third-party/signers/openfort.mdx + - page: Turnkey + path: wallets/pages/third-party/signers/turnkey.mdx + - page: Other signers + path: wallets/pages/third-party/signers/custom-integration.mdx + - section: Account kit collapsed: true contents: - section: Login methods @@ -1048,17 +986,7 @@ navigation: path: wallets/pages/smart-contracts/modular-account-v2/managing-ownership.mdx - page: Export private key path: wallets/pages/signer/export-private-key.mdx - - section: Third-party signers - contents: - - page: Privy - path: wallets/pages/third-party/signers/privy.mdx - - page: Openfort - path: wallets/pages/third-party/signers/openfort.mdx - - page: Turnkey - path: wallets/pages/third-party/signers/turnkey.mdx - - page: Other signers - path: wallets/pages/third-party/signers/custom-integration.mdx - - page: What is a signer? + - page: Choosing a signer path: wallets/pages/authentication/what-is-a-signer.mdx - section: Low-Level Infra @@ -1123,7 +1051,7 @@ navigation: - section: API Reference contents: - - section: Smart Wallets + - section: Wallet APIs contents: - section: Wallet API Endpoints contents: @@ -1176,8 +1104,38 @@ navigation: - page: Features slug: wallets/resources/features path: wallets/pages/features.mdx - - page: Understanding Smart Wallets + - page: Understanding Wallet APIs path: wallets/pages/concepts/intro-to-account-kit.mdx + - section: Recipes + contents: + - page: Overview + slug: recipes + path: wallets/pages/recipes/overview.mdx + - page: Send USDC + slug: recipes/send-usdc + path: wallets/pages/recipes/send-usdc.mdx + - page: Programmatic Wallet Creation + path: wallets/pages/recipes/programmatic-wallet-creation.mdx + - page: Onramp Funds + slug: recipes/onramp-funds + path: wallets/pages/recipes/onramp-funds.mdx + - page: Session Keys with Wallet APIs + slug: recipes/wallet-session-keys-app + path: wallets/pages/recipes/wallet-session-keys-app.mdx + - page: Hyperliquid Transactions + slug: recipes/hyperliquid-wallets + path: wallets/pages/recipes/hyperliquid-wallets.mdx + - page: Wallet APIs with Aave + slug: wallets/recipes/smart-wallets-aave + path: wallets/pages/recipes/smart-wallets-aave.mdx + - page: Upgrade to Smart Accounts + slug: recipes/upgrade-to-smart-accounts + path: wallets/pages/recipes/upgrade-to-smart-accounts.mdx + - page: Multi-chain setup + slug: recipes/multi-chain-setup + path: wallets/pages/recipes/multi-chain-setup.mdx + - page: Multi-chain Balances + path: tutorials/data/how-to-get-crosschain-token-balances.mdx - link: GitHub href: https://github.com/alchemyplatform/aa-sdk - link: Changelog diff --git a/content/redirects.yml b/content/redirects.yml index d89eed8f8..613c0bc12 100644 --- a/content/redirects.yml +++ b/content/redirects.yml @@ -2470,3 +2470,14 @@ redirects: - source: /docs/wallets/smart-contracts/other-accounts/modular-account/upgrading-to-modular-account destination: /docs/wallets permanent: true + + # ========================================= Wallet APIs Rebrand Redirects ========================================= + - source: /docs/wallets/react/quickstart + destination: /docs/wallets/quickstart + permanent: true + - source: /docs/wallets/react-native/overview + destination: /docs/wallets/quickstart + permanent: true + - source: /docs/wallets/core/overview + destination: /docs/wallets/quickstart + permanent: true diff --git a/content/wallets/pages/authentication/login-methods/bring-your-own-auth.mdx b/content/wallets/pages/authentication/login-methods/bring-your-own-auth.mdx index 584d71912..a7e5cb04b 100644 --- a/content/wallets/pages/authentication/login-methods/bring-your-own-auth.mdx +++ b/content/wallets/pages/authentication/login-methods/bring-your-own-auth.mdx @@ -1,10 +1,10 @@ --- title: Bring Your Own Authentication -description: Integrate your existing authentication system with Smart Wallets using JWT tokens +description: Integrate your existing authentication system with Wallet APIs using JWT tokens slug: wallets/authentication/login-methods/bring-your-own-auth --- -Integrate your existing authentication provider and add smart wallet functionality to your app without changing your users' login experience. Smart Wallets supports JWT-based and OIDC-compliant authentication providers. +Integrate your existing authentication provider and add smart wallet functionality to your app without changing your users' login experience. Wallet APIs supports JWT-based and OIDC-compliant authentication providers. ## Prerequisites diff --git a/content/wallets/pages/authentication/login-methods/email-magic-link.mdx b/content/wallets/pages/authentication/login-methods/email-magic-link.mdx index 2f60df4a5..9fd4b26aa 100644 --- a/content/wallets/pages/authentication/login-methods/email-magic-link.mdx +++ b/content/wallets/pages/authentication/login-methods/email-magic-link.mdx @@ -27,7 +27,7 @@ Email magic link authentication is a two-step process: ## Pre-built UI Components - Smart Wallets provides pre-built UI components that handle the entire Email Magic Link authentication flow with minimal code. + Wallet APIs provides pre-built UI components that handle the entire Email Magic Link authentication flow with minimal code. ### Step 1: Add Authentication Components to Your Page @@ -75,7 +75,7 @@ Email magic link authentication is a two-step process: ## Custom UI - If you need complete control over the user experience, you can implement your own custom UI for Email Magic Link authentication using Smart Wallets hooks. + If you need complete control over the user experience, you can implement your own custom UI for Email Magic Link authentication using Wallet APIs hooks. ### Step 1: Send the Magic Link @@ -178,11 +178,11 @@ Email magic link authentication is a two-step process: example](https://github.com/alchemyplatform/account-kit-expo-quickstart). - ### Set the email mode to `Magic Link` in your Smart Wallets dashboard + ### Set the email mode to `Magic Link` in your Wallet APIs dashboard - In the Smart Wallets dashboard: + In the Wallet APIs dashboard: - * Navigate to the **Smart Wallets** tab + * Navigate to the **Wallet APIs** tab * Select the config you would be using for your project and click the **Edit** button diff --git a/content/wallets/pages/authentication/login-methods/email-otp.mdx b/content/wallets/pages/authentication/login-methods/email-otp.mdx index f427df182..97d625243 100644 --- a/content/wallets/pages/authentication/login-methods/email-otp.mdx +++ b/content/wallets/pages/authentication/login-methods/email-otp.mdx @@ -20,7 +20,7 @@ Email OTP (One-Time Password) authentication is a two-step process: ## Pre-built UI Components - Smart Wallets provides pre-built UI components that handle the entire Email OTP authentication flow with minimal code. + Wallet APIs provides pre-built UI components that handle the entire Email OTP authentication flow with minimal code. ### Step 1: Add Authentication Components to Your Page @@ -68,7 +68,7 @@ Email OTP (One-Time Password) authentication is a two-step process: ## Custom UI - If you need complete control over the user experience, you can implement your own custom UI for Email OTP authentication using Smart Wallets hooks. + If you need complete control over the user experience, you can implement your own custom UI for Email OTP authentication using Wallet APIs hooks. ### Step 1: Send the OTP @@ -185,16 +185,16 @@ Email OTP (One-Time Password) authentication is a two-step process: Authenticate a user using the `useAuthenticate()` hook from the `@account-kit/react-native` package. - ### Set the email mode to `One Time Password (OTP)` in your Smart Wallets dashboard + ### Set the email mode to `One Time Password (OTP)` in your Wallet APIs dashboard This is the default mode for email authentication. Only follow these steps if you had previously set the email mode to `Magic Link`. - In the Smart Wallets dashboard: + In the Wallet APIs dashboard: - * Navigate to the **Smart Wallets** tab + * Navigate to the **Wallet APIs** tab * Select the config you would be using for your project and click the **Edit** button diff --git a/content/wallets/pages/authentication/login-methods/passkey-signup.mdx b/content/wallets/pages/authentication/login-methods/passkey-signup.mdx index bd7ce7f25..757446897 100644 --- a/content/wallets/pages/authentication/login-methods/passkey-signup.mdx +++ b/content/wallets/pages/authentication/login-methods/passkey-signup.mdx @@ -19,7 +19,7 @@ Passkeys provide a secure, passwordless authentication method that can be used t ## Pre-built UI Components - Smart Wallets provides pre-built UI components that handle the entire Passkey Signup authentication flow with minimal code. + Wallet APIs provides pre-built UI components that handle the entire Passkey Signup authentication flow with minimal code. ### Step 1: Add Authentication Components to Your Page @@ -66,7 +66,7 @@ Passkeys provide a secure, passwordless authentication method that can be used t ## Custom UI - If you need complete control over the user experience, you can implement your own custom UI for Passkey Signup authentication using Smart Wallets hooks. + If you need complete control over the user experience, you can implement your own custom UI for Passkey Signup authentication using Wallet APIs hooks. ### Option 1: Passkey Signup with Email (Recommended) diff --git a/content/wallets/pages/authentication/login-methods/sms-login.mdx b/content/wallets/pages/authentication/login-methods/sms-login.mdx index a224ef9a6..0d7001284 100644 --- a/content/wallets/pages/authentication/login-methods/sms-login.mdx +++ b/content/wallets/pages/authentication/login-methods/sms-login.mdx @@ -20,7 +20,7 @@ SMS authentication is a two-step process: The SDK will handle phone number validation, code generation, and delivery automatically. -Smart Wallets supports all major countries across Europe, Asia, North and South America. +Wallet APIs supports all major countries across Europe, Asia, North and South America. Pricing varies by country and requires specific area codes to be enabled for your account. diff --git a/content/wallets/pages/authentication/login-methods/social-login.mdx b/content/wallets/pages/authentication/login-methods/social-login.mdx index 0ccc06410..9d93aaa5b 100644 --- a/content/wallets/pages/authentication/login-methods/social-login.mdx +++ b/content/wallets/pages/authentication/login-methods/social-login.mdx @@ -13,14 +13,14 @@ Social login authentication allows users to authenticate using OAuth providers l ## Prerequisites - Before implementing social login in your application, you need to configure your Smart Wallets dashboard and application: + Before implementing social login in your application, you need to configure your Wallet APIs dashboard and application: 1. **Follow the Setup Instructions in the Getting Started Guide**: * See the [Getting Started with Authentication](/docs/wallets/react/quickstart) page for complete setup instructions * Pay special attention to the social authentication provider configuration and whitelisted origins setup 2. **Key Configuration Requirements**: - * Enable desired social providers in your Smart Wallets dashboard + * Enable desired social providers in your Wallet APIs dashboard * Add your application's domain to the whitelisted origins * Set `enablePopupOauth: true` in your config if using popup flow @@ -33,7 +33,7 @@ Social login authentication allows users to authenticate using OAuth providers l ## Pre-built UI Components - Smart Wallets provides pre-built UI components that handle the entire Social Login authentication flow with minimal code. + Wallet APIs provides pre-built UI components that handle the entire Social Login authentication flow with minimal code. ### Step 1: Add Authentication Components to Your Page @@ -79,14 +79,14 @@ Social login authentication allows users to authenticate using OAuth providers l ## Custom UI - If you need complete control over the user experience, you can implement your own custom UI for Social Login authentication using Smart Wallets hooks. + If you need complete control over the user experience, you can implement your own custom UI for Social Login authentication using Wallet APIs hooks. ### Step 1: Configure Your Application Before implementing social login, make sure you've: - 1. Set up your authentication providers in the Smart Wallets dashboard - 2. If using popup flow, set `enablePopupOauth: true` in your Smart Wallets configuration + 1. Set up your authentication providers in the Wallet APIs dashboard + 2. If using popup flow, set `enablePopupOauth: true` in your Wallet APIs configuration ### Step 2: Implement the Authentication diff --git a/content/wallets/pages/authentication/overview.mdx b/content/wallets/pages/authentication/overview.mdx index 4b036ccf0..d7eea378a 100644 --- a/content/wallets/pages/authentication/overview.mdx +++ b/content/wallets/pages/authentication/overview.mdx @@ -1,129 +1,57 @@ --- -title: Authentication overview -description: Comprehensive guide to authentication methods and user onboarding with Smart Wallets +title: Signer integration overview +description: Comprehensive guide to integrating signers for user onboarding with Wallet APIs slug: wallets/authentication/overview --- -Authentication is the process by which users verify their identity to access your application. In web3, providing users with seamless login experiences for their decentralized applications and blockchain wallets is essential for creating exceptional user experiences that drive adoption. +A **signer** is the service or key that controls a wallet — it authenticates users and signs transactions on their behalf. Wallet APIs work with any signer that produces a valid signature: Alchemy's embedded signer, third-party auth providers, EOA wallets, or your own custodial key. -## Why Seamless Authentication Matters in Web3 +## Why signer choice matters -Traditional blockchain authentication creates significant barriers to user adoption that generally don't exist in web2 experiences: +The signer you choose determines three things for your users: -* **Complex private key management** - Users must securely store and manage cryptographic keys -* **Wallet installation requirements** - Additional software downloads and setup -* **Technical knowledge barriers** - Understanding of blockchain concepts and wallet security -* **Poor user experience** - Lengthy onboarding flows and confusing interfaces +| Concern | What it means | +| --------------------- | --------------------------------------------------------------------------------------------- | +| **Onboarding UX** | Email/social login (embedded signer) vs. "Connect Wallet" (EOA) vs. server-side key (custodial) | +| **Custody model** | Who holds the private key — user, shared (MPC), or your backend | +| **Recovery options** | What happens when a user loses access to their device or credentials | -With Smart Wallets, you can solve these challenges by using seamless and familiar login methods while maintaining the security and decentralization benefits of blockchain technology. +## Integration paths -## Features +### Embedded wallets (recommended for consumer apps) -### Multiple login methods +Use Alchemy's built-in signer to create wallets behind familiar login flows. No browser extension, no seed phrase. -Choose from a variety of authentication options to match your users' preferences: +* **[Email OTP](/docs/wallets/authentication/login-methods/email-otp)** — Passwordless login with 6-digit verification codes +* **[Email Magic Links](/docs/wallets/authentication/login-methods/email-magic-link)** — One-click authentication via secure email links +* **[Social Login](/docs/wallets/authentication/login-methods/social-login)** — OAuth with Google, Apple, Discord, Twitter, and more +* **[Passkey Authentication](/docs/wallets/authentication/login-methods/passkey-signup)** — Biometric and hardware-based passwordless login +* **[Bring Your Own Auth](/docs/wallets/authentication/login-methods/bring-your-own-auth)** — Integrate existing JWT/OIDC authentication systems +* **[SMS Login](/docs/wallets/authentication/login-methods/sms-login)** — Phone number based verification -* **[Email OTP](/docs/wallets/authentication/login-methods/email-otp)** - Passwordless login with 6-digit verification codes -* **[Email Magic Links](/docs/wallets/authentication/login-methods/email-magic-link)** - One-click authentication via secure email links -* **[Social Login](/docs/wallets/authentication/login-methods/social-login)** - OAuth with Google, Apple, Discord, Twitter, and more -* **[Passkey Authentication](/docs/wallets/authentication/login-methods/passkey-signup)** - Biometric and hardware-based passwordless login -* **[Bring Your Own Auth](/docs/wallets/authentication/login-methods/bring-your-own-auth)** - Integrate existing JWT/OIDC authentication systems -* And more! +### Third-party signers -### Flexible implementation options +Already using another auth or wallet provider? Plug it in directly: -Implement authentication in the way that best fits your application: +* **[Choosing a signer](/docs/wallets/signer/what-is-a-signer)** — Compare custody models, security trade-offs, and provider options +* **[Custom signer integration](/docs/wallets/third-party/signers/custom-integration)** — Bring any EIP-1193 provider or viem `LocalAccount` -* **Pre-built UI Components** - Deploy quickly with minimal code using `` or `` -* **Custom UI Integration** - Build completely custom experiences with headless React hooks -* **Modal or Embedded Flows** - Choose between popup modals or embedded authentication forms -* **Whitelabel Solutions** - Customize theming and branding to match your application +### EOA / self-custodial wallets -### Framework support +Let web3-native users connect MetaMask, Ledger, or any injected wallet and upgrade to a smart account via [EIP-7702](/docs/wallets/transactions/using-eip-7702). -Smart Wallets authentication works across multiple platforms: +## Implementation options -* **React** - Full-featured hooks, components, and TypeScript support -* **React Native** - Mobile-optimized authentication flows for iOS and Android -* **Other JavaScript Frameworks** - Svelte, Vue, and vanilla JavaScript support -* **Backend Integration** - Server-side authentication validation and user management +| Approach | Best for | Docs link | +| ------------------------- | ----------------------------------------------- | ---------------------------------------------------------------- | +| **Pre-built UI** | Ship fast with `` or ``| [UI components](/docs/wallets/react/ui-components) | +| **React hooks** | Custom UX with full control | [React hooks](/docs/wallets/react/react-hooks) | +| **Core JS (non-React)** | Svelte, Vue, vanilla JS | [Other JS overview](/docs/wallets/core/overview) | +| **Server-side / API** | Backend wallet management | [Transaction API quickstart](/docs/wallets/reference/smart-wallet-quickstart) | -### Enterprise-grade security +## Next steps -* **Non-custodial Architecture** - Users maintain full control over their private keys -* **Secure Enclave Storage** - Keys generated and stored in hardware security modules -* **Multi-Factor Authentication (MFA)** - Additional security layers for high-value operations -* **Account Recovery** - Flexible recovery options through trusted contacts or backup methods - -### Multi-Factor Authentication (MFA) - -Add additional security layers for sensitive operations: - -* **Email OTP MFA** - Secondary verification via email codes -* **Email Magic Link MFA** - Additional verification via email links -* **Social Login MFA** - Secondary authentication through social providers - -## Implementation approaches - -### Quick start with pre-built components - -Deploy authentication in minutes with minimal code: - -```tsx twoslash -import { AuthCard } from "@account-kit/react"; - -function App() { - return ( -
-

Welcome to My App

- -
- ); -} -``` - -### Custom UI with React hooks - -Build completely custom authentication experiences: - -```tsx twoslash -import { - useAuthenticate, - useSignerStatus, - useAuthModal, -} from "@account-kit/react"; - -function CustomAuth() { - const { authenticate } = useAuthenticate(); - const { isInitializing, isConnected } = useSignerStatus(); - const { openAuthModal } = useAuthModal(); - - const handleEmailAuth = async () => { - await authenticate({ - type: "email", - email: "user@example.com", - }); - }; - - if (isInitializing) return
Loading...
; - if (isConnected) return
Welcome back!
; - - return ( -
- - -
- ); -} -``` - -## Next Steps - -Ready to implement authentication? Start with these guides: - -1. **[React Quickstart](/docs/wallets/react/quickstart)** - Complete React setup with authentication -2. **[Email OTP Guide](/docs/wallets/authentication/login-methods/email-otp)** - Implement email-based authentication -3. **[Social Login Setup](/docs/wallets/authentication/login-methods/social-login)** - Configure OAuth providers -4. **[Custom UI Implementation](/docs/wallets/react/react-hooks)** - Build custom authentication experiences - -After authenticating users, generate wallets for them and they can start sending transactions with a few clicks. +1. **[Quickstart](/docs/wallets/quickstart)** — Send your first transaction end-to-end +2. **[Email OTP guide](/docs/wallets/authentication/login-methods/email-otp)** — Implement email-based onboarding +3. **[Social login setup](/docs/wallets/authentication/login-methods/social-login)** — Configure OAuth providers +4. **[Choosing a signer](/docs/wallets/signer/what-is-a-signer)** — Deep dive into custody models and provider comparison diff --git a/content/wallets/pages/authentication/what-is-a-signer.mdx b/content/wallets/pages/authentication/what-is-a-signer.mdx index 666e4eeb5..7b8dd8265 100644 --- a/content/wallets/pages/authentication/what-is-a-signer.mdx +++ b/content/wallets/pages/authentication/what-is-a-signer.mdx @@ -1,23 +1,17 @@ --- outline: deep -title: Choosing an authentication method -description: Explore Smart Wallets integration guides for authentication including Magic.Link, Privy, Web3Auth, EOAs, and many more! +title: Choosing a signer +description: Explore Wallet APIs integration guides for signers including Alchemy, Turnkey, Privy, Web3Auth, EOAs, and many more! slug: wallets/signer/what-is-a-signer --- -An **owner** is a service or application that manages a private key and signs operations. Most web3 users today use an [Externally Owned Account (EOA)](https://ethereum.org/en/developers/docs/accounts/#externally-owned-accounts-and-key-pairs) with a self-custodial wallet such as MetaMask to manage the private key. +A **signer** (also called an "owner") is the service or key that controls a smart wallet — it manages a private key, authenticates users, and signs transactions on their behalf. Your choice of signer determines the onboarding experience, custody model, and recovery options available to your users. -With Smart Wallets, deploy a **smart wallet** for each user instead of an EOA wallet. This smart wallet stores the user's assets (e.g. tokens or NFTs). +This guide covers the different signer types, the criteria to evaluate when choosing one, and how they plug into Wallet APIs. -The owner connected to the `SmartWalletClient` signs messages, data including transactions. The signatures are only valid and execute if the owner is one of the owners of the account. +## Role of a signer -Using Smart Wallets, secure your user's account with an email, social login, or passkeys. You can also use a self-custodial wallet like MetaMask as the owner. Choose any authentication service or application to manage the owner private key for the user. - -This doc provides a basic introduction to owners, the criteria to consider when choosing one, and how they integrate with the Smart Wallets SDK. - -## Role of an owner - -The owner plays a crucial role in your app because it controls the user's smart wallet. The owner is responsible for: +The signer plays a crucial role in your app because it controls the user's smart wallet. The signer is responsible for: * Securely storing the user's private key which controls the user's assets * Authenticating the user @@ -27,11 +21,11 @@ The owner plays a crucial role in your app because it controls the user's smart ## Criteria to consider -Here are some important criteria to consider when choosing an owner. +Here are some important criteria to consider when choosing a signer. * **Custody model:** Who has access to the private key? * Self-Custodial: the end user controls the private key and manually approves signature requests - * Non-Custodial: a third-party service manages the private key or a subset of the key shares, but cannot sign transactions without the user’s involvement + * Non-Custodial: a third-party service manages the private key or a subset of the key shares, but cannot sign transactions without the user's involvement * Custodial: a third-party service manages the private key and can sign transactions without the user's involvement * **Security model**: Assess the security model of the provider. Where is the private key stored? (on a device? in the cloud? on what cloud provider?) Is the private key encrypted? What encryption algorithm is used? Who has access to the decryption keys? This is a non-exhaustive list and we recommend doing further research. @@ -44,28 +38,28 @@ Here are some important criteria to consider when choosing an owner. * **Key recovery**: If the user forgets their password or loses their passkey, what recovery methods does the provider offer? If the provider stores a backup copy of the private key or MPC key shares, where are those backups stored and who has access to them? -## Types of owners +## Types of signers ### Non-custodial wallets -Non-custodial wallet providers store private keys such that they cannot access the private key without the user’s involvement. For example, the user must provide a password or passkey that only they know in order to decrypt the private key stored by the provider. Users benefit from heightened security, while remaining in control of their private keys at all times. This is similar to a safety deposit box vault: the provider secures the bank vault but only the user has access to the individual safety deposit boxes (e.g. wallets). +Non-custodial wallet providers store private keys such that they cannot access the private key without the user's involvement. For example, the user must provide a password or passkey that only they know in order to decrypt the private key stored by the provider. Users benefit from heightened security, while remaining in control of their private keys at all times. This is similar to a safety deposit box vault: the provider secures the bank vault but only the user has access to the individual safety deposit boxes (e.g. wallets). **Example**: Alchemy, Turnkey, Magic ### MPC wallets (non-custodial) -Multi-Party Computation (MPC) providers split the owner account private key into key shares that are then distributed to a number of share holders. Share holders only know the value of their key share and transaction holders can sign transactions without revealing their key shares to other holders. +Multi-Party Computation (MPC) providers split the signer account private key into key shares that are then distributed to a number of share holders. Share holders only know the value of their key share and transaction holders can sign transactions without revealing their key shares to other holders. Valid signatures do not always require all shares to sign a transaction. MPC providers can set a threshold, requiring a certain number of shares for a signature to be valid. Common configurations are 2 of 2 shares or 2 of 3 shares. By requiring multiple shares, MPC models mitigate the risks associated with a single key being compromised. -Some MPC providers offer recovery services in which key share(s) are backed up in the service provider’s cloud, on the end user’s device, or in the end user’s cloud (e.g. iCloud or Google Drive). When evaluating an MPC provider, understand where each key share is stored. +Some MPC providers offer recovery services in which key share(s) are backed up in the service provider's cloud, on the end user's device, or in the end user's cloud (e.g. iCloud or Google Drive). When evaluating an MPC provider, understand where each key share is stored. **Example**: Privy, Fireblocks MPC, Portal, Capsule, WalletKit There are two common approaches to MPC. - Traditionally, MPC services leveraged SSSS (Shamir’s Secret Shard Sharing). This approach generates a private key in one location and then the shares are distributed to the parties involved. When a user wants to sign, they need to retrieve N of M shares and reconstruct the key locally. + Traditionally, MPC services leveraged SSSS (Shamir's Secret Shard Sharing). This approach generates a private key in one location and then the shares are distributed to the parties involved. When a user wants to sign, they need to retrieve N of M shares and reconstruct the key locally. An improvement on SSSS is Threshold Signature Scheme (TSS). In this model, the key is never recreated during signing. Instead, each party is given the message to sign and then signs the payload locally before broadcasting the signature to the rest of the group. This allows for the key material to remain private and deconstructed. @@ -76,13 +70,13 @@ Some MPC providers offer recovery services in which key share(s) are backed up i ### Decentralized MPC network (non-custodial) -A decentralized MPC network is an extension on the MPC approach outlined above. Instead of relying on a single, centralized service to store a key share and initiate signature requests, an MPC network distributes this responsibility across many nodes in a network. The user’s private key is split into many key shares with each share store by a different node. The user may request signatures from the network and a valid signature will be produced if and only if a threshold number of nodes agree to sign the request. +A decentralized MPC network is an extension on the MPC approach outlined above. Instead of relying on a single, centralized service to store a key share and initiate signature requests, an MPC network distributes this responsibility across many nodes in a network. The user's private key is split into many key shares with each share store by a different node. The user may request signatures from the network and a valid signature will be produced if and only if a threshold number of nodes agree to sign the request. Examples: Lit Protocol, Web3Auth (Torus Network) ### Self-custodial wallet -Self-custodial wallets store the private key locally where only the end user can access it. For example, the user may store their seed phrase in a browser extension, in a mobile app using their phone’s secure enclave, or in a hardware wallet. When using a self-custodial wallet, the user is the only one with the power to sign transactions. +Self-custodial wallets store the private key locally where only the end user can access it. For example, the user may store their seed phrase in a browser extension, in a mobile app using their phone's secure enclave, or in a hardware wallet. When using a self-custodial wallet, the user is the only one with the power to sign transactions. Self-custodial wallets require the user to maintain good security hygiene at all times. They also rely on the user to backup a copy of their private key in the event the wallet is lost or destroyed. If the user loses access to the device on which their private key is stored, they will have no way to recover the account unless they backed up the private key in another device or location. @@ -90,19 +84,19 @@ Self-custodial wallets require the user to maintain good security hygiene at all ### Custodial wallet -Custodial wallet providers have full control over the user’s private key and sign transactions on behalf of the user. These services typically implement security measures to ensure that only the authorized user(s) can request a signature. These providers are also typically regulated entities (e.g., qualified custodians). The user must trust this service provider to securely store the private key and sign transactions if and only if the user wishes. +Custodial wallet providers have full control over the user's private key and sign transactions on behalf of the user. These services typically implement security measures to ensure that only the authorized user(s) can request a signature. These providers are also typically regulated entities (e.g., qualified custodians). The user must trust this service provider to securely store the private key and sign transactions if and only if the user wishes. **Example**: Coinbase Custody, Bitgo -## Owner interfaces +## Signer interfaces -The `SmartWalletClient` accepts any owner that conforms to standard [viem](https://viem.sh/) account interfaces. The `signer` parameter of `createSmartWalletClient` accepts: +The `SmartWalletClient` accepts any signer that conforms to standard [viem](https://viem.sh/) account interfaces. The `signer` parameter of `createSmartWalletClient` accepts: 1. [**`LocalAccount`**](https://viem.sh/docs/accounts/local) — A viem local account, such as one created with [`privateKeyToAccount`](https://viem.sh/docs/accounts/local/privateKeyToAccount) or [`toAccount`](https://viem.sh/docs/accounts/local/toAccount). Useful for private key signers, hardware wallets, or custom account implementations. 2. [**Viem `WalletClient`**](https://viem.sh/docs/clients/wallet) — A viem wallet client with a mounted account. Since a wallet client can wrap any [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193) compliant provider, this is useful for connecting third-party embedded wallet providers or browser extension wallets. -For [EIP-7702](/docs/wallets/transactions/using-eip-7702) delegation, the owner must support `signAuthorization`. See the [third-party authentication integration guide](/docs/wallets/third-party/signers/custom-integration) for details on bringing your own authentication provider. +For [EIP-7702](/docs/wallets/transactions/using-eip-7702) delegation, the signer must support `signAuthorization`. See the [third-party signer integration guide](/docs/wallets/third-party/signers/custom-integration) for details on bringing your own signer. *** -*Disclaimer: This page refers to third-party services, products software, technology, and content (collectively, “Third-Party Services”) that may be integrated or interact with Alchemy’s software and services. Alchemy is not responsible for any Third-Party Service, or for any compatibility issues, errors, or bugs caused in whole or in part by the Third-Party Service or any update or upgrade thereto. Your use of any Third-Party Service is at your own risk. You are responsible for obtaining any associated licenses and consents to the extent necessary for you to use the Third-Party Services. Your use of the Third-Party Services may be subject to separate terms and conditions set forth by the provider (including disclaimers or warnings), separate fees or charges, or a separate privacy notice. You are responsible for understanding and complying with any such terms or privacy notice.* +*Disclaimer: This page refers to third-party services, products software, technology, and content (collectively, "Third-Party Services") that may be integrated or interact with Alchemy's software and services. Alchemy is not responsible for any Third-Party Service, or for any compatibility issues, errors, or bugs caused in whole or in part by the Third-Party Service or any update or upgrade thereto. Your use of any Third-Party Service is at your own risk. You are responsible for obtaining any associated licenses and consents to the extent necessary for you to use the Third-Party Services. Your use of the Third-Party Services may be subject to separate terms and conditions set forth by the provider (including disclaimers or warnings), separate fees or charges, or a separate privacy notice. You are responsible for understanding and complying with any such terms or privacy notice.* diff --git a/content/wallets/pages/authorization/policies/overview.mdx b/content/wallets/pages/authorization/policies/overview.mdx index 833cf7c16..b09a45a64 100644 --- a/content/wallets/pages/authorization/policies/overview.mdx +++ b/content/wallets/pages/authorization/policies/overview.mdx @@ -4,7 +4,7 @@ description: Overview of Smart Wallet Policies and Session Keys slug: wallets/signer/policies/overview --- -**Smart Wallets** enable seamless crypto experiences with gas sponsorship, batched transactions, and chain abstraction. Secured by non-custodial Trusted Execution Environments (TEEs) and enterprise-grade audited smart wallets, they protect user assets with both offchain and onchain safeguards. +**Wallet APIs** enable seamless crypto experiences with gas sponsorship, batched transactions, and chain abstraction. Secured by non-custodial Trusted Execution Environments (TEEs) and enterprise-grade audited smart wallets, they protect user assets with both offchain and onchain safeguards. Policies allow you to set rules and constraints governing how smart wallets operate, ensuring security and control over onchain actions. Using the policy dashboard, configure rules such as spending limits, contract allowlists, or denylists. This overview explains how to leverage policies to further secure your smart wallet. diff --git a/content/wallets/pages/authorization/smart-account-types/choosing-a-smart-account.mdx b/content/wallets/pages/authorization/smart-account-types/choosing-a-smart-account.mdx index 4d7f42ad0..876c9ec01 100644 --- a/content/wallets/pages/authorization/smart-account-types/choosing-a-smart-account.mdx +++ b/content/wallets/pages/authorization/smart-account-types/choosing-a-smart-account.mdx @@ -1,6 +1,6 @@ --- title: Choosing a Smart Account -description: Learn about different smart account implementations to use with Smart Wallets +description: Learn about different smart account implementations to use with Wallet APIs slug: wallets/smart-contracts/choosing-a-smart-account --- @@ -8,7 +8,7 @@ slug: wallets/smart-contracts/choosing-a-smart-account Smart wallets are the key to unlocking the best online user experience -- enabling features that have never been possible with traditional EOAs (externally-owned-accounts) like session keys, granular permissions, different authentication methods like email and passkeys, and much more. -Smart Wallets offers a clean SDK to provide your users with top-tier smart wallet features. The most powerful, most natively-supported account is Modular Account v2. +Wallet APIs offers a clean SDK to provide your users with top-tier smart wallet features. The most powerful, most natively-supported account is Modular Account v2. Modular Account v2 is the most fully-featured and efficient smart account available, allowing for limitless modular expansion. The account is secured by extensive [audits](https://github.com/alchemyplatform/modular-account/tree/develop/audits) as well as a [bug bounty on Cantina.](https://cantina.xyz/bounties/246de4d3-e138-4340-bdfc-fc4c95951491) @@ -26,7 +26,7 @@ Modular Account v2 also supports [EIP-7702](https://github.com/ethereum/EIPs/blo ## Light Account -While Modular Account v2 is the recommended choice, Smart Wallets also supports other audited and gas-optimized smart account implementations. +While Modular Account v2 is the recommended choice, Wallet APIs also supports other audited and gas-optimized smart account implementations. [Light Account](/docs/wallets/smart-contracts/other-accounts/light-account) is a minimalist smart account optimized for **low gas costs**. It is based on **Ethereum Foundation's SimpleAccount** but adds key improvements like: @@ -37,5 +37,5 @@ While **Light Account is fully audited**, it does **not** support **advanced mod ## Bring your own smart account -If you have your own smart account, you can integrate it with Smart Wallets.\ +If you have your own smart account, you can integrate it with Wallet APIs.\ See our guide on [using a custom smart account](/docs/wallets/third-party/smart-contracts). diff --git a/content/wallets/pages/bundler-api/bundler-faqs.mdx b/content/wallets/pages/bundler-api/bundler-faqs.mdx index 6d9dddf2d..744aaeb7f 100644 --- a/content/wallets/pages/bundler-api/bundler-faqs.mdx +++ b/content/wallets/pages/bundler-api/bundler-faqs.mdx @@ -147,7 +147,7 @@ Recommended Actions for Calculating `maxFeePerGas`: - Use the [Smart Wallets + Use the [Wallet APIs SDK](https://www.alchemy.com/docs/wallets) to minimize the complexities of estimating userOp gas fees. diff --git a/content/wallets/pages/bundler-api/bundler-sponsored-operations.mdx b/content/wallets/pages/bundler-api/bundler-sponsored-operations.mdx index 64fd1c634..14e504890 100644 --- a/content/wallets/pages/bundler-api/bundler-sponsored-operations.mdx +++ b/content/wallets/pages/bundler-api/bundler-sponsored-operations.mdx @@ -66,7 +66,7 @@ To enable bundler sponsorship, you need to: ### Example implementation -Here's a complete example using Smart Wallets to send a sponsored user operation: +Here's a complete example using Wallet APIs to send a sponsored user operation: ```typescript import { LocalAccountSigner } from "@aa-sdk/core"; @@ -137,7 +137,7 @@ const PRIVATE_KEY = process.env.PRIVATE_KEY!; * A valid API key with Bundler API access * A configured Gas Manager policy of type **Bundler Sponsored Operations** with Max Spend Per UO set -* Smart Wallets SDK or equivalent setup for creating and signing user operations +* Wallet APIs SDK or equivalent setup for creating and signing user operations Ensure your Bundler Sponsored Operations policy has sufficient balance and that the Max Spend Per UO limit is set appropriately. If the policy balance is insufficient or the operation exceeds the spending limit, the user operation fails. @@ -165,4 +165,4 @@ As this feature is currently in beta, be aware of: * [Bundler API Quickstart](/docs/reference/bundler-api-quickstart) * [Gas Manager Admin API](/docs/wallets/api-reference/gas-manager-admin-api/admin-api-endpoints/get-policy) * [Compute Unit Costs](/docs/reference/compute-unit-costs) -* [Smart Wallets documentation](/docs/wallets) +* [Wallet APIs documentation](/docs/wallets) diff --git a/content/wallets/pages/concepts/intro-to-account-kit.mdx b/content/wallets/pages/concepts/intro-to-account-kit.mdx index 4c8fe88e2..d6ad03d34 100644 --- a/content/wallets/pages/concepts/intro-to-account-kit.mdx +++ b/content/wallets/pages/concepts/intro-to-account-kit.mdx @@ -1,20 +1,20 @@ --- -title: Intro to Smart Wallets -description: Introduction to Smart Wallets and smart accounts +title: Intro to Wallet APIs +description: Introduction to Wallet APIs and smart accounts slug: wallets/concepts/intro-to-account-kit --- -Smart Wallets is your all-in-one toolkit for building zero-friction sign-up and transaction flows. But what’s **really** happening under the hood? +Wallet APIs is your all-in-one toolkit for building zero-friction sign-up and transaction flows. But what’s **really** happening under the hood? -Smart Wallets abstracts away the complexity of smart wallets, but as a builder it’s useful to have a foundational understanding of how it works. This way, you can make informed decisions and unlock the full potential of smart wallets. +Wallet APIs abstracts away the complexity of smart wallets, but as a builder it’s useful to have a foundational understanding of how it works. This way, you can make informed decisions and unlock the full potential of smart wallets. -Unlike other embedded wallet providers that only solve sign-up and key management, Smart Wallets goes further by streamlining the transaction flow with features like gas sponsorship. How? Through **smart wallets**. **Here’s how it works.** +Unlike other embedded wallet providers that only solve sign-up and key management, Wallet APIs goes further by streamlining the transaction flow with features like gas sponsorship. How? Through **smart wallets**. **Here’s how it works.** ## Smart wallets: programmable wallets, not EOAs
- With Smart Wallets, deploy a **smart wallet** for + With Wallet APIs, deploy a **smart wallet** for each user instead of an Externally Owned Account (EOA). This smart wallet securely stores the user’s assets, such as tokens or NFTs.
@@ -28,7 +28,7 @@ Unlike other embedded wallet providers that only solve sign-up and key managemen Unlike EOAs, smart wallets are programmable and can include logic. Learn more about [smart wallets](https://www.alchemy.com/overviews/what-is-account-abstraction). -Smart Wallets comes with enterprise-grade, audited smart account implementations. Use [Modular Account v2](/docs/wallets/smart-contracts/modular-account-v2/overview) for the best experience. Learn more and [choose](/docs/wallets/smart-contracts/choosing-a-smart-account) the smart wallet that best fits your needs or bring your own smart account. +Wallet APIs comes with enterprise-grade, audited smart account implementations. Use [Modular Account v2](/docs/wallets/smart-contracts/modular-account-v2/overview) for the best experience. Learn more and [choose](/docs/wallets/smart-contracts/choosing-a-smart-account) the smart wallet that best fits your needs or bring your own smart account. #### Why smart wallets? @@ -36,7 +36,7 @@ Smart wallets unlock powerful features like gas sponsorship and transaction batc Smart wallets provide flexibility, security, and additional functionality over EOAs. Features like social recovery, two-factor authentication, multi-owner support, and ownership transfer become possible with smart wallets. -In Smart Wallets, this concept will manifest as a [smart wallet](/docs/wallets/resources/types#smartcontractaccount). +In Wallet APIs, this concept will manifest as a [smart wallet](/docs/wallets/resources/types#smartcontractaccount). ## Authentication: web2 login and key management @@ -50,17 +50,17 @@ In Smart Wallets, this concept will manifest as a [smart wallet](/docs/wallets/r
-Using Smart Wallets, secure a user’s smart wallet with email, social login, or passkeys, using non-custodial authentication infrastructure. Smart wallets support advanced use cases, such as multiple owners and ownership transfer, offering more utility than EOAs. +Using Wallet APIs, secure a user’s smart wallet with email, social login, or passkeys, using non-custodial authentication infrastructure. Smart wallets support advanced use cases, such as multiple owners and ownership transfer, offering more utility than EOAs. With this setup, users can sign-up, log in, and sign transactions using familiar web2 user experiences. -In Smart Wallets, this concept will manifest as an [owner](/docs/wallets/signer/what-is-a-signer). +In Wallet APIs, this concept will manifest as an [owner](/docs/wallets/signer/what-is-a-signer). ## Sending transactions
- With Smart Wallets, [sending transactions](/docs/wallets/transactions/send-transactions) is as straightforward as sending "normal" EOA transactions. Under the hood, the SDK handles all the complexity of packaging and submitting transactions. + With Wallet APIs, [sending transactions](/docs/wallets/transactions/send-transactions) is as straightforward as sending "normal" EOA transactions. Under the hood, the SDK handles all the complexity of packaging and submitting transactions.
@@ -76,7 +76,7 @@ For most use cases, you only need a [Smart Account Client](/docs/wallets/concept
- With gas sponsorship, your users won't need to worry about having assets in their accounts to pay for gas. Using [Smart Wallets](/docs/wallets/transactions/sponsor-gas), configure a gas manager policy, insert your policy ID into the SDK, and the Gas Manager handles the rest. + With gas sponsorship, your users won't need to worry about having assets in their accounts to pay for gas. Using [Wallet APIs](/docs/wallets/transactions/sponsor-gas), configure a gas manager policy, insert your policy ID into the SDK, and the Gas Manager handles the rest.
@@ -86,14 +86,14 @@ For most use cases, you only need a [Smart Account Client](/docs/wallets/concept ## Conclusion -Smart Wallets makes it straightforward to build a web2 user experience from sign-up to transaction. It includes everything you need to bring users onchain: +Wallet APIs makes it straightforward to build a web2 user experience from sign-up to transaction. It includes everything you need to bring users onchain: * Non-custodial **authentication** with web2 login * Secure and flexible **smart wallets** to store assets * **Gas Manager** to sponsor gas * Reliable and scalable **transaction sending** infrastructure -Smart Wallets abstracts away the intricacies, allowing you to focus on building great user experiences. +Wallet APIs abstracts away the intricacies, allowing you to focus on building great user experiences. **Now, get started with the [quickstart](/docs/wallets/react/quickstart)!** diff --git a/content/wallets/pages/concepts/middleware.mdx b/content/wallets/pages/concepts/middleware.mdx index 25f8ebd3f..61c9489d6 100644 --- a/content/wallets/pages/concepts/middleware.mdx +++ b/content/wallets/pages/concepts/middleware.mdx @@ -24,7 +24,7 @@ Middleware allows you to avoid having to write the same flows over and over when As mentioned above, the client can be configured with a series of middleware that always run in the same order: 1. `dummyPaymasterAndData` - Generates a dummy paymaster and data for gas estimation if using a paymaster (default: noop) -2. `feeEstimator` - Estimates the fees for a transaction. If you are using Smart Wallets RPCs, use the [`alchemyFeeEstimator`](/docs/wallets/reference/account-kit/infra) middleware. +2. `feeEstimator` - Estimates the fees for a transaction. If you are using Wallet APIs RPCs, use the [`alchemyFeeEstimator`](/docs/wallets/reference/account-kit/infra) middleware. 3. `gasEstimator` - Estimates the gas limits for a transaction. The default middleware calls the underlying RPC to `eth_estimateUserOperationGas`. 4. `customMiddleware` - Allows you to define custom middleware to run before requesting sponsorship if there are any additional steps you need to take before requesting sponsorship. (default: noop) 5. `paymasterAndData` - Requests gas sponsorship. (default: noop) diff --git a/content/wallets/pages/core/overview.mdx b/content/wallets/pages/core/overview.mdx index 43a49a953..68fee7c46 100644 --- a/content/wallets/pages/core/overview.mdx +++ b/content/wallets/pages/core/overview.mdx @@ -1,10 +1,10 @@ --- title: Other Javascript Frameworks -description: How to use Smart Wallets with other JavaScript frameworks +description: How to use Wallet APIs with other JavaScript frameworks slug: wallets/core/overview --- -There are no current plans to support other JavaScript front-end frameworks such as Vue, Angular, or Svelte. However, there are a number of different ways to integrate Smart Wallets within your application if you're using one of these JavaScript frameworks. +There are no current plans to support other JavaScript front-end frameworks such as Vue, Angular, or Svelte. However, there are a number of different ways to integrate Wallet APIs within your application if you're using one of these JavaScript frameworks. If you are using a different JavaScript framework and would like to contribute @@ -14,7 +14,7 @@ There are no current plans to support other JavaScript front-end frameworks such ## Using `@account-kit/core` The [React](/docs/wallets/react/quickstart) package is built on top of the `@account-kit/core` package. This package is the core state management library for all of the utilities found within the React package. All of the guides in this section will focus on -how you can leverage this package to build your own integration with Smart Wallets, while still leveraging all of the reactive utilities that the React package provides. +how you can leverage this package to build your own integration with Wallet APIs, while still leveraging all of the reactive utilities that the React package provides. ## Using the lower level SDKs diff --git a/content/wallets/pages/core/quickstart.mdx b/content/wallets/pages/core/quickstart.mdx index f00169036..a95b85987 100644 --- a/content/wallets/pages/core/quickstart.mdx +++ b/content/wallets/pages/core/quickstart.mdx @@ -1,6 +1,6 @@ --- title: Core Quickstart -description: Learn how to get started with the Smart Wallets Core package +description: Learn how to get started with the Wallet APIs Core package slug: wallets/core/quickstart --- @@ -33,7 +33,7 @@ your client. 1. Create an app in the [dashboard](https://dashboard.alchemy.com/signup) and copy the **API Key**. -2. Create a **`configuration`** in the [`Smart Wallets` dashboard](https://dashboard.alchemy.com/services/smart-wallets/configuration) to enable login methods. +2. Create a **`configuration`** in the [`Wallet APIs` dashboard](https://dashboard.alchemy.com/services/smart-wallets/configuration) to enable login methods. 3. Create a policy in your [gas manager dashboard](https://dashboard.alchemy.com/services/gas-manager/configuration) to set rules for sponsorship. @@ -141,6 +141,6 @@ Now that you have basic authentication and transactions working, explore additio - Learn how to configure Smart Wallets for server-side rendered applications. + Learn how to configure Wallet APIs for server-side rendered applications. diff --git a/content/wallets/pages/features.mdx b/content/wallets/pages/features.mdx index 037bfe930..5dc85b75a 100644 --- a/content/wallets/pages/features.mdx +++ b/content/wallets/pages/features.mdx @@ -1,38 +1,59 @@ --- title: Features -description: Smart Wallet features and capabilities. +description: Wallet APIs features and capabilities. slug: wallets/resources/features --- -# Smart Wallet features +# Wallet APIs features Leverage the [#1 smart wallet provider](https://www.bundlebear.com/erc4337-factories/all) to deploy and grow your app to millions of users. [Save costs](https://www.alchemy.com/blog/the-most-affordable-smart-wallet) as you scale and never worry about going down with 99.99% uptime. -Don’t see a feature you’re looking for? [Get in touch](mailto:smart-wallets@alchemy.com). - -| Feature | Description | -| ------------------------- | --------------------------------------------------------------------------------- | -| **Social Login** | Google, Apple, Discord, Twitter authentication | -| **Email/SMS** | Email and phone number based wallet creation | -| **Gas Sponsorship** | Sponsor gas fees with flexible policies | -| **Batching transactions** | Group and execute multiple actions in a single onchain transaction | -| **APIs** | Wallet APIs for server side wallet management and transaction sending. | -| **Multi-owner accounts** | Allow multiple independent addresses to control and manage the same smart wallet | -| **Token Balances** | Getting token balances, metadata and more | -| **Spending Limits** | Daily, weekly, or per-transaction limits | -| **Session Keys** | Temporary keys for specific operations | -| **Social Recovery** | Recover wallets through trusted contacts | -| **EOA connection** | Allow web3 native users to bring their existing EOA without additional connectors | -| **White-labeled UI** | Customize the wallet interface to match your brand’s look and feel. | -| **BYO JWT Auth** | Bring your existing authentication system to secure wallets (JWT + OIDC) | -| **EIP-7702 Support** | Upgrade EOA to smart wallets | -| **Multi-factor Auth** | Adds an extra layer of security by requiring multiple forms of verification | -| **Passkeys** | Onchain and offchain passkey authentication | -| **Prices API** | Fetch current and historical token prices | -| **Webhooks** | Onchain event notifications | -| **Modular Plugins** | ERC-6900 modular wallets for advanced functionality. | -| **Alchemy Bridge** | A secure and efficient cross-chain bridge | -| **Multi-signature** | Multiple signature requirements for transactions | -| **Ethereum** | Ethereum mainnet and testnets | -| **EVM L2s** | All Ethereum compatible mainnet and testnets | -| **Solana** | Solana mainnet and testnet | +Don't see a feature you're looking for? [Get in touch](mailto:smart-wallets@alchemy.com). + +## Transaction capabilities + +| Feature | Description | +| ----------------------------- | --------------------------------------------------------------------------------- | +| **Gas Sponsorship** | Sponsor gas fees with flexible policies | +| **Pay gas with any token** | Let users pay gas with stablecoins or the sell-side token | +| **Batching transactions** | Group and execute multiple actions in a single onchain transaction | +| **Parallel transactions** | Send multiple transactions in parallel without nonce conflicts | +| **Session Keys** | Temporary keys for specific operations | +| **Spending Limits** | Daily, weekly, or per-transaction limits | +| **EIP-7702 Support** | Upgrade EOA to smart wallets | +| **Swap tokens** | Swap across networks, seamlessly | +| **Retry transactions** | Automatically retry transactions stuck in mempool | + +## Integration capabilities + +| Feature | Description | +| ----------------------------- | --------------------------------------------------------------------------------- | +| **Social Login** | Google, Apple, Discord, Twitter authentication | +| **Email/SMS** | Email and phone number based wallet creation | +| **Passkeys** | Onchain and offchain passkey authentication | +| **BYO JWT Auth** | Bring your existing authentication system to secure wallets (JWT + OIDC) | +| **Multi-factor Auth** | Adds an extra layer of security by requiring multiple forms of verification | +| **White-labeled UI** | Customize the wallet interface to match your brand's look and feel | +| **EOA connection** | Allow web3 native users to bring their existing EOA without additional connectors | +| **Multi-owner accounts** | Allow multiple independent addresses to control and manage the same smart wallet | +| **Multi-signature** | Multiple signature requirements for transactions | +| **Social Recovery** | Recover wallets through trusted contacts | +| **Modular Plugins** | ERC-6900 modular wallets for advanced functionality | +| **Wallet APIs** | Server-side wallet management and transaction sending | + +## Data & platform + +| Feature | Description | +| ----------------------------- | --------------------------------------------------------------------------------- | +| **Token Balances** | Getting token balances, metadata and more | +| **Prices API** | Fetch current and historical token prices | +| **Webhooks** | Onchain event notifications | +| **Alchemy Bridge** | A secure and efficient cross-chain bridge | + +## Supported networks + +| Feature | Description | +| ----------------------------- | --------------------------------------------------------------------------------- | +| **Ethereum** | Ethereum mainnet and testnets | +| **EVM L2s** | All Ethereum compatible mainnet and testnets | +| **Solana** | Solana mainnet and testnet | diff --git a/content/wallets/pages/guide-template.mdx b/content/wallets/pages/guide-template.mdx index 7887f9073..3501b7dad 100644 --- a/content/wallets/pages/guide-template.mdx +++ b/content/wallets/pages/guide-template.mdx @@ -30,7 +30,7 @@ List any setup or knowledge required: Example: * API key from your [dashboard](https://dashboard.alchemy.com/apps) -* [Smart Wallets installed and configured in your project](/docs/wallets/pages/react/setup.mdx). +* [Wallet APIs installed and configured in your project](/docs/wallets/pages/react/setup.mdx). * [A "pay gas with any token" policy](https://dashboard.alchemy.com/gas-manager/policy/create). ## Implementation diff --git a/content/wallets/pages/index.mdx b/content/wallets/pages/index.mdx index c6b7cfaa9..1eebf600e 100644 --- a/content/wallets/pages/index.mdx +++ b/content/wallets/pages/index.mdx @@ -1,146 +1,151 @@ --- -title: Smart Wallets -description: Build zero-friction user onboarding and transactions end-to-end with one SDK. +title: Wallet APIs +description: Simple APIs to send transactions with advanced capabilities. slug: wallets layout: overview hide-toc: true --- - - -smart wallets overview - - - Send your first transaction using the SDK or API. +Simple APIs to send transactions with advanced capabilities. Gas sponsorship, batching, retries, and more — all handled for you. + + + Send your first gasless transaction in under 5 minutes. -## Everything You Need for Onchain Applications +*** - - - Email, social, biometric, or EOA login. - - - Remove gas fees for users. - - - Multiple transactions in 1 click on EVM & Solana. - - - Pre-built UI components or fully whitelabel. +## How it works + + + + Build one or more calls - transfer, swap, — anything. + + + + Bring your own embedded wallet or key to sign. + + + + We submit, optimize gas, sponsor fees, and retry if needed. + + + + Get status and transaction data through simple endpoints. -## Frameworks +*** - - - Pre-built React components and hooks. - - - Native mobile wallet experiences. - - - Framework-agnostic implementation. - - - Server-side wallet management. +## Capabilities + + + + Cover gas fees so users never need ETH and you never hold crypto on your balance sheet. Set custom spending rules. + + + + Let users pay gas with USDC, USDT, or any ERC-20 token instead of the + native currency. + + + + Sponsor fees & rent and say goodbye to "insufficient fees". + + + + Combine multiple calls into a single atomic transaction — approve + swap, + mint + transfer, and more. + + + + Stuck transactions are automatically re-priced and resubmitted so they + land on-chain. + + + + Grant scoped, time-limited signing permissions for autonomous signing. + + + + Fire multiple transactions simultaneously without nonce collisions. + + + + Same-chain and cross-chain token swaps with built-in routing. + + + + Track the status of the transaction via APIs. + + + + Debug failed transactions and reverts. + + + + Upgrade embedded EOA users to smart wallets. -## Common Starting Places +*** + +## What it looks like + +```typescript +// Prepare, sign, and send — in one call +const { id } = await client.sendCalls({ + calls: [ + { to: "0xContractA", data: "0x..." }, + { to: "0xContractB", data: "0x..." }, + ], +}); + +// Track +const status = await client.waitForCallsStatus({ id }); +``` +Use the TypeScript SDK or call the REST APIs directly from any language. + +*** + +## Wallet integration + +Compatible with any embedded wallet or key management solution. - - Build an onchain app from scratch with wallets and transactions. - - - Upgrade to smart wallets using EIP-7702 or direct wagmi integration. - - - Add wallet and transaction functionality to existing web2 applications. - - - Server-side applications with signing and sending on your backend. + + Embedded wallets with social login, email OTP, and passkeys. + + + Integrate other embedded wallets or any viem compatible provider as a signer. -## Resources +*** + +## Explore - - Troubleshoot issues or get in touch. - - - End-to-end guides for common features. - - - Save costs as you scale. + + See every EVM and Solana network supported. + + + + End-to-end guides: send USDC, Hyperliquid, Aave, and more. + + + + Full REST API reference for server-side wallet management. + + + + Estimate costs and compare plans. + + + + Common questions and troubleshooting. + + + + Get help from the Alchemy team. diff --git a/content/wallets/pages/infra/quickstart.mdx b/content/wallets/pages/infra/quickstart.mdx index 39b5c2509..745b63427 100644 --- a/content/wallets/pages/infra/quickstart.mdx +++ b/content/wallets/pages/infra/quickstart.mdx @@ -1,10 +1,10 @@ --- title: Quickstart -description: Get started with Smart Wallets infrastructure +description: Get started with Wallet APIs infrastructure slug: wallets/infra/quickstart --- -Smart Wallets is composed of some lower-level libraries if you're looking for further customization of your stack or want more control over how you build your application. +Wallet APIs is composed of some lower-level libraries if you're looking for further customization of your stack or want more control over how you build your application. One of these libraries is `@account-kit/infra` which allows you to interact with our infrastructure directly, while bringing your own smart contracts or signer. In this guide, learn how to get started with `@account-kit/infra` and send a transaction. For smart contracts, the guide leverages `@account-kit/smart-contracts` to use `LightAccount`, but you're free to use any smart contract you'd like. diff --git a/content/wallets/pages/low-level-infra/gas-manager/gas-sponsorship/using-sdk/pay-gas-with-any-erc20-token.mdx b/content/wallets/pages/low-level-infra/gas-manager/gas-sponsorship/using-sdk/pay-gas-with-any-erc20-token.mdx index aacd310f1..ca9b4aff9 100644 --- a/content/wallets/pages/low-level-infra/gas-manager/gas-sponsorship/using-sdk/pay-gas-with-any-erc20-token.mdx +++ b/content/wallets/pages/low-level-infra/gas-manager/gas-sponsorship/using-sdk/pay-gas-with-any-erc20-token.mdx @@ -7,7 +7,7 @@ slug: wallets/low-level-infra/gas-manager/gas-sponsorship/using-sdk/pay-gas-with --- Gas fees paid in the native gas token can feel foreign to users that primarily hold stablecoins or your app’s own token. -With Smart Wallets, enable your users to pay gas with ERC-20 tokens beyond the native gas token, like USDC or your own custom tokens, streamlining the user experience. +With Wallet APIs, enable your users to pay gas with ERC-20 tokens beyond the native gas token, like USDC or your own custom tokens, streamlining the user experience. **How it works:** The gas is fronted using the network’s native gas token and diff --git a/content/wallets/pages/low-level-infra/overview.mdx b/content/wallets/pages/low-level-infra/overview.mdx index 5303dc2fd..7665788dc 100644 --- a/content/wallets/pages/low-level-infra/overview.mdx +++ b/content/wallets/pages/low-level-infra/overview.mdx @@ -6,7 +6,7 @@ slug: wallets/transactions/low-level-infra/overview # Lower level infra overview -Smart Wallets is composed of some lower-level libraries if you're looking for further customization of your stack or want more control over how you build your application and use third party providers. +Wallet APIs is composed of some lower-level libraries if you're looking for further customization of your stack or want more control over how you build your application and use third party providers. One of these libraries is `@account-kit/infra` which allows you to interact with the infrastructure directly, while bringing your own smart contracts or authentication provider. If you do not need customization, use the Wallet APIs to simplify development. diff --git a/content/wallets/pages/low-level-infra/quickstart.mdx b/content/wallets/pages/low-level-infra/quickstart.mdx index 22466e8ef..ae9b625b0 100644 --- a/content/wallets/pages/low-level-infra/quickstart.mdx +++ b/content/wallets/pages/low-level-infra/quickstart.mdx @@ -1,6 +1,6 @@ --- title: Quickstart -description: Get started with Smart Wallets infrastructure +description: Get started with Wallet APIs infrastructure slug: wallets/low-level-infra/quickstart --- diff --git a/content/wallets/pages/low-level-infra/third-party-infrastructure/bundlers.mdx b/content/wallets/pages/low-level-infra/third-party-infrastructure/bundlers.mdx index 273982064..fa8deadce 100644 --- a/content/wallets/pages/low-level-infra/third-party-infrastructure/bundlers.mdx +++ b/content/wallets/pages/low-level-infra/third-party-infrastructure/bundlers.mdx @@ -1,6 +1,6 @@ --- title: Third Party Bundlers -description: Learn how to use a different RPC provider with Smart Wallets +description: Learn how to use a different RPC provider with Wallet APIs slug: wallets/low-level-infra/third-party-infrastructure/bundlers --- diff --git a/content/wallets/pages/low-level-infra/third-party-infrastructure/paymasters.mdx b/content/wallets/pages/low-level-infra/third-party-infrastructure/paymasters.mdx index 07cc756e9..be04a8a31 100644 --- a/content/wallets/pages/low-level-infra/third-party-infrastructure/paymasters.mdx +++ b/content/wallets/pages/low-level-infra/third-party-infrastructure/paymasters.mdx @@ -1,6 +1,6 @@ --- title: Third Party Paymasters -description: Learn how to use a 3rd party Paymaster with Smart Wallets +description: Learn how to use a 3rd party Paymaster with Wallet APIs slug: wallets/low-level-infra/third-party-infrastructure/paymasters --- diff --git a/content/wallets/pages/overview/sdk-concepts/intro-to-account-kit.mdx b/content/wallets/pages/overview/sdk-concepts/intro-to-account-kit.mdx index 15c89f4ab..9db41f7f8 100644 --- a/content/wallets/pages/overview/sdk-concepts/intro-to-account-kit.mdx +++ b/content/wallets/pages/overview/sdk-concepts/intro-to-account-kit.mdx @@ -1,20 +1,20 @@ --- -title: Intro to Smart Wallets -description: Introduction to Smart Wallets and smart accounts +title: Intro to Wallet APIs +description: Introduction to Wallet APIs and smart accounts slug: wallets/concepts/intro-to-account-kit --- -Smart Wallets is your all-in-one toolkit for building zero-friction sign-up and transaction flows. But what's **really** happening under the hood? +Wallet APIs is your all-in-one toolkit for building zero-friction sign-up and transaction flows. But what's **really** happening under the hood? -Smart Wallets abstracts away the complexity of smart accounts, but as a builder it's useful to have a foundational understanding of how it works. This way, you can make informed decisions and unlock the full potential of account abstraction. +Wallet APIs abstracts away the complexity of smart accounts, but as a builder it's useful to have a foundational understanding of how it works. This way, you can make informed decisions and unlock the full potential of account abstraction. -Unlike other embedded wallet providers that only solve sign-up and key management, Smart Wallets goes further by streamlining the transaction flow with features like gas sponsorship. How? Through **smart accounts**. **Here is how it works.** +Unlike other embedded wallet providers that only solve sign-up and key management, Wallet APIs goes further by streamlining the transaction flow with features like gas sponsorship. How? Through **smart accounts**. **Here is how it works.** ## Smart accounts: programmable wallets, not EOAs
- With Smart Wallets, you deploy a **smart account** for each user instead of + With Wallet APIs, you deploy a **smart account** for each user instead of an Externally Owned Account (EOA). This smart account securely stores the user's assets, such as tokens or NFTs.
@@ -28,7 +28,7 @@ Unlike other embedded wallet providers that only solve sign-up and key managemen Unlike EOAs, smart accounts are programmable and can include logic. When referring to smart accounts here, this typically means [ERC-4337](https://www.alchemy.com/overviews/what-is-account-abstraction) smart accounts. -Smart Wallets comes with enterprise-grade, audited smart account implementations. Use [Modular Account v2](/docs/wallets/smart-contracts/modular-account-v2/overview) for the best experience. Learn more and [choose](/docs/wallets/smart-contracts/choosing-a-smart-account) the smart account that best fits your needs or bring your own smart account. +Wallet APIs comes with enterprise-grade, audited smart account implementations. Use [Modular Account v2](/docs/wallets/smart-contracts/modular-account-v2/overview) for the best experience. Learn more and [choose](/docs/wallets/smart-contracts/choosing-a-smart-account) the smart account that best fits your needs or bring your own smart account. #### Why smart accounts? @@ -36,7 +36,7 @@ Smart accounts unlock powerful features like gas sponsorship and transaction bat Smart accounts provide flexibility, security, and additional functionality over EOAs. Features like social recovery, two-factor authentication, multi-owner support, and ownership transfer become possible with smart accounts. -In Smart Wallets, this concept manifests as a [Smart Contract Account](/docs/wallets/resources/types#smartcontractaccount). +In Wallet APIs, this concept manifests as a [Smart Contract Account](/docs/wallets/resources/types#smartcontractaccount). ## Authentication: web2 login and key management @@ -50,17 +50,17 @@ In Smart Wallets, this concept manifests as a [Smart Contract Account](/docs/wal
-[Using Smart Wallets](/docs/wallets/react/quickstart), you can secure a user's smart wallet with email, social login, or passkeys, using non-custodial authentication infrastructure. Smart wallets support advanced use cases, such as multiple owners and ownership transfer, offering more utility than EOAs. +[Using Wallet APIs](/docs/wallets/react/quickstart), you can secure a user's smart wallet with email, social login, or passkeys, using non-custodial authentication infrastructure. Smart wallets support advanced use cases, such as multiple owners and ownership transfer, offering more utility than EOAs. With this setup, users can sign up, log in, and sign transactions using familiar web2 user experiences. -In Smart Wallets, this concept manifests as a [Smart Account Signer](/docs/wallets/signer/what-is-a-signer). +In Wallet APIs, this concept manifests as a [Smart Account Signer](/docs/wallets/signer/what-is-a-signer). ## Sending transactions
- With Smart Wallets, [sending transactions](/docs/wallets/transactions/send-transactions) is as straightforward as sending "normal" EOA transactions. However, under the hood, you are sending [**User Operations (UOs)**](https://www.alchemy.com/overviews/user-operations) — a standardized pseudo-transaction object — that get bundled and submitted onchain. + With Wallet APIs, [sending transactions](/docs/wallets/transactions/send-transactions) is as straightforward as sending "normal" EOA transactions. However, under the hood, you are sending [**User Operations (UOs)**](https://www.alchemy.com/overviews/user-operations) — a standardized pseudo-transaction object — that get bundled and submitted onchain.
@@ -72,13 +72,13 @@ A User Operation (UO) is an ABI-encoded struct that describes a transaction to b A huge benefit of smart accounts is the ability to [batch transactions](/docs/wallets/transactions/send-batch-transactions) in one UO, creating simpler user experiences. For example, you can now approve and swap in one click, rather than signing, waiting, and sending multiple transactions. -In Smart Wallets, this concept manifests as a [Bundler Client](/docs/wallets/resources/types#bundlerclient), but for simplicity you may only need a [Smart Account Client](/docs/wallets/concepts/smart-account-client). +In Wallet APIs, this concept manifests as a [Bundler Client](/docs/wallets/resources/types#bundlerclient), but for simplicity you may only need a [Smart Account Client](/docs/wallets/concepts/smart-account-client). ## Gas Manager: sponsor gas
- With gas sponsorship, your users won't need to worry about having assets in their accounts to pay for gas. Using [Smart Wallets](/docs/wallets/transactions/sponsor-gas), configure a gas manager policy, insert your policy ID into the SDK, and the Gas Manager handles the rest. + With gas sponsorship, your users won't need to worry about having assets in their accounts to pay for gas. Using [Wallet APIs](/docs/wallets/transactions/sponsor-gas), configure a gas manager policy, insert your policy ID into the SDK, and the Gas Manager handles the rest.
@@ -88,14 +88,14 @@ In Smart Wallets, this concept manifests as a [Bundler Client](/docs/wallets/res ## Conclusion -Smart Wallets makes it straightforward to build a web2 user experience from sign-up to transaction. It includes everything you need to bring users onchain: +Wallet APIs makes it straightforward to build a web2 user experience from sign-up to transaction. It includes everything you need to bring users onchain: * Non-custodial **authentication** with web2 login * Secure and flexible **smart wallets** to store assets * **Gas Manager** to sponsor gas * Reliable and scalable **transaction infrastructure** to land transactions -Smart wallets may seem complex, but Smart Wallets abstracts away the intricacies, allowing you to focus on building great user experiences. +Smart wallets may seem complex, but Wallet APIs abstracts away the intricacies, allowing you to focus on building great user experiences. **Now, get started with the [quickstart](/docs/wallets/react/quickstart)!** diff --git a/content/wallets/pages/overview/supported-chains.mdx b/content/wallets/pages/overview/supported-chains.mdx index af7f8aa3b..c00cac464 100644 --- a/content/wallets/pages/overview/supported-chains.mdx +++ b/content/wallets/pages/overview/supported-chains.mdx @@ -1,9 +1,9 @@ --- -title: Smart Wallets supported chains -description: View all blockchain networks supported by Alchemy Smart Wallets, including mainnet and testnet chain IDs, bundler support, and gas sponsorship availability. +title: Wallet APIs supported chains +description: View all blockchain networks supported by Alchemy Wallet APIs, including mainnet and testnet chain IDs, bundler support, and gas sponsorship availability. --- -Smart Wallets are supported on all major chains! Login and authentication is chain-agnostic, so the SDK works everywhere out of the box. +Wallet APIs are supported on all major chains! Login and authentication is chain-agnostic, so the SDK works everywhere out of the box. To send transactions and sponsor gas, infrastructure is provided on the chains listed below. You can use multiple chains at once in the same app -- see the [multi-chain guide](/docs/wallets/recipes/multi-chain-setup) for details. @@ -11,7 +11,7 @@ Import chains from `@account-kit/infra`. ## Need another chain? -Support is constantly expanding and new chains can be spun up on request. This is the best way to ensure everything works seamlessly with Smart Wallets. +Support is constantly expanding and new chains can be spun up on request. This is the best way to ensure everything works seamlessly with Wallet APIs. Request support by reaching out to wallets@alchemy.com or filling out this @@ -19,7 +19,7 @@ Support is constantly expanding and new chains can be spun up on request. This i - Smart Wallets will be supported on **MegaETH mainnet** Day 1 (coming soon). + Wallet APIs will be supported on **MegaETH mainnet** Day 1 (coming soon). The chain identifiers (e.g. base-mainnet) are used for RPC endpoint URLs: diff --git a/content/wallets/pages/react-native/getting-started/app-integration.mdx b/content/wallets/pages/react-native/getting-started/app-integration.mdx index d505f128a..ae424e9e5 100644 --- a/content/wallets/pages/react-native/getting-started/app-integration.mdx +++ b/content/wallets/pages/react-native/getting-started/app-integration.mdx @@ -12,7 +12,7 @@ First, configure your application and your API key: 1. Create an app in the [dashboard](https://dashboard.alchemy.com/signup) and copy the **API key**. -2. Create a **`configuration`** in the [`Smart Wallets` dashboard](https://dashboard.alchemy.com/services/smart-wallets/configuration) to enable login methods. +2. Create a **`configuration`** in the [`Wallet APIs` dashboard](https://dashboard.alchemy.com/services/smart-wallets/configuration) to enable login methods. Hold onto your API key for the next step. diff --git a/content/wallets/pages/react-native/getting-started/getting-started-expo.mdx b/content/wallets/pages/react-native/getting-started/getting-started-expo.mdx index ae86c9cab..4623355b1 100644 --- a/content/wallets/pages/react-native/getting-started/getting-started-expo.mdx +++ b/content/wallets/pages/react-native/getting-started/getting-started-expo.mdx @@ -1,10 +1,10 @@ --- -title: Getting started with Smart Wallets on Expo -description: A guide on integrating Smart Wallets within a React Native Expo application +title: Getting started with Wallet APIs on Expo +description: A guide on integrating Wallet APIs within a React Native Expo application slug: wallets/react-native/getting-started/getting-started-expo --- -Follow these steps to get your environment set up for using Smart Wallets within a React Native application on Expo. +Follow these steps to get your environment set up for using Wallet APIs within a React Native application on Expo. @@ -161,9 +161,9 @@ import "react-native-get-random-values"; // rest of App.tsx ``` -## Install Smart Wallets +## Install Wallet APIs -That's it! Now install the packages you want from Smart Wallets and start building your React Native app. +That's it! Now install the packages you want from Wallet APIs and start building your React Native app. If you get an error about mismatched peer dependencies for React, you can use `--legacy-peer-deps` in your install commands to avoid this error. diff --git a/content/wallets/pages/react-native/getting-started/getting-started-quickstart.mdx b/content/wallets/pages/react-native/getting-started/getting-started-quickstart.mdx index 6000129d1..e3b4a7f24 100644 --- a/content/wallets/pages/react-native/getting-started/getting-started-quickstart.mdx +++ b/content/wallets/pages/react-native/getting-started/getting-started-quickstart.mdx @@ -1,6 +1,6 @@ --- -title: Getting started quickly with Smart Wallets on Expo -description: A guide on configuring a template using Smart Wallets with a React Native Expo application +title: Getting started quickly with Wallet APIs on Expo +description: A guide on configuring a template using Wallet APIs with a React Native Expo application slug: wallets/react-native/getting-started/getting-started-quickstart --- @@ -12,11 +12,11 @@ Run: npx create-expo-app@latest --template https://github.com/alchemyplatform/account-kit-expo-quickstart ``` -This creates a new Expo project with Smart Wallets set up. Next, set up your API key and accounts configuration. +This creates a new Expo project with Wallet APIs set up. Next, set up your API key and accounts configuration. 1. Create an app in the [dashboard](https://dashboard.alchemy.com/signup) and copy the **API key**. -2. Create a **`configuration`** in the [`Smart Wallets` dashboard](https://dashboard.alchemy.com/services/smart-wallets/configuration) to enable login methods. +2. Create a **`configuration`** in the [`Wallet APIs` dashboard](https://dashboard.alchemy.com/services/smart-wallets/configuration) to enable login methods. Follow the repository's [latest README instructions](https://github.com/alchemyplatform/account-kit-expo-quickstart/blob/main/README.md) on how to set your API key and run the application. diff --git a/content/wallets/pages/react-native/getting-started/getting-started-rn-bare.mdx b/content/wallets/pages/react-native/getting-started/getting-started-rn-bare.mdx index d1495df9e..bf9e4e611 100644 --- a/content/wallets/pages/react-native/getting-started/getting-started-rn-bare.mdx +++ b/content/wallets/pages/react-native/getting-started/getting-started-rn-bare.mdx @@ -1,17 +1,17 @@ --- -title: Getting started with Smart Wallets on bare React Native -description: A guide on integrating Smart Wallets within a Bare React Native application +title: Getting started with Wallet APIs on bare React Native +description: A guide on integrating Wallet APIs within a Bare React Native application slug: wallets/react-native/getting-started/getting-started-rn-bare --- This guide assumes you already have a Bare React Native app and want to - integrate Smart Wallets. If you are starting a project from scratch, + integrate Wallet APIs. If you are starting a project from scratch, follow the [Expo guide](/docs/wallets/react-native/getting-started/getting-started-expo) instead. -Here are the steps to get your environment set up for using Smart Wallets within a Bare React Native application. +Here are the steps to get your environment set up for using Wallet APIs within a Bare React Native application. @@ -118,9 +118,9 @@ import "react-native-get-random-values"; // rest of index.js ``` -## Install Smart Wallets and build! +## Install Wallet APIs and build! -That's it! Now install the packages you want from Smart Wallets and start building your React Native app. +That's it! Now install the packages you want from Wallet APIs and start building your React Native app. diff --git a/content/wallets/pages/react-native/overview.mdx b/content/wallets/pages/react-native/overview.mdx index 34bfc1d09..331ba4366 100644 --- a/content/wallets/pages/react-native/overview.mdx +++ b/content/wallets/pages/react-native/overview.mdx @@ -1,6 +1,6 @@ --- title: Using within React Native applications -description: A guide on integrating Smart Wallets within a React Native application +description: A guide on integrating Wallet APIs within a React Native application slug: wallets/react-native/overview --- @@ -13,17 +13,17 @@ A simple example for reference purposes is available [here](https://github.com/a ### Get up and running quickly using the quickstart template -Quickly spin up a new React Native (Expo) project set up with Smart Wallets by using the [quickstart template](https://github.com/alchemyplatform/account-kit-expo-quickstart). Follow along with this guide: +Quickly spin up a new React Native (Expo) project set up with Wallet APIs by using the [quickstart template](https://github.com/alchemyplatform/account-kit-expo-quickstart). Follow along with this guide: } title="Quickstart with Expo" href="/docs/wallets/react-native/getting-started/getting-started-quickstart" > - Get started quickly using Smart Wallets on React Native with Expo + Get started quickly using Wallet APIs on React Native with Expo -### Add Smart Wallets to a React Native project +### Add Wallet APIs to a React Native project If you are starting a fresh project, Expo is highly recommended. Create a new @@ -33,7 +33,7 @@ Quickly spin up a new React Native (Expo) project set up with Smart Wallets by u information. -Whether you're using Expo or a bare React Native app, follow these guides to get started with using Smart Wallets in your project. +Whether you're using Expo or a bare React Native app, follow these guides to get started with using Wallet APIs in your project. - Get started with using Smart Wallets in your Expo project + Get started with using Wallet APIs in your Expo project } title="Bare React Native" href="/docs/wallets/react-native/getting-started/getting-started-rn-bare" > - Get started with using Smart Wallets in your bare React Native project + Get started with using Wallet APIs in your bare React Native project diff --git a/content/wallets/pages/react/customization/tailwind-setup.mdx b/content/wallets/pages/react/customization/tailwind-setup.mdx index 1afe8ec51..680938359 100644 --- a/content/wallets/pages/react/customization/tailwind-setup.mdx +++ b/content/wallets/pages/react/customization/tailwind-setup.mdx @@ -95,7 +95,7 @@ If you already have Tailwind CSS configured in your project: ### 1. Update your Tailwind config -Wrap your existing configuration with the Smart Wallets plugin: +Wrap your existing configuration with the Wallet APIs plugin: ```ts tailwind.config.ts import { withAccountKitUi } from "@account-kit/react/tailwind"; @@ -163,10 +163,10 @@ import "./index.css"; ## Testing your setup -To verify Tailwind is working correctly with Smart Wallets: +To verify Tailwind is working correctly with Wallet APIs: 1. Start your development server -2. Add a simple Smart Wallets UI component to test: +2. Add a simple Wallet APIs UI component to test: ```tsx import { useAuthModal } from "@account-kit/react"; diff --git a/content/wallets/pages/react/customization/theme.mdx b/content/wallets/pages/react/customization/theme.mdx index 35c181bb3..3acaebdf5 100644 --- a/content/wallets/pages/react/customization/theme.mdx +++ b/content/wallets/pages/react/customization/theme.mdx @@ -1,6 +1,6 @@ --- title: Custom theme -description: Customize the theme of your Smart Wallets app +description: Customize the theme of your Wallet APIs app slug: wallets/react/customization/theme --- @@ -24,11 +24,11 @@ What you can customize in the pre-built authentication component: # Theme -Theme customizations and styling are passed through `withAccountKitUi`, the Smart Wallets Tailwind plugin, in your `tailwind.config.js` file. +Theme customizations and styling are passed through `withAccountKitUi`, the Wallet APIs Tailwind plugin, in your `tailwind.config.js` file. ## Colors -The [Smart Wallets Theme](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/tailwind/types.ts) object passed to `withAccountKitUi` supports an overridable `colors` object which accepts a set of color values. Each color is a key-value pair where the key is the name of the color and the value is an object containing the `light` and `dark` mode value to use. +The [Wallet APIs Theme](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/tailwind/types.ts) object passed to `withAccountKitUi` supports an overridable `colors` object which accepts a set of color values. Each color is a key-value pair where the key is the name of the color and the value is an object containing the `light` and `dark` mode value to use. ### Border colors diff --git a/content/wallets/pages/react/getting-started/existing-project.mdx b/content/wallets/pages/react/getting-started/existing-project.mdx index 1112f3ace..083d50cb8 100644 --- a/content/wallets/pages/react/getting-started/existing-project.mdx +++ b/content/wallets/pages/react/getting-started/existing-project.mdx @@ -1,6 +1,6 @@ --- title: App Integration -description: Learn how to integrate Smart Wallets into your existing React application with embedded wallets and authentication. +description: Learn how to integrate Wallet APIs into your existing React application with embedded wallets and authentication. text: App Integration link: /react/quickstart/existing-project slug: wallets/react/quickstart/existing-project @@ -56,7 +56,7 @@ const inter = Inter({ subsets: ["latin"] }); export const metadata: Metadata = { title: "My App with Embedded Wallets", - description: "My app with Alchemy Smart Wallets integration", + description: "My app with Alchemy Wallet APIs integration", }; export default async function RootLayout({ diff --git a/content/wallets/pages/react/getting-started/initialization.mdx b/content/wallets/pages/react/getting-started/initialization.mdx index 18fa17ed3..65e020542 100644 --- a/content/wallets/pages/react/getting-started/initialization.mdx +++ b/content/wallets/pages/react/getting-started/initialization.mdx @@ -1,10 +1,10 @@ --- title: Initialization -description: Build Smart Wallets in a new app +description: Build Wallet APIs in a new app slug: wallets/react/installation --- -In this doc and the three following, you will build a Next.js application with Smart Wallets from scratch. If you are using any other tech stack, follow along with the key points of integration and adjust as needed! +In this doc and the three following, you will build a Next.js application with Wallet APIs from scratch. If you are using any other tech stack, follow along with the key points of integration and adjust as needed! ## Create a new Next.js app @@ -23,9 +23,9 @@ This command passes in flags to use Typescript, Tailwind and the next app router You need these three libraries: -* **@account-kit/infra**: Core interfaces and functions for Smart Wallets ([learn more](/docs/wallets/reference/account-kit/infra)) -* **@account-kit/react**: React Hooks, components and utilities for Smart Wallets ([learn more](/docs/wallets/reference/account-kit/react)) -* **@tanstack/react-query**: A required async state library to make Smart Wallets react hooks easier to use ([learn more about this library's motivation here](https://tanstack.com/query/latest/docs/framework/react/overview)) +* **@account-kit/infra**: Core interfaces and functions for Wallet APIs ([learn more](/docs/wallets/reference/account-kit/infra)) +* **@account-kit/react**: React Hooks, components and utilities for Wallet APIs ([learn more](/docs/wallets/reference/account-kit/react)) +* **@tanstack/react-query**: A required async state library to make Wallet APIs react hooks easier to use ([learn more about this library's motivation here](https://tanstack.com/query/latest/docs/framework/react/overview)) Go ahead and install them to the project with a single command: diff --git a/content/wallets/pages/react/getting-started/quickstart-at-top.mdx b/content/wallets/pages/react/getting-started/quickstart-at-top.mdx index 408d8b369..565afe232 100644 --- a/content/wallets/pages/react/getting-started/quickstart-at-top.mdx +++ b/content/wallets/pages/react/getting-started/quickstart-at-top.mdx @@ -1,6 +1,6 @@ --- title: React Quickstart -description: Learn how to get started with Smart Wallets in React. +description: Learn how to get started with Wallet APIs in React. text: Send user operations link: /react/send-user-operations slug: wallets/quickstart diff --git a/content/wallets/pages/react/getting-started/quickstart-content.mdx b/content/wallets/pages/react/getting-started/quickstart-content.mdx index 5d5f46180..b9bd31890 100644 --- a/content/wallets/pages/react/getting-started/quickstart-content.mdx +++ b/content/wallets/pages/react/getting-started/quickstart-content.mdx @@ -21,7 +21,7 @@ NEXT_PUBLIC_ALCHEMY_API_KEY=YOUR_ALCHEMY_API_KEY NEXT_PUBLIC_ALCHEMY_POLICY_ID=YOUR_PAYMASTER_POLICY_ID ``` -Remember: you must create a [`Configuration`](https://dashboard.alchemy.com/services/smart-wallets/configuration) and a [`Paymaster Policy`](https://dashboard.alchemy.com/services/gas-manager/configuration) if you want to use Smart Wallets. +Remember: you must create a [`Configuration`](https://dashboard.alchemy.com/services/smart-wallets/configuration) and a [`Paymaster Policy`](https://dashboard.alchemy.com/services/gas-manager/configuration) if you want to use Wallet APIs. Both the `Configuration` and the `Policy ID` must be linked to the application diff --git a/content/wallets/pages/react/getting-started/quickstart-in-section.mdx b/content/wallets/pages/react/getting-started/quickstart-in-section.mdx index bdd546eb2..6f6bdade8 100644 --- a/content/wallets/pages/react/getting-started/quickstart-in-section.mdx +++ b/content/wallets/pages/react/getting-started/quickstart-in-section.mdx @@ -1,6 +1,6 @@ --- title: React Quickstart -description: Learn how to get started with Smart Wallets in React. +description: Learn how to get started with Wallet APIs in React. text: Send user operations link: /react/send-user-operations slug: wallets/react/quickstart diff --git a/content/wallets/pages/react/getting-started/setup.mdx b/content/wallets/pages/react/getting-started/setup.mdx index 0557189ee..b6357ab6f 100644 --- a/content/wallets/pages/react/getting-started/setup.mdx +++ b/content/wallets/pages/react/getting-started/setup.mdx @@ -1,14 +1,14 @@ --- title: Environment Setup -description: How to set up Smart Wallets using the dashboard. +description: How to set up Wallet APIs using the dashboard. slug: wallets/react/setup --- -To use Smart Wallets, you need to: +To use Wallet APIs, you need to: 1. Create an app in the [dashboard](https://dashboard.alchemy.com/signup) and copy the **API key**. -2. Create a **`configuration`** in the [`Smart Wallets` dashboard](https://dashboard.alchemy.com/services/smart-wallets/configuration) to enable login methods. +2. Create a **`configuration`** in the [`Wallet APIs` dashboard](https://dashboard.alchemy.com/services/smart-wallets/configuration) to enable login methods. 3. Create a policy in your [gas manager dashboard](https://dashboard.alchemy.com/services/gas-manager/configuration) to set rules for sponsorship. diff --git a/content/wallets/pages/react/getting-started/ui-customization.mdx b/content/wallets/pages/react/getting-started/ui-customization.mdx index 45965f098..516edeb97 100644 --- a/content/wallets/pages/react/getting-started/ui-customization.mdx +++ b/content/wallets/pages/react/getting-started/ui-customization.mdx @@ -98,7 +98,7 @@ export const queryClient = new QueryClient(); **Important:** The chain you import (like `arbitrumSepolia`) must come from the `@account-kit/infra` package, not from `viem`. Additionally, make sure - this chain is enabled in both your app and Smart Wallets config policy + this chain is enabled in both your app and Wallet APIs config policy in the dashboard. diff --git a/content/wallets/pages/react/login-methods/onchain-passkeys.mdx b/content/wallets/pages/react/login-methods/onchain-passkeys.mdx index 017a763ce..31e8baeda 100644 --- a/content/wallets/pages/react/login-methods/onchain-passkeys.mdx +++ b/content/wallets/pages/react/login-methods/onchain-passkeys.mdx @@ -6,7 +6,7 @@ slug: wallets/react/login-methods/onchain-passkeys **This feature is in early access.** -The WebAuthn Modular Account enables password-less authentication onchain using **passkeys** (via WebAuthn), and is compatible with [Smart Wallets](/docs/wallets). This guide demonstrates how to register credentials, authenticate users, and send transactions using the `@account-kit/smart-contracts` package. +The WebAuthn Modular Account enables password-less authentication onchain using **passkeys** (via WebAuthn), and is compatible with [Wallet APIs](/docs/wallets). This guide demonstrates how to register credentials, authenticate users, and send transactions using the `@account-kit/smart-contracts` package. Instead of on-device verification, this uses onchain verification. You are responsible for generating the credentials attached to those biometric WebAuthn-compatible passkeys and then using the authentication provider. @@ -14,7 +14,7 @@ Instead of on-device verification, this uses onchain verification. You are respo * A frontend environment (React, Vite, Next.js, etc.) * Browser with WebAuthn and Credential Management API support -* Install the Smart Wallets SDK smart contracts package (use the latest version - **at least 4.52.1**) and Viem +* Install the Wallet APIs SDK smart contracts package (use the latest version - **at least 4.52.1**) and Viem ```bash yarn diff --git a/content/wallets/pages/react/login-methods/passkey-login.mdx b/content/wallets/pages/react/login-methods/passkey-login.mdx index 939c84cff..a8014a27f 100644 --- a/content/wallets/pages/react/login-methods/passkey-login.mdx +++ b/content/wallets/pages/react/login-methods/passkey-login.mdx @@ -72,7 +72,7 @@ For more details on UI component customization, see the [UI Components](/docs/wa ## Custom UI -If you need complete control over the user experience, you can implement your own custom UI for Passkey Login authentication using Smart Wallets hooks. +If you need complete control over the user experience, you can implement your own custom UI for Passkey Login authentication using Wallet APIs hooks. ### Option 1: Passkey Login with Email diff --git a/content/wallets/pages/react/login-methods/social-providers.mdx b/content/wallets/pages/react/login-methods/social-providers.mdx index 0be55eb70..d2c574b64 100644 --- a/content/wallets/pages/react/login-methods/social-providers.mdx +++ b/content/wallets/pages/react/login-methods/social-providers.mdx @@ -4,7 +4,7 @@ description: How to implement custom social providers using Auth0 in your React slug: wallets/react/login-methods/social-providers --- -In addition to the standard social login providers (Google, Facebook, Apple), Smart Wallets allows you to integrate custom OAuth providers through Auth0. This gives you flexibility to add authentication methods like GitHub, Twitter, LinkedIn, and more. +In addition to the standard social login providers (Google, Facebook, Apple), Wallet APIs allows you to integrate custom OAuth providers through Auth0. This gives you flexibility to add authentication methods like GitHub, Twitter, LinkedIn, and more. You can implement custom social providers in two ways: @@ -55,7 +55,7 @@ Before configuring the UI components, you need to set up Auth0: Settings page in Auth0 with relevant fields -10. Add these to your Smart Wallets dashboard in the embedded accounts auth config +10. Add these to your Wallet APIs dashboard in the embedded accounts auth config Copy fields from Auth0 to the Alchemy accounts config @@ -145,7 +145,7 @@ For more details on UI component customization, see the [UI Components](/docs/wa ## Custom UI -If you need complete control over the user experience, you can implement your own custom UI for custom social providers using Smart Wallets hooks. +If you need complete control over the user experience, you can implement your own custom UI for custom social providers using Wallet APIs hooks. ### Step 1: Set Up Auth0 diff --git a/content/wallets/pages/react/mfa/setup-mfa.mdx b/content/wallets/pages/react/mfa/setup-mfa.mdx index 2e9f43e83..623995eef 100644 --- a/content/wallets/pages/react/mfa/setup-mfa.mdx +++ b/content/wallets/pages/react/mfa/setup-mfa.mdx @@ -6,7 +6,7 @@ slug: wallets/react/mfa/setup-mfa - With Smart Wallets, multi-factor authentication (MFA) uses authenticator apps—like Google Authenticator, Authy, or Microsoft Authenticator—to generate a Time-based One-Time Password (TOTP). + With Wallet APIs, multi-factor authentication (MFA) uses authenticator apps—like Google Authenticator, Authy, or Microsoft Authenticator—to generate a Time-based One-Time Password (TOTP). By requiring both a user's primary login (e.g., email OTP, magic link, or social login) and a TOTP from their authenticator app, your application gains an extra layer of security. @@ -26,7 +26,7 @@ slug: wallets/react/mfa/setup-mfa ## Implementation - To implement authenticator app verification in your React application, you'll use the `useMFA` hook from Smart Wallets. + To implement authenticator app verification in your React application, you'll use the `useMFA` hook from Wallet APIs. ### Step 1: Checking if Multi-Factor Authentication is Available diff --git a/content/wallets/pages/react/react-hooks.mdx b/content/wallets/pages/react/react-hooks.mdx index 1f8ae75e0..e935f3dfd 100644 --- a/content/wallets/pages/react/react-hooks.mdx +++ b/content/wallets/pages/react/react-hooks.mdx @@ -4,11 +4,11 @@ description: Overview of implementing custom authentication UI in your React app slug: wallets/react/react-hooks --- -Pre-built UI components are available for authentication, but you may want to create your own custom UI to match your application's design system. This section covers how to implement custom authentication flows using Smart Wallets hooks. +Pre-built UI components are available for authentication, but you may want to create your own custom UI to match your application's design system. This section covers how to implement custom authentication flows using Wallet APIs hooks. - Tailwind CSS is a required dependency for using Smart Wallets UI - components. However, Smart Wallets hooks function independently and do + Tailwind CSS is a required dependency for using Wallet APIs UI + components. However, Wallet APIs hooks function independently and do not require Tailwind. diff --git a/content/wallets/pages/react/solana-wallets/get-started.mdx b/content/wallets/pages/react/solana-wallets/get-started.mdx index cb63e0169..d1d072fce 100644 --- a/content/wallets/pages/react/solana-wallets/get-started.mdx +++ b/content/wallets/pages/react/solana-wallets/get-started.mdx @@ -1,7 +1,7 @@ --- -title: Getting started with Solana Smart Wallets -description: Learn how to use Smart Wallets on Solana -text: Getting started with Solana Smart Wallets +title: Getting started with Solana Wallet APIs +description: Learn how to use Wallet APIs on Solana +text: Getting started with Solana Wallet APIs slug: wallets/react/solana-wallets/get-started --- @@ -47,7 +47,7 @@ Solana is supported, enabling you to create embedded wallets, sign transactions, * Sponsor gas and rent for Solana transactions * Batch multiple Solana instructions in a single transaction -This guide will walk you through setting up and using Smart Wallets on Solana. +This guide will walk you through setting up and using Wallet APIs on Solana. ### Prerequisites diff --git a/content/wallets/pages/react/ui-components.mdx b/content/wallets/pages/react/ui-components.mdx index 78a473614..95865949b 100644 --- a/content/wallets/pages/react/ui-components.mdx +++ b/content/wallets/pages/react/ui-components.mdx @@ -4,7 +4,7 @@ description: How to use our pre-built authentication component in your React app slug: wallets/react/ui-components --- -Smart Wallets allows you to use pre-built, highly customizable UI components to handle authenticating your users. These components provide flexibility to: +Wallet APIs allows you to use pre-built, highly customizable UI components to handle authenticating your users. These components provide flexibility to: * Use the pre-built [modal](#modal-auth) or [embed](#embedded-auth) the auth card directly in your app * Choose from [multiple authentication methods](#available-authentication-methods) @@ -12,8 +12,8 @@ Smart Wallets allows you to use pre-built, highly customizable UI components to * Customize [theme](/docs/wallets/react/customization/theme) - Tailwind CSS is a required dependency for using Smart Wallets UI - components. However, Smart Wallets hooks function independently and do + Tailwind CSS is a required dependency for using Wallet APIs UI + components. However, Wallet APIs hooks function independently and do not require Tailwind. @@ -167,4 +167,4 @@ This example would output a modal similar to this image: ## Need More Control? -If you need complete control over the user experience, you can implement your own custom UI using Smart Wallets hooks. See the [Authentication with React Hooks](/docs/wallets/react/react-hooks) page and the individual authentication method pages for detailed implementations. +If you need complete control over the user experience, you can implement your own custom UI using Wallet APIs hooks. See the [Authentication with React Hooks](/docs/wallets/react/react-hooks) page and the individual authentication method pages for detailed implementations. diff --git a/content/wallets/pages/recipes/hyperliquid-wallets.mdx b/content/wallets/pages/recipes/hyperliquid-wallets.mdx index da83ca170..990ca2d83 100644 --- a/content/wallets/pages/recipes/hyperliquid-wallets.mdx +++ b/content/wallets/pages/recipes/hyperliquid-wallets.mdx @@ -4,7 +4,7 @@ description: Step-by-step guide to let users send transactions on hyperliquid. slug: wallets/recipes/hyperliquid-wallets --- -By the end of this tutorial, you’ll have an application integrated with Smart Wallets, enabling email and social login for user authentication, and the ability to sign and send transactions seamlessly. +By the end of this tutorial, you’ll have an application integrated with Wallet APIs, enabling email and social login for user authentication, and the ability to sign and send transactions seamlessly. *** diff --git a/content/wallets/pages/recipes/multi-chain-setup.mdx b/content/wallets/pages/recipes/multi-chain-setup.mdx index 12d34ee2c..b4e4efe1d 100644 --- a/content/wallets/pages/recipes/multi-chain-setup.mdx +++ b/content/wallets/pages/recipes/multi-chain-setup.mdx @@ -1,6 +1,6 @@ --- title: Multi-chain Apps -description: Learn how to build multi-chain apps with Smart Wallets. +description: Learn how to build multi-chain apps with Wallet APIs. slug: wallets/recipes/multi-chain-setup --- diff --git a/content/wallets/pages/recipes/onramp-funds.mdx b/content/wallets/pages/recipes/onramp-funds.mdx index 030bf97ac..22a5ea2d5 100644 --- a/content/wallets/pages/recipes/onramp-funds.mdx +++ b/content/wallets/pages/recipes/onramp-funds.mdx @@ -1,10 +1,10 @@ --- -title: Onramp Funds to Embedded Smart Wallets with Coinbase +title: Onramp Funds to Embedded Wallet APIs with Coinbase description: Step-by-step guide to let users buy crypto with Coinbase Onramp and fund an embedded smart wallet. slug: wallets/recipes/onramp-funds --- -This recipe demonstrates how to integrate the Coinbase Onramp into an app that uses **embedded smart wallets**. It uses the [Coinbase Developer Platform](https://docs.cdp.coinbase.com/onramp/docs/api-onramp-initializing) and assumes you've configured your Smart Wallets integration using `@account-kit/react`. +This recipe demonstrates how to integrate the Coinbase Onramp into an app that uses **embedded smart wallets**. It uses the [Coinbase Developer Platform](https://docs.cdp.coinbase.com/onramp/docs/api-onramp-initializing) and assumes you've configured your Wallet APIs integration using `@account-kit/react`. > **Goal**: Let users seamlessly buy crypto (e.g. ETH) via card and fund their smart wallet directly. @@ -21,7 +21,7 @@ This recipe demonstrates how to integrate the Coinbase Onramp into an app that u ## Prerequisites -* Smart Wallets integrated in your app (see the [React quickstart](/docs/wallets/react/quickstart) or [Core quickstart](/docs/wallets/core/quickstart)). +* Wallet APIs integrated in your app (see the [React quickstart](/docs/wallets/react/quickstart) or [Core quickstart](/docs/wallets/core/quickstart)). * Obtain the necessary API keys all created in the [Coinbase Developer Platform](https://portal.cdp.coinbase.com/) * **CDP Project ID** @@ -354,7 +354,7 @@ Users can now click "Buy Crypto", complete their purchase in a popup, and immedi ## Resources * [Coinbase Onramp API](https://docs.cdp.coinbase.com/onramp/docs/api-onramp-initializing) -* [Alchemy Smart Wallets Quickstart](https://www.alchemy.com/docs/wallets/react/quickstart) +* [Alchemy Wallet APIs Quickstart](https://www.alchemy.com/docs/wallets/react/quickstart) * [Coinbase Onchainkit](https://www.npmjs.com/package/@coinbase/onchainkit) * [Coinbase getOnrampBuyUrl](https://docs.base.org/onchainkit/fund/get-onramp-buy-url) * [JWT and Session Token Example](https://github.com/coinbase/onramp-demo-application/blob/51733031e49ed4b505291ee7acbdbee429dceb3c/app/utils/sessionTokenApi.ts) diff --git a/content/wallets/pages/recipes/overview.mdx b/content/wallets/pages/recipes/overview.mdx index 9a18a8eb8..23973748d 100644 --- a/content/wallets/pages/recipes/overview.mdx +++ b/content/wallets/pages/recipes/overview.mdx @@ -17,7 +17,7 @@ Learn how to implement common smart wallet features and integrations in your app Learn how to format your transaction payload to send tokens. @@ -28,7 +28,7 @@ Learn how to implement common smart wallet features and integrations in your app href="/docs/wallets/recipes/hyperliquid-wallets" icon="bolt" > - Learn how to send transactions on Hyperliquid using Smart Wallets + Learn how to send transactions on Hyperliquid using Wallet APIs authentication. diff --git a/content/wallets/pages/recipes/send-usdc.mdx b/content/wallets/pages/recipes/send-usdc.mdx index b04fbf276..a541c3731 100644 --- a/content/wallets/pages/recipes/send-usdc.mdx +++ b/content/wallets/pages/recipes/send-usdc.mdx @@ -1,6 +1,6 @@ --- title: Send USDC (or other ERC-20s) -description: Learn how to build and send a transaction that transfers USDC from a smart account using Smart Wallets. +description: Learn how to build and send a transaction that transfers USDC from a smart account using Wallet APIs. slug: wallets/recipes/send-usdc --- @@ -10,7 +10,7 @@ In this recipe you'll construct an ERC-20 `transfer` call and submit it through ## Prerequisites -1. Smart Wallets integrated in your app (see the [React quickstart](/docs/wallets/react/quickstart) or [Core quickstart](/docs/wallets/core/quickstart)). +1. Wallet APIs integrated in your app (see the [React quickstart](/docs/wallets/react/quickstart) or [Core quickstart](/docs/wallets/core/quickstart)). * The quickstart uses Arbitrum Sepolia, so make sure your gas policy is configured for Arbitrum Sepolia if you're using the default settings. diff --git a/content/wallets/pages/recipes/smart-wallets-aave.mdx b/content/wallets/pages/recipes/smart-wallets-aave.mdx index 646802007..b17e5c8ca 100644 --- a/content/wallets/pages/recipes/smart-wallets-aave.mdx +++ b/content/wallets/pages/recipes/smart-wallets-aave.mdx @@ -1,15 +1,15 @@ --- -title: Smart Wallets with Aave +title: Wallet APIs with Aave description: >- Learn how to build DeFi applications that interact with Aave using Alchemy - Smart Wallets. This recipe covers supplying and withdrawing assets with both + Wallet APIs. This recipe covers supplying and withdrawing assets with both Core and Wallets API. slug: wallets/recipes/smart-wallets-aave --- `@alchemy/wallet-apis` (v5.x.x) is currently in beta but is the recommended replacement for `@account-kit/wallet-client` (v4.x.x). If you run into any issues, please [reach out](mailto:support@alchemy.com). -Learn how to build DeFi applications that interact with Aave using Smart Wallets. This recipe covers supplying and withdrawing assets with both the [Core library](/docs/wallets/reference/aa-sdk/core) and the [Wallet APIs](/docs/wallets/api-reference/smart-wallets/wallet-api-endpoints/wallet-api-endpoints/wallet-request-account) for seamless user experiences. +Learn how to build DeFi applications that interact with Aave using Wallet APIs. This recipe covers supplying and withdrawing assets with both the [Core library](/docs/wallets/reference/aa-sdk/core) and the [Wallet APIs](/docs/wallets/api-reference/smart-wallets/wallet-api-endpoints/wallet-api-endpoints/wallet-request-account) for seamless user experiences. ## Prerequisites @@ -344,6 +344,6 @@ You can now interact with Aave protocol through smart wallets with sponsored gas ## Resources * [Aave V3 Documentation](https://docs.aave.com/developers/) -* [Alchemy Smart Wallets Quickstart](https://www.alchemy.com/docs/wallets/react/quickstart) +* [Alchemy Wallet APIs Quickstart](https://www.alchemy.com/docs/wallets/react/quickstart) * [Gas Manager Setup](https://www.alchemy.com/docs/setup-a-gas-manager-policy) * [Aave Contract Addresses](https://aave.com/docs/resources/addresses) diff --git a/content/wallets/pages/recipes/upgrade-to-smart-accounts.mdx b/content/wallets/pages/recipes/upgrade-to-smart-accounts.mdx index 9a40f7fc2..67aa86bec 100644 --- a/content/wallets/pages/recipes/upgrade-to-smart-accounts.mdx +++ b/content/wallets/pages/recipes/upgrade-to-smart-accounts.mdx @@ -8,7 +8,7 @@ Smart wallets unlock seamless transaction flows and advanced features like socia ## Upgrading external wallets -If you have an app that currently uses an EOA connector, such as Rainbow Kit, for user wallets, you can add Smart Wallets by swapping out the EOA connector for social login and the pre-built UI for EOA connection. This enables you to use React hooks for wallet connection, social login, and sending transactions. +If you have an app that currently uses an EOA connector, such as Rainbow Kit, for user wallets, you can add Wallet APIs by swapping out the EOA connector for social login and the pre-built UI for EOA connection. This enables you to use React hooks for wallet connection, social login, and sending transactions. You can also use social login with your existing wallet connection but you will need to build a custom UI to route users between the two. @@ -51,7 +51,7 @@ If you have an existing embedded EOA, you can enable gas sponsorship and batchin diff --git a/content/wallets/pages/recipes/wallet-session-keys-app.mdx b/content/wallets/pages/recipes/wallet-session-keys-app.mdx index 1c6d15765..d0646464d 100644 --- a/content/wallets/pages/recipes/wallet-session-keys-app.mdx +++ b/content/wallets/pages/recipes/wallet-session-keys-app.mdx @@ -1,10 +1,10 @@ --- title: Session Keys App -description: Demo app showcasing session keys on Smart Wallets, with examples for creating, authorizing, and executing transactions without repeated signatures. +description: Demo app showcasing session keys on Wallet APIs, with examples for creating, authorizing, and executing transactions without repeated signatures. slug: wallets/recipes/wallet-session-keys-app --- -Below is a demo application that showcases session keys on Smart Wallets. +Below is a demo application that showcases session keys on Wallet APIs. ![Session Keys Demo](https://alchemyapi-res.cloudinary.com/image/upload/v1761582943/docs/Screenshot_2025-10-27_at_9.35.39_AM_nekcbs.png) diff --git a/content/wallets/pages/resources/chain-reference/polygon-pos.mdx b/content/wallets/pages/resources/chain-reference/polygon-pos.mdx index a7e59ffc0..e7b95d50b 100644 --- a/content/wallets/pages/resources/chain-reference/polygon-pos.mdx +++ b/content/wallets/pages/resources/chain-reference/polygon-pos.mdx @@ -1,6 +1,6 @@ --- title: Polygon PoS Smart Wallet Reference -description: Polygon PoS support details for Smart Wallets, including network restrictions, MEV protection, and mempool considerations. +description: Polygon PoS support details for Wallet APIs, including network restrictions, MEV protection, and mempool considerations. --- Polygon PoS is supported in both the Wallet APIs and the Low-Level Infra APIs. diff --git a/content/wallets/pages/resources/contact-us.mdx b/content/wallets/pages/resources/contact-us.mdx index 17ce8f9b9..d33594e2b 100644 --- a/content/wallets/pages/resources/contact-us.mdx +++ b/content/wallets/pages/resources/contact-us.mdx @@ -1,10 +1,10 @@ --- title: Contact us -description: Contact the team about Smart Wallets +description: Contact the team about Wallet APIs slug: wallets/resources/contact-us --- -If there's anything we can do to improve your experience with Smart Wallets, please tell us! +If there's anything we can do to improve your experience with Wallet APIs, please tell us! ## Feedback @@ -14,6 +14,6 @@ If there's anything we can do to improve your experience with Smart Wallets, ple ## Contributing -1. If you see a issue in our code or documentation, feel free to address it yourself! See this [README](https://github.com/alchemyplatform/aa-sdk/blob/main/CONTRIBUTING.md) on contributing to Smart Wallets's codebase. +1. If you see a issue in our code or documentation, feel free to address it yourself! See this [README](https://github.com/alchemyplatform/aa-sdk/blob/main/CONTRIBUTING.md) on contributing to Wallet APIs's codebase. 2. If you are interested in [ERC-6900](https://eips.ethereum.org/EIPS/eip-6900) or modular account development, join our [Telegram group](https://t.me/+KfB9WuhKDgk5YzIx). diff --git a/content/wallets/pages/resources/faqs.mdx b/content/wallets/pages/resources/faqs.mdx index bf770ac9b..e460b0117 100644 --- a/content/wallets/pages/resources/faqs.mdx +++ b/content/wallets/pages/resources/faqs.mdx @@ -1,6 +1,6 @@ --- title: Frequently asked questions -description: Learn how to get started with Smart Wallets, a vertically +description: Learn how to get started with Wallet APIs, a vertically slug: wallets/resources/faqs --- @@ -158,7 +158,7 @@ slug: wallets/resources/faqs ### Backend user authentication and sessions - After a user logs in with Smart Wallets on the frontend, you might want to verify their identity on your backend to authorize actions or access. + After a user logs in with Wallet APIs on the frontend, you might want to verify their identity on your backend to authorize actions or access. You can do this using one of two approaches: @@ -166,9 +166,9 @@ slug: wallets/resources/faqs ### Option 1: SIWE [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) - Use this flow to verify user sessions created by EOAs and smart wallets via Smart Wallets. + Use this flow to verify user sessions created by EOAs and smart wallets via Wallet APIs. - For EOAs, Smart Wallets doesn’t create a session on the client side and `stampWhoAmI` isn’t available, so use SIWE instead. This works for verifying both EOA and SCA flows. + For EOAs, Wallet APIs doesn’t create a session on the client side and `stampWhoAmI` isn’t available, so use SIWE instead. This works for verifying both EOA and SCA flows. Create a [SIWE message](https://docs.login.xyz/sign-in-with-ethereum/quickstart-guide/creating-siwe-messages) with all the necessary info to get server side (address, chainId, etc). 1. The backend provides a nonce to the frontend. @@ -190,7 +190,7 @@ slug: wallets/resources/faqs ### Option 2: `stampWhoAmI` + `whoami` (only when using the authentication service) - Use this flow when you need to verify user sessions created by SCAs via Smart Wallets. + Use this flow when you need to verify user sessions created by SCAs via Wallet APIs. 1. The frontend generates a stamped request using [signer.inner.stampWhoAmI](https://www.alchemy.com/docs/wallets/reference/account-kit/signer/classes/BaseSignerClient#stampwhoami). 2. It sends the stamp to your backend. @@ -303,7 +303,7 @@ No, the `aa-sdk` repo does not officially support React Native. Currently there is a strong dependency on Viem, which requires several global features, such as `TextEncoder` and `crypto`, that are absent in React Native’s environment. See more about [Viem’s capability](https://viem.sh/docs/compatibility). -However, a small PoC using Expo is available [here](https://github.com/alchemyplatform/aa-sdk-rn-expo/tree/main). For more information on how to use Smart Wallets within a React Native application see [the guide](/docs/wallets/react-native/overview). +However, a small PoC using Expo is available [here](https://github.com/alchemyplatform/aa-sdk-rn-expo/tree/main). For more information on how to use Wallet APIs within a React Native application see [the guide](/docs/wallets/react-native/overview). ### How do I protect my API key and policy id in the frontend? diff --git a/content/wallets/pages/resources/terms.mdx b/content/wallets/pages/resources/terms.mdx index c4567850e..17be61565 100644 --- a/content/wallets/pages/resources/terms.mdx +++ b/content/wallets/pages/resources/terms.mdx @@ -1,16 +1,16 @@ --- title: Terms -description: Glossary of terms related to Smart Wallets +description: Glossary of terms related to Wallet APIs slug: wallets/resources/terms --- -## Smart Wallets +## Wallet APIs -The Smart Wallets framework is designed to embed smart wallets in web3 applications. It includes a set of tools such as [authentication integrations](/docs/wallets/signer/what-is-a-signer), [Gas Manager](https://alchemy.com/docs/gas-manager-services), and [transaction sending](/docs/reference/bundler-api-quickstart) utilities that unlock features such as [gas sponsorship](/docs/wallets/transactions/sponsor-gas), [batched transactions](/docs/wallets/transactions/send-batch-transactions), and email/social login. With [aa-sdk](https://github.com/alchemyplatform/aa-sdk), Smart Wallets makes it straightforward to deploy smart wallets, manage `UserOperation`s, and handle gas sponsorship with minimal coding effort. +The Wallet APIs framework is designed to embed smart wallets in web3 applications. It includes a set of tools such as [authentication integrations](/docs/wallets/signer/what-is-a-signer), [Gas Manager](https://alchemy.com/docs/gas-manager-services), and [transaction sending](/docs/reference/bundler-api-quickstart) utilities that unlock features such as [gas sponsorship](/docs/wallets/transactions/sponsor-gas), [batched transactions](/docs/wallets/transactions/send-batch-transactions), and email/social login. With [aa-sdk](https://github.com/alchemyplatform/aa-sdk), Wallet APIs makes it straightforward to deploy smart wallets, manage `UserOperation`s, and handle gas sponsorship with minimal coding effort. ## Bundler -A network participant in the [ERC-4337](#erc-4337) standard that collects and submits `UserOperations` (UOs) to the blockchain, handling the associated gas fees, in exchange for payment during UO processing either directly from the user or from a [Paymaster](https://www.alchemy.com/overviews/what-is-a-paymaster). The bundler implementation used by Smart Wallets is called [Rundler](https://github.com/alchemyplatform/rundler). It is written in Rust and designed to achieve high performance and reliability. +A network participant in the [ERC-4337](#erc-4337) standard that collects and submits `UserOperations` (UOs) to the blockchain, handling the associated gas fees, in exchange for payment during UO processing either directly from the user or from a [Paymaster](https://www.alchemy.com/overviews/what-is-a-paymaster). The bundler implementation used by Wallet APIs is called [Rundler](https://github.com/alchemyplatform/rundler). It is written in Rust and designed to achieve high performance and reliability. ## Client diff --git a/content/wallets/pages/resources/types.mdx b/content/wallets/pages/resources/types.mdx index 77fb1bc0a..b2a8aa0d4 100644 --- a/content/wallets/pages/resources/types.mdx +++ b/content/wallets/pages/resources/types.mdx @@ -404,7 +404,7 @@ export interface SmartAccountSigner { ## `SmartContractAccount` `SmartContractAccount` is the client-side interface for creating, managing, and interacting with smart wallets in a type-safe manner. It extends `viem`'s [`Account`](https://v1.viem.sh/docs/accounts/custom.html) interface with smart wallet functionality. -Within Smart Wallets, implementations for Light Account and Modular Account are exported from `@account-kit/smart-contracts`. These implementations handle the logic for generating the deployment data, encoding +Within Wallet APIs, implementations for Light Account and Modular Account are exported from `@account-kit/smart-contracts`. These implementations handle the logic for generating the deployment data, encoding single and batch UO execution, and signing of messages, typed data, and UOs. Wallets are rarely used on their own, and are typically passed in to [Smart Account Client](/docs/wallets/reference/aa-sdk/core/type-aliases/SmartAccountClient) implementations. diff --git a/content/wallets/pages/signer/export-private-key.mdx b/content/wallets/pages/signer/export-private-key.mdx index fa82f8cee..0709f600b 100644 --- a/content/wallets/pages/signer/export-private-key.mdx +++ b/content/wallets/pages/signer/export-private-key.mdx @@ -1,7 +1,7 @@ --- outline: deep title: Export private key -description: Learn how to enable a user to export their private key with Smart Wallets +description: Learn how to enable a user to export their private key with Wallet APIs slug: wallets/signer/export-private-key --- diff --git a/content/wallets/pages/signer/overview.mdx b/content/wallets/pages/signer/overview.mdx index ac68d3819..9368b5673 100644 --- a/content/wallets/pages/signer/overview.mdx +++ b/content/wallets/pages/signer/overview.mdx @@ -6,7 +6,7 @@ slug: wallets/signer/overview The AlchemySigner is a `SmartAccountSigner` that is protected by secure infrastructure. Using the AlchemySigner, you can get started building embedded accounts with an API key. -When using Smart Wallets with React via `@account-kit/react` or `@account-kit/core`, the assumption is that you're using the AlchemySigner with the smart contract implementations and transaction sending and gas sponsorship infrastructure. +When using Wallet APIs with React via `@account-kit/react` or `@account-kit/core`, the assumption is that you're using the AlchemySigner with the smart contract implementations and transaction sending and gas sponsorship infrastructure. However, you can also use the AlchemySigner as a standalone authentication provider with your own smart contracts or 3rd party infrastructure. In these guides, you'll learn more about how to choose an authentication provider and how to use it directly via the `@account-kit/signer` package to log users in with email auth, and create an embedded account to enable email, passkeys (i.e. biometrics), and social auth flows. diff --git a/content/wallets/pages/signer/policies/key-concepts-and-examples.mdx b/content/wallets/pages/signer/policies/key-concepts-and-examples.mdx index c1b1b0e68..cd8487d87 100644 --- a/content/wallets/pages/signer/policies/key-concepts-and-examples.mdx +++ b/content/wallets/pages/signer/policies/key-concepts-and-examples.mdx @@ -14,7 +14,7 @@ Smart Wallet Policies are programmatic rules enforced through the offchain polic ## **Examples** -Here are practical examples of policies adapted for Smart Wallets, showcasing how you can tailor functionality: +Here are practical examples of policies adapted for Wallet APIs, showcasing how you can tailor functionality: 1. **Limit Transaction Value** * **Description**: Restrict transfers to a maximum of 0.5 ETH per transaction. diff --git a/content/wallets/pages/signer/policies/overview.mdx b/content/wallets/pages/signer/policies/overview.mdx index f5898beff..c223a39a9 100644 --- a/content/wallets/pages/signer/policies/overview.mdx +++ b/content/wallets/pages/signer/policies/overview.mdx @@ -10,7 +10,7 @@ slug: wallets/signer/policies/overview features may change. -**Smart Wallets** enable seamless crypto experiences with gas sponsorship, batched transactions, and chain abstraction. Secured by non-custodial Trusted Execution Environments (TEEs) and enterprise-grade audited smart accounts, smart wallets protect user assets with both offchain and onchain safeguards. +**Wallet APIs** enable seamless crypto experiences with gas sponsorship, batched transactions, and chain abstraction. Secured by non-custodial Trusted Execution Environments (TEEs) and enterprise-grade audited smart accounts, smart wallets protect user assets with both offchain and onchain safeguards. Policies allow you to set rules and constraints governing how smart wallets operate, ensuring security and control over onchain actions. Using the policy dashboard, you can configure rules such as spending limits, contract allowlists, or denylists. This overview explains how you can use policies to further secure your smart wallet. diff --git a/content/wallets/pages/signer/quickstart.mdx b/content/wallets/pages/signer/quickstart.mdx index 8ff03d60e..809029c7e 100644 --- a/content/wallets/pages/signer/quickstart.mdx +++ b/content/wallets/pages/signer/quickstart.mdx @@ -6,10 +6,10 @@ slug: wallets/signer/quickstart Using React? Follow [this](/docs/wallets/react/quickstart) quickstart guide instead - for easy-to-use React hooks and integration with Smart Wallets. + for easy-to-use React hooks and integration with Wallet APIs. -If you're not using React, use the `@account-kit/signer` package to create and use Smart Wallets. +If you're not using React, use the `@account-kit/signer` package to create and use Wallet APIs. ## Get your API key and create an account config diff --git a/content/wallets/pages/signer/user-sessions.mdx b/content/wallets/pages/signer/user-sessions.mdx index 736aceeaf..608001ebe 100644 --- a/content/wallets/pages/signer/user-sessions.mdx +++ b/content/wallets/pages/signer/user-sessions.mdx @@ -1,6 +1,6 @@ --- title: Manage user sessions -description: Learn how to configure and leverage sessions for your users with Smart Wallets +description: Learn how to configure and leverage sessions for your users with Wallet APIs slug: wallets/signer/user-sessions --- diff --git a/content/wallets/pages/signer/what-is-a-signer.mdx b/content/wallets/pages/signer/what-is-a-signer.mdx index af8b39233..2139ae666 100644 --- a/content/wallets/pages/signer/what-is-a-signer.mdx +++ b/content/wallets/pages/signer/what-is-a-signer.mdx @@ -1,19 +1,19 @@ --- outline: deep title: Choosing an authentication provider -description: Explore Smart Wallets integration guides for authentication providers including Magic.Link, Privy, Web3Auth, EOAs, and many more! +description: Explore Wallet APIs integration guides for authentication providers including Magic.Link, Privy, Web3Auth, EOAs, and many more! slug: wallets/signer/what-is-a-signer --- An **authentication provider** is a service (e.g. AlchemySigner) or application (e.g. MetaMask) that manages the private key and signs operations. Most web3 users today use an [Externally Owned Account (EOA)](https://ethereum.org/en/developers/docs/accounts/#externally-owned-accounts-and-key-pairs) with a self-custodial provider such as MetaMask to manage the private key. -With Smart Wallets, you deploy a **smart wallet** for each user instead of an EOA wallet. This smart wallet stores the user’s assets (e.g. tokens or NFTs). +With Wallet APIs, you deploy a **smart wallet** for each user instead of an EOA wallet. This smart wallet stores the user’s assets (e.g. tokens or NFTs). The owner connected to the `SmartAccountClient` is used to sign messages, data including transactions. The signatures for the transaction will only be valid and execute if the owner is the owner or one of the owners of the account. -Using Smart Wallets, you can secure your user’s account with an email, social login, or passkeys. You can also use a self-custodial wallet like MetaMask as the authentication provider. Choose any authentication service or application to manage the owner private key for the user. +Using Wallet APIs, you can secure your user’s account with an email, social login, or passkeys. You can also use a self-custodial wallet like MetaMask as the authentication provider. Choose any authentication service or application to manage the owner private key for the user. -This doc provides a basic introduction to authentication providers and the criteria you should consider when choosing which one to use with Smart Wallets in your application. +This doc provides a basic introduction to authentication providers and the criteria you should consider when choosing which one to use with Wallet APIs in your application. ## Role of an authentication provider @@ -29,7 +29,7 @@ The authentication provider plays a crucial role in your app because it controls User security is the top priority. The AlchemySigner is a non-custodial authentication service where private keys are securely generated inside a [secure enclave](https://docs.turnkey.com/security/secure-enclaves). Only the end user can access their keys, not any third party nor your app. Read more about Turnkey’s [security model](https://docs.turnkey.com/security/our-approach) that powers the AlchemySigner. -The AlchemySigner is supported out of the box with Smart Wallets via [React Hooks](/docs/wallets/react/quickstart) and lower-level [SDKs](/docs/wallets/signer/quickstart). Using Smart Wallets with the AlchemySigner, you can secure your user’s account with an email, social login, or passkeys. +The AlchemySigner is supported out of the box with Wallet APIs via [React Hooks](/docs/wallets/react/quickstart) and lower-level [SDKs](/docs/wallets/signer/quickstart). Using Wallet APIs with the AlchemySigner, you can secure your user’s account with an email, social login, or passkeys. ### Read more about authentication providers [here](/docs/wallets/signer/what-is-a-signer). diff --git a/content/wallets/pages/smart-contracts/choosing-a-smart-account.mdx b/content/wallets/pages/smart-contracts/choosing-a-smart-account.mdx index 100f68075..cdc305743 100644 --- a/content/wallets/pages/smart-contracts/choosing-a-smart-account.mdx +++ b/content/wallets/pages/smart-contracts/choosing-a-smart-account.mdx @@ -54,5 +54,5 @@ This account extends **Light Account** with support for **multiple owners**, all ## Bring your own smart wallet -If you have your own **ERC-4337-compatible** smart wallet, you can integrate it with Smart Wallets.\ +If you have your own **ERC-4337-compatible** smart wallet, you can integrate it with Wallet APIs.\ See the guide on [using a custom smart wallet](/docs/wallets/third-party/smart-contracts). diff --git a/content/wallets/pages/smart-contracts/modular-account-v2/getting-started.mdx b/content/wallets/pages/smart-contracts/modular-account-v2/getting-started.mdx index df257ac2f..5f4a8352b 100644 --- a/content/wallets/pages/smart-contracts/modular-account-v2/getting-started.mdx +++ b/content/wallets/pages/smart-contracts/modular-account-v2/getting-started.mdx @@ -1,6 +1,6 @@ --- title: Modular Account V2 • Getting started -description: Getting started with Modular Account V2 in Smart Wallets +description: Getting started with Modular Account V2 in Wallet APIs slug: wallets/smart-contracts/modular-account-v2/getting-started --- diff --git a/content/wallets/pages/smart-contracts/other-accounts/light-account/getting-started.mdx b/content/wallets/pages/smart-contracts/other-accounts/light-account/getting-started.mdx index 69b7d2039..70268b5bf 100644 --- a/content/wallets/pages/smart-contracts/other-accounts/light-account/getting-started.mdx +++ b/content/wallets/pages/smart-contracts/other-accounts/light-account/getting-started.mdx @@ -1,6 +1,6 @@ --- title: Light Account • Getting started -description: Getting started with Light Account in Smart Wallets +description: Getting started with Light Account in Wallet APIs slug: wallets/smart-contracts/other-accounts/light-account/getting-started --- @@ -26,7 +26,7 @@ Getting started with Light Account is straightforward. Below you will create and ### Create a client and send a transaction -The code snippets below demonstrate how to use `LightAccount` and `MultiOwnerLightAccount` with Smart Wallets. They create the account and send a `UserOperation` from it. +The code snippets below demonstrate how to use `LightAccount` and `MultiOwnerLightAccount` with Wallet APIs. They create the account and send a `UserOperation` from it. ```ts light-account.ts diff --git a/content/wallets/pages/smart-contracts/other-accounts/light-account/transfer-ownership-light-account.mdx b/content/wallets/pages/smart-contracts/other-accounts/light-account/transfer-ownership-light-account.mdx index 4e357b32f..d91e4ce3f 100644 --- a/content/wallets/pages/smart-contracts/other-accounts/light-account/transfer-ownership-light-account.mdx +++ b/content/wallets/pages/smart-contracts/other-accounts/light-account/transfer-ownership-light-account.mdx @@ -4,7 +4,7 @@ description: Follow this guide to transfer ownership of a Light Account with slug: wallets/smart-contracts/other-accounts/light-account/transfer-ownership-light-account --- -Not all smart account implementations support transferring ownership (e.g. `SimpleAccount`). However, a number of the accounts in this guide and in Smart Wallets do, including `LightAccount`. Below are a few different ways to transfer ownership of an account (using `LightAccount` as an example). +Not all smart account implementations support transferring ownership (e.g. `SimpleAccount`). However, a number of the accounts in this guide and in Wallet APIs do, including `LightAccount`. Below are a few different ways to transfer ownership of an account (using `LightAccount` as an example). ## Usage @@ -14,7 +14,7 @@ Not all smart account implementations support transferring ownership (e.g. `Simp function transferOwnership(address newOwner) public virtual onlyOwner ``` -There are a number of ways to call this method using Smart Wallets. +There are a number of ways to call this method using Wallet APIs. ### 1. Using `transferOwnership` client action diff --git a/content/wallets/pages/smart-contracts/other-accounts/modular-account/getting-started.mdx b/content/wallets/pages/smart-contracts/other-accounts/modular-account/getting-started.mdx index d533028ae..1e25c30c4 100644 --- a/content/wallets/pages/smart-contracts/other-accounts/modular-account/getting-started.mdx +++ b/content/wallets/pages/smart-contracts/other-accounts/modular-account/getting-started.mdx @@ -1,6 +1,6 @@ --- title: Modular Account • Getting started -description: Getting started with Modular Account in Smart Wallets +description: Getting started with Modular Account in Wallet APIs slug: wallets/smart-contracts/other-accounts/modular-account/getting-started --- diff --git a/content/wallets/pages/smart-contracts/other-accounts/modular-account/index.mdx b/content/wallets/pages/smart-contracts/other-accounts/modular-account/index.mdx index e046d47c0..c8e5cd8bf 100644 --- a/content/wallets/pages/smart-contracts/other-accounts/modular-account/index.mdx +++ b/content/wallets/pages/smart-contracts/other-accounts/modular-account/index.mdx @@ -1,6 +1,6 @@ --- title: Modular Account smart contract -description: Follow this guide to use Modular Accounts with Smart Wallets +description: Follow this guide to use Modular Accounts with Wallet APIs slug: wallets/smart-contracts/other-accounts/modular-account --- diff --git a/content/wallets/pages/smart-contracts/other-accounts/modular-account/multisig-plugin/getting-started.mdx b/content/wallets/pages/smart-contracts/other-accounts/modular-account/multisig-plugin/getting-started.mdx index 3322e41c2..790dd5f8b 100644 --- a/content/wallets/pages/smart-contracts/other-accounts/modular-account/multisig-plugin/getting-started.mdx +++ b/content/wallets/pages/smart-contracts/other-accounts/modular-account/multisig-plugin/getting-started.mdx @@ -1,6 +1,6 @@ --- title: Modular Account with Multisig Plugin • Getting started -description: Getting started with the Modular Account with Multisig Plugin in Smart Wallets +description: Getting started with the Modular Account with Multisig Plugin in Wallet APIs slug: wallets/smart-contracts/other-accounts/modular-account/multisig-plugin/getting-started --- diff --git a/content/wallets/pages/smart-contracts/other-accounts/modular-account/upgrading-to-modular-account.mdx b/content/wallets/pages/smart-contracts/other-accounts/modular-account/upgrading-to-modular-account.mdx index 3e3f0df67..2552adb0a 100644 --- a/content/wallets/pages/smart-contracts/other-accounts/modular-account/upgrading-to-modular-account.mdx +++ b/content/wallets/pages/smart-contracts/other-accounts/modular-account/upgrading-to-modular-account.mdx @@ -1,10 +1,10 @@ --- -title: Upgrading to a Modular Account using Smart Wallets -description: Upgrading to a Modular Account using Smart Wallets +title: Upgrading to a Modular Account using Wallet APIs +description: Upgrading to a Modular Account using Wallet APIs slug: wallets/smart-contracts/other-accounts/modular-account/upgrading-to-modular-account --- -Upgrade a `SmartContractAccount` using Smart Wallets by calling `upgradeAccount` on the `SmartAccountClient` with the necessary call data, `UpgradeToData`, for the account targeted for the upgrade. For upgrading to a Modular Account, use the utility function `getMSCAUpgradeToData` provided by the `@account-kit/smart-contracts` package to retrieve the call data for the upgrade. This process applies to any account with upgrade capabilities. +Upgrade a `SmartContractAccount` using Wallet APIs by calling `upgradeAccount` on the `SmartAccountClient` with the necessary call data, `UpgradeToData`, for the account targeted for the upgrade. For upgrading to a Modular Account, use the utility function `getMSCAUpgradeToData` provided by the `@account-kit/smart-contracts` package to retrieve the call data for the upgrade. This process applies to any account with upgrade capabilities. Using the Light Account as an example, here is an overview of how the upgrade can be executed using a Smart Account Client: diff --git a/content/wallets/pages/smart-contracts/overview.mdx b/content/wallets/pages/smart-contracts/overview.mdx index 1da19f9c0..4777d0dd3 100644 --- a/content/wallets/pages/smart-contracts/overview.mdx +++ b/content/wallets/pages/smart-contracts/overview.mdx @@ -1,10 +1,10 @@ --- title: Smart contracts overview -description: An overview of the smart contracts available in Smart Wallets and how to use them +description: An overview of the smart contracts available in Wallet APIs and how to use them slug: wallets/smart-contracts/overview --- -One of the low level packages available in Smart Wallets is the Smart Contracts package. This package contains all of the smart contract interfaces and utilities you need to use any of the +One of the low level packages available in Wallet APIs is the Smart Contracts package. This package contains all of the smart contract interfaces and utilities you need to use any of the secure, audited smart contracts. These guides show you how to pick the right smart contract for your use case and how to use them in your application. diff --git a/content/wallets/pages/smart-wallets/quickstart/api.mdx b/content/wallets/pages/smart-wallets/quickstart/api.mdx index 9687687ee..d855c6546 100644 --- a/content/wallets/pages/smart-wallets/quickstart/api.mdx +++ b/content/wallets/pages/smart-wallets/quickstart/api.mdx @@ -1,6 +1,6 @@ --- -title: Smart Wallets API Quickstart -description: Learn how to use the wallet_prepareCalls, wallet_sendPreparedCalls, and wallet_getCallsStatus API endpoints to send transactions with Alchemy Smart Wallets. +title: Wallet APIs API Quickstart +description: Learn how to use the wallet_prepareCalls, wallet_sendPreparedCalls, and wallet_getCallsStatus API endpoints to send transactions with Alchemy Wallet APIs. --- This guide demonstrates how to use the [`wallet_prepareCalls`](/docs/wallets/api/smart-wallets/wallet-api-endpoints/wallet-api-endpoints/wallet-prepare-calls), [`wallet_sendPreparedCalls`](/docs/wallets/api/smart-wallets/wallet-api-endpoints/wallet-api-endpoints/wallet-send-prepared-calls), and [`wallet_getCallsStatus`](/docs/wallets/api/smart-wallets/wallet-api-endpoints/wallet-api-endpoints/wallet-get-calls-status) endpoints. @@ -105,7 +105,7 @@ Sign the returned signature request(s) using your signer key. **Once delegated:** Sign only the transaction. -If using a Smart Wallets authentication provider, learn how to stamp the request on the frontend [here](/docs/reference/how-to-stamp-requests). When using this authentication provider, sign the `signatureRequest.rawPayload` directly. +If using a Wallet APIs authentication provider, learn how to stamp the request on the frontend [here](/docs/reference/how-to-stamp-requests). When using this authentication provider, sign the `signatureRequest.rawPayload` directly. If you are using a library such as Viem that supports the `personal_sign` method, use that to sign the transaction hash (since the `signatureRequest.type` is `"personal_sign"`). diff --git a/content/wallets/pages/smart-wallets/quickstart/sdk.mdx b/content/wallets/pages/smart-wallets/quickstart/sdk.mdx index 04560424c..2db47226b 100644 --- a/content/wallets/pages/smart-wallets/quickstart/sdk.mdx +++ b/content/wallets/pages/smart-wallets/quickstart/sdk.mdx @@ -1,6 +1,6 @@ --- -title: Smart Wallets SDK Quickstart -description: Get started with Alchemy Smart Wallets using the SDK. Install the @alchemy/wallet-apis package, create a client, and send your first sponsored transaction in minutes. +title: Wallet APIs SDK Quickstart +description: Get started with Alchemy Wallet APIs using the SDK. Install the @alchemy/wallet-apis package, create a client, and send your first sponsored transaction in minutes. --- diff --git a/content/wallets/pages/smart-wallets/wallets-api-endpoints/createaccount.mdx b/content/wallets/pages/smart-wallets/wallets-api-endpoints/createaccount.mdx index 83ace42f2..0f1f25098 100644 --- a/content/wallets/pages/smart-wallets/wallets-api-endpoints/createaccount.mdx +++ b/content/wallets/pages/smart-wallets/wallets-api-endpoints/createaccount.mdx @@ -9,6 +9,6 @@ post https://api.g.alchemy.com/signer/v1/signup Programmatically create a new wallet. A new Ethereum and Solana private key will be generated inside the non-custodial key management infrastructure. The wallet is secured by the user’s authentication credentials. -**Using React or Vanilla JS?** Use the [Smart Wallets SDK](/docs/wallets) to create and use wallets. The SDK handles all signing and authentication complexity for you, making development faster and easier. The [SDK](https://github.com/alchemyplatform/aa-sdk) is available in React, Vanilla Typescript, and (soon) Java. +**Using React or Vanilla JS?** Use the [Wallet APIs SDK](/docs/wallets) to create and use wallets. The SDK handles all signing and authentication complexity for you, making development faster and easier. The [SDK](https://github.com/alchemyplatform/aa-sdk) is available in React, Vanilla Typescript, and (soon) Java. To use APIs directly, first see [this guide](/docs/reference/how-to-stamp-requests) for implementing custom logic to send stamped requests. diff --git a/content/wallets/pages/third-party/signers/custom-integration.mdx b/content/wallets/pages/third-party/signers/custom-integration.mdx index 082fdd1de..36002c729 100644 --- a/content/wallets/pages/third-party/signers/custom-integration.mdx +++ b/content/wallets/pages/third-party/signers/custom-integration.mdx @@ -1,6 +1,6 @@ --- title: Bring your own signer -description: Use any viem-compatible signer with Smart Wallets +description: Use any viem-compatible signer with Wallet APIs slug: wallets/third-party/signers/custom-integration --- diff --git a/content/wallets/pages/third-party/signers/openfort.mdx b/content/wallets/pages/third-party/signers/openfort.mdx index 85a3ad956..f5eb5ea3e 100644 --- a/content/wallets/pages/third-party/signers/openfort.mdx +++ b/content/wallets/pages/third-party/signers/openfort.mdx @@ -1,12 +1,12 @@ --- title: Openfort -description: Use Openfort with Smart Wallets for EIP-7702, sponsorship, and batching +description: Use Openfort with Wallet APIs for EIP-7702, sponsorship, and batching slug: wallets/third-party/signers/openfort --- `@alchemy/wallet-apis` (v5.x.x) is currently in beta but is the recommended replacement for `@account-kit/wallet-client` (v4.x.x). If you run into any issues, please [reach out](mailto:support@alchemy.com). -Upgrade existing Openfort embedded wallets to Smart Wallets to enable gasless transactions, batching, and more in under 10 minutes. Keep Openfort for authentication, no wallet migration needed. Add battle-tested transaction infrastructure using EIP-7702 to upgrade your wallets to Smart Wallets: +Upgrade existing Openfort embedded wallets to Wallet APIs to enable gasless transactions, batching, and more in under 10 minutes. Keep Openfort for authentication, no wallet migration needed. Add battle-tested transaction infrastructure using EIP-7702 to upgrade your wallets to Wallet APIs: * [#1 gas abstraction infrastructure](https://www.bundlebear.com/erc4337-bundlers/all) on the market * [370M+](https://www.bundlebear.com/erc4337-paymasters/all) sponsored transactions diff --git a/content/wallets/pages/third-party/signers/privy.mdx b/content/wallets/pages/third-party/signers/privy.mdx index 8a8f84105..2ef596fa1 100644 --- a/content/wallets/pages/third-party/signers/privy.mdx +++ b/content/wallets/pages/third-party/signers/privy.mdx @@ -1,12 +1,12 @@ --- title: Privy -description: Use Privy with Smart Wallets for EIP-7702, sponsorship, and batching +description: Use Privy with Wallet APIs for EIP-7702, sponsorship, and batching slug: wallets/third-party/signers/privy --- `@alchemy/wallet-apis` (v5.x.x) is currently in beta but is the recommended replacement for `@account-kit/wallet-client` (v4.x.x). If you run into any issues, please [reach out](mailto:support@alchemy.com). -Upgrade existing Privy wallets to Smart Wallets to enable gasless transactions, batching, and more in under 10 minutes. Keep Privy for authentication, no wallet migration needed. Add battle-tested transaction infrastructure using EIP-7702 to upgrade your wallets to Smart Wallets: +Upgrade existing Privy wallets to Wallet APIs to enable gasless transactions, batching, and more in under 10 minutes. Keep Privy for authentication, no wallet migration needed. Add battle-tested transaction infrastructure using EIP-7702 to upgrade your wallets to Wallet APIs: * [#1 gas abstraction infrastructure](https://www.bundlebear.com/erc4337-bundlers/all) on the market * [370M+](https://www.bundlebear.com/erc4337-paymasters/all) sponsored transactions @@ -215,7 +215,7 @@ Upgrade existing Privy wallets to Smart Wallets to enable gasless transactions, * Create or select an app and copy the App ID and App Secret - Both the Smart Wallets configuration and the gas sponsorship policy must be + Both the Wallet APIs configuration and the gas sponsorship policy must be linked to the application behind your Alchemy API key for sponsorship to work. diff --git a/content/wallets/pages/third-party/signers/turnkey.mdx b/content/wallets/pages/third-party/signers/turnkey.mdx index e53a83585..b0a29c14b 100644 --- a/content/wallets/pages/third-party/signers/turnkey.mdx +++ b/content/wallets/pages/third-party/signers/turnkey.mdx @@ -1,12 +1,12 @@ --- title: Turnkey -description: Use Turnkey with Smart Wallets for EIP-7702, sponsorship, and batching +description: Use Turnkey with Wallet APIs for EIP-7702, sponsorship, and batching slug: wallets/third-party/signers/turnkey --- `@alchemy/wallet-apis` (v5.x.x) is currently in beta but is the recommended replacement for `@account-kit/wallet-client` (v4.x.x). If you run into any issues, please [reach out](mailto:support@alchemy.com). -Upgrade existing Turnkey wallets to Smart Wallets to enable gasless transactions, batching, and more in under 10 minutes. Keep Turnkey for key management, no wallet migration needed. Add battle-tested transaction infrastructure using EIP-7702 to upgrade EOAs to Smart Wallets: +Upgrade existing Turnkey wallets to Wallet APIs to enable gasless transactions, batching, and more in under 10 minutes. Keep Turnkey for key management, no wallet migration needed. Add battle-tested transaction infrastructure using EIP-7702 to upgrade EOAs to Wallet APIs: * [#1 gas abstraction infrastructure](https://www.bundlebear.com/erc4337-bundlers/all) on the market * [370M+](https://www.bundlebear.com/erc4337-paymasters/all) sponsored transactions diff --git a/content/wallets/pages/third-party/smart-contracts.mdx b/content/wallets/pages/third-party/smart-contracts.mdx index c9ea81bab..655824a1f 100644 --- a/content/wallets/pages/third-party/smart-contracts.mdx +++ b/content/wallets/pages/third-party/smart-contracts.mdx @@ -1,6 +1,6 @@ --- title: 3rd party smart contracts -description: Learn how to use smart contract accounts not included in Smart Wallets +description: Learn how to use smart contract accounts not included in Wallet APIs slug: wallets/third-party/smart-contracts --- @@ -13,12 +13,12 @@ If you'd like to bring your own smart account, you have a couple options: ## Third party SDKs - If you've built an SDK or guide that leverages any of the methods above to use as a smart contract within Smart Wallets, open a PR to add a link to your content in this section. + If you've built an SDK or guide that leverages any of the methods above to use as a smart contract within Wallet APIs, open a PR to add a link to your content in this section. ## Using `toSmartContractAccount` -The `SmartAccountClient` can be used with any smart account because it only relies on the `SmartContractAccount` interface. This means you can use your own smart account implementation with Smart Wallets. +The `SmartAccountClient` can be used with any smart account because it only relies on the `SmartContractAccount` interface. This means you can use your own smart account implementation with Wallet APIs. ```ts my-account.ts twoslash import { getEntryPoint, toSmartContractAccount } from "@aa-sdk/core"; diff --git a/content/wallets/pages/transactions/cross-chain-swap-tokens/index.mdx b/content/wallets/pages/transactions/cross-chain-swap-tokens/index.mdx index dfa62bcee..c9f53453e 100644 --- a/content/wallets/pages/transactions/cross-chain-swap-tokens/index.mdx +++ b/content/wallets/pages/transactions/cross-chain-swap-tokens/index.mdx @@ -1,10 +1,10 @@ --- title: Cross-chain swaps (Alpha) slug: wallets/transactions/cross-chain-swap-tokens -description: Convert tokens across different blockchain networks in a single transaction using Smart Wallets, with gas sponsorship support. +description: Convert tokens across different blockchain networks in a single transaction using Wallet APIs, with gas sponsorship support. --- -Cross-chain swaps let you convert tokens across different blockchain networks in a single transaction. They're built natively into Smart Wallets and you can integrate in minutes. +Cross-chain swaps let you convert tokens across different blockchain networks in a single transaction. They're built natively into Wallet APIs and you can integrate in minutes. Cross-chain swaps work like any other Smart Wallet transaction, so you can sponsor gas to do gasless swaps, or pay for gas in an ERC-20 token. diff --git a/content/wallets/pages/transactions/overview.mdx b/content/wallets/pages/transactions/overview.mdx index daca9382b..57ed4f021 100644 --- a/content/wallets/pages/transactions/overview.mdx +++ b/content/wallets/pages/transactions/overview.mdx @@ -1,10 +1,10 @@ --- title: Transactions overview -description: A comprehensive guide to sending transactions with Smart Wallets +description: A comprehensive guide to sending transactions with Wallet APIs slug: wallets/transactions/overview --- -Sending transactions across EVM and Solana is straightforward with Smart Wallets. This section covers everything you need to know about preparing, signing, sending, and tracking transactions. +Sending transactions across EVM and Solana is straightforward with Wallet APIs. This section covers everything you need to know about preparing, signing, sending, and tracking transactions. # Transaction lifecycle @@ -13,7 +13,7 @@ Sending transactions across EVM and Solana is straightforward with Smart Wallets alt="transaction lifecycle" /> -When a user sends a transaction, every step is handled automatically. In this section, you’ll learn how to execute steps 2–5 to enable capabilities (ex: gas sponsorship) for your users: +When a user sends a transaction, every step is handled automatically. In this section, you'll learn how to execute steps 2–5 to enable capabilities (ex: gas sponsorship) for your users: 1. Authenticate: User verifies their identity and accesses your app (see [Authentication](/docs/wallets/authentication/overview)) 2. Prepare: Prepare a transaction for submission @@ -21,21 +21,17 @@ When a user sends a transaction, every step is handled automatically. In this se 4. Send: Submit the transaction for inclusion onchain 5. Track & display data: Track the status of the transaction and display it to the user -# Everything you need for onchain applications +# Transaction capabilities | Capability | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | | [Send transactions](/docs/wallets/transactions/send-transactions) | Execute a single transaction | | [EIP-7702](/docs/wallets/transactions/using-eip-7702) | Upgrade embedded EOA users to smart wallets | | [Batch transactions](/docs/wallets/transactions/send-batch-transactions) | Execute multiple transactions atomically in a single step (ex: approve & swap) | -| [Sponsor gas](/docs/wallets/transactions/sponsor-gas) | Make gas disappear and say goodbye to “insufficient gas” | +| [Sponsor gas](/docs/wallets/transactions/sponsor-gas) | Make gas disappear and say goodbye to "insufficient gas" | | [Pay gas with any token](/docs/wallets/transactions/pay-gas-with-any-token) | Pay gas with stablecoins or the sell-side token | | [Swap tokens](/docs/wallets/transactions/swap-tokens) | Swap across networks, seamlessly | | [Retry transactions](/docs/wallets/transactions/retry-transactions) | Retry transactions stuck in mempool | | [Send parallel transactions](/docs/wallets/transactions/send-parallel-transactions) | Send multiple transactions in parallel | -| [Sponsor gas on Solana](/docs/wallets/transactions/solana/sponsor-gas) | Sponsor fees & rent and say goodbye to “insufficient fees" | +| [Sponsor gas on Solana](/docs/wallets/transactions/solana/sponsor-gas) | Sponsor fees & rent and say goodbye to "insufficient fees" | | [Track status](/docs/wallets/transactions/send-transactions) | Track the status of the transaction | - -# SDK vs. APIs - -Use the SDK if you’re building with React, React Native, or other JavaScript frameworks. It provides ready-to-use hooks and utilities. Use the APIs directly if you’re building in other environments (ex: python, flutter) or want lower-level control. diff --git a/content/wallets/pages/transactions/pay-gas-with-any-token/index.mdx b/content/wallets/pages/transactions/pay-gas-with-any-token/index.mdx index 4b8bb9e9b..81fc65cc2 100644 --- a/content/wallets/pages/transactions/pay-gas-with-any-token/index.mdx +++ b/content/wallets/pages/transactions/pay-gas-with-any-token/index.mdx @@ -5,7 +5,7 @@ slug: wallets/transactions/pay-gas-with-any-token --- Gas fees paid in the native token can feel foreign to users that primarily hold stablecoins or your app's own token. -With Smart Wallets, you can allow users to pay for gas with any token, streamlining the user experience. +With Wallet APIs, you can allow users to pay for gas with any token, streamlining the user experience. ## How it works diff --git a/content/wallets/pages/transactions/send-batch-transactions/index.mdx b/content/wallets/pages/transactions/send-batch-transactions/index.mdx index c9d2573fe..9add9a0d3 100644 --- a/content/wallets/pages/transactions/send-batch-transactions/index.mdx +++ b/content/wallets/pages/transactions/send-batch-transactions/index.mdx @@ -4,7 +4,7 @@ description: Batch multiple calls together into one transaction slug: wallets/transactions/send-batch-transactions/ --- -With Smart Wallets, batch multiple actions (such as token transfers, approvals, or swaps) into a single transaction. Users no longer need multiple confirmations or pop-ups to handle sequential actions. This speeds up how users interact with your app and improves the user experience. +With Wallet APIs, batch multiple actions (such as token transfers, approvals, or swaps) into a single transaction. Users no longer need multiple confirmations or pop-ups to handle sequential actions. This speeds up how users interact with your app and improves the user experience. ## How it works @@ -15,7 +15,7 @@ To use this feature, specify multiple calls to make. The parameter type accepts ## Prerequisites * API key from your [dashboard](https://dashboard.alchemy.com/apps) -* [Smart Wallets installed and configured in your project](/docs/wallets/pages/react/setup.mdx). +* [Wallet APIs installed and configured in your project](/docs/wallets/pages/react/setup.mdx). ## Implementation diff --git a/content/wallets/pages/transactions/solana/sponsor-gas-solana.mdx b/content/wallets/pages/transactions/solana/sponsor-gas-solana.mdx index 3302d9979..ea49f3761 100644 --- a/content/wallets/pages/transactions/solana/sponsor-gas-solana.mdx +++ b/content/wallets/pages/transactions/solana/sponsor-gas-solana.mdx @@ -6,7 +6,7 @@ slug: wallets/transactions/solana/sponsor-gas Fees and rent are a significant barrier to entry for new users of your app. Sponsor fees and rent to enable users to transact without holding SOL. -* Works with any Solana wallet. [Check out Solana Smart Wallets](/docs/wallets/react/solana-wallets/get-started) +* Works with any Solana wallet. [Check out Solana Wallet APIs](/docs/wallets/react/solana-wallets/get-started) * No need to manage SOL. Fees and rent are sponsored and added to your bill. ## How it works @@ -20,7 +20,7 @@ When you request gas sponsorship for a transaction using a configured policy, th ## Prerequisites * API key from your [dashboard](https://dashboard.alchemy.com/apps) -* Smart Wallets for Solana [set up](/docs/wallets/react/solana-wallets/get-started) in your project if you want to enable sign up/login for creation of wallets +* Wallet APIs for Solana [set up](/docs/wallets/react/solana-wallets/get-started) in your project if you want to enable sign up/login for creation of wallets * A sponsorship policy to cover fees and/or rent: [create a policy](https://dashboard.alchemy.com/gas-manager/policy/create/) ## Implementation diff --git a/content/wallets/pages/transactions/swap-tokens/index.mdx b/content/wallets/pages/transactions/swap-tokens/index.mdx index b9e324e8d..61ce864be 100644 --- a/content/wallets/pages/transactions/swap-tokens/index.mdx +++ b/content/wallets/pages/transactions/swap-tokens/index.mdx @@ -1,10 +1,10 @@ --- title: Same-chain swaps (Alpha) slug: wallets/transactions/swap-tokens -description: Convert any token to any other token onchain using Smart Wallets, with gas sponsorship and post-swap action support. +description: Convert any token to any other token onchain using Wallet APIs, with gas sponsorship and post-swap action support. --- -Swaps let you convert any token to any other token onchain. They're built natively into Smart Wallets and you can integrate in minutes. +Swaps let you convert any token to any other token onchain. They're built natively into Wallet APIs and you can integrate in minutes. You can also add actions after the swap completes. For example, you can deposit your newly swapped tokens into a DeFi protocol. diff --git a/content/wallets/pages/transactions/using-eip-7702/client.mdx b/content/wallets/pages/transactions/using-eip-7702/client.mdx index d5eb83f31..e64f7ba63 100644 --- a/content/wallets/pages/transactions/using-eip-7702/client.mdx +++ b/content/wallets/pages/transactions/using-eip-7702/client.mdx @@ -1,6 +1,6 @@ `@alchemy/wallet-apis` (v5.x.x) is currently in beta but is the recommended replacement for `@account-kit/wallet-client` (v4.x.x). If you run into any issues, please [reach out](mailto:support@alchemy.com). -EIP-7702 is the default mode for Smart Wallets. Create a client with your owner and use `sendCalls` - the SDK automatically handles authorization requests to delegate the EOA to Modular Account v2 when needed. +EIP-7702 is the default mode for Wallet APIs. Create a client with your owner and use `sendCalls` - the SDK automatically handles authorization requests to delegate the EOA to Modular Account v2 when needed. If the signing EOA is delegated to a different smart contract, `sendCalls` diff --git a/content/wallets/pages/transactions/using-eip-7702/index.mdx b/content/wallets/pages/transactions/using-eip-7702/index.mdx index 158208065..0c0114bbe 100644 --- a/content/wallets/pages/transactions/using-eip-7702/index.mdx +++ b/content/wallets/pages/transactions/using-eip-7702/index.mdx @@ -1,6 +1,6 @@ --- title: How EIP-7702 works -description: Understanding how Smart Wallets use EIP-7702 +description: Understanding how Wallet APIs use EIP-7702 slug: wallets/transactions/using-eip-7702 --- @@ -160,7 +160,7 @@ If you've already used an owner address in 7702 mode (e.g. by calling `wallet_pr - EIP-7702 delegation is now the default mode for Smart Wallets. When you use your owner address directly with `wallet_prepareCalls` or other Transaction APIs, 7702 mode is automatically enabled. + EIP-7702 delegation is now the default mode for Wallet APIs. When you use your owner address directly with `wallet_prepareCalls` or other Transaction APIs, 7702 mode is automatically enabled. The `eip7702Auth` capability supports the interface defined in [ERC-7902](https://eips.ethereum.org/EIPS/eip-7902). diff --git a/content/wallets/pages/troubleshooting/server-side-rendering.mdx b/content/wallets/pages/troubleshooting/server-side-rendering.mdx index 17c6cac3b..5f2d28290 100644 --- a/content/wallets/pages/troubleshooting/server-side-rendering.mdx +++ b/content/wallets/pages/troubleshooting/server-side-rendering.mdx @@ -1,12 +1,12 @@ --- title: Server-side rendering -description: Learn how to use Smart Wallets with server-side rendering. +description: Learn how to use Wallet APIs with server-side rendering. slug: wallets/troubleshooting/ssr --- > ⚠️ **Common Issue**: If SSR is not set up correctly, you may see sessions resetting or users getting logged out unexpectedly. Make sure to follow this guide fully to preserve session state. -When using Smart Wallets in a server-side rendered setting, you may see inconsistencies in account state between the server and the client. This leads to flashes of content when logged in. To avoid this, load the account state optimistically on the server and pass it to the client. +When using Wallet APIs in a server-side rendered setting, you may see inconsistencies in account state between the server and the client. This leads to flashes of content when logged in. To avoid this, load the account state optimistically on the server and pass it to the client. ## Update your config @@ -175,11 +175,11 @@ export const config = createConfig({ }); ``` -This setting defers hydration of the Smart Wallets state until you call the `hydrate` method on mount. +This setting defers hydration of the Wallet APIs state until you call the `hydrate` method on mount. ## Hydrate the account state -Now that you've set up your config for SSR, manually hydrate the state on the client. Call the `hydrate` method exported by Smart Wallets core. +Now that you've set up your config for SSR, manually hydrate the state on the client. Call the `hydrate` method exported by Wallet APIs core. diff --git a/content/wallets/shared/react-native/signer-setup.mdx b/content/wallets/shared/react-native/signer-setup.mdx index 7ca79de8f..03e414418 100644 --- a/content/wallets/shared/react-native/signer-setup.mdx +++ b/content/wallets/shared/react-native/signer-setup.mdx @@ -6,7 +6,7 @@ Make sure **Ethereum** is enabled for your app under the Networks tab -2. Activate **smart wallets** in your [Smart Wallets dashboard](https://dashboard.alchemy.com/apps/latest/services/smart-wallets/overview) +2. Activate **smart wallets** in your [Wallet APIs dashboard](https://dashboard.alchemy.com/apps/latest/services/smart-wallets/overview)
@@ -50,7 +50,7 @@ folder of the `React Native Signer` repo. * The HTTP or HTTPS URL you set up - in the previous step needs to be added as the **Redirect URL** in the Smart Wallets + in the previous step needs to be added as the **Redirect URL** in the Wallet APIs dashboard. * This is the URL that redirects occur to when you use diff --git a/content/wallets/shared/setup-smart-account-client/smart-account-client-details.mdx b/content/wallets/shared/setup-smart-account-client/smart-account-client-details.mdx index 572d5d547..60fefc886 100644 --- a/content/wallets/shared/setup-smart-account-client/smart-account-client-details.mdx +++ b/content/wallets/shared/setup-smart-account-client/smart-account-client-details.mdx @@ -39,7 +39,7 @@ See the [full guide](/docs/wallets/transactions/sponsor-gas) for gas sponsorship | Sponsor gas for users. Get your policy ID from the [Gas Manager dashboard](https://dashboard.alchemy.com/gas-manager) | `policyId` | `string` | | Simulate user operations before sending (i.e. use [`alchemyUserOperationSimulator`](/docs/wallets/reference/account-kit/infra/functions/alchemyUserOperationSimulator)) | `useSimulation` | `boolean` | | Custom middleware to run before requesting sponsorship | `customMiddleware` | `ClientMiddlewareFn` | - | Override fee estimation middleware (if you are using the Smart Wallets RPCs, use the default [`alchemyFeeEstimator`](/docs/wallets/reference/account-kit/infra/variables/alchemyFeeEstimator)) | `feeEstimator` | `ClientMiddlewareFn` | + | Override fee estimation middleware (if you are using the Wallet APIs RPCs, use the default [`alchemyFeeEstimator`](/docs/wallets/reference/account-kit/infra/variables/alchemyFeeEstimator)) | `feeEstimator` | `ClientMiddlewareFn` | | Override gas estimation middleware (the default middleware calls the underlying bundler RPC to `eth_estimateUserOperationGas`) | `gasEstimator` | `ClientMiddlewareFn` | | Override middleware that signs user operation(s) | `signUserOperation` | `ClientMiddlewareFn` | | Advanced account params | `accountParams` | `AccountConfig` with the following fields:
  • `mode`: `"default"` | `"7702"`
  • `entryPoint`: `EntryPointDef`
  • `signerEntity`: `SignerEntity`
  • `salt`: `bigint`
  • `factoryAddress`: `Address`
  • `initCode`: `Hex`
  • `accountAddress`: `Address`
| diff --git a/content/wallets/shared/sponsor-gas-erc20-prerequisites.mdx b/content/wallets/shared/sponsor-gas-erc20-prerequisites.mdx index ee8d4f7c6..65e616015 100644 --- a/content/wallets/shared/sponsor-gas-erc20-prerequisites.mdx +++ b/content/wallets/shared/sponsor-gas-erc20-prerequisites.mdx @@ -1,2 +1,2 @@ -* Smart Wallets already installed and configured in your project. +* Wallet APIs already installed and configured in your project. * An API key.