diff --git a/README.md b/README.md
index d183cf02544..ee143f22079 100644
--- a/README.md
+++ b/README.md
@@ -18,8 +18,8 @@
## Features
- Support for React & React-Native
-- First party support for [Embedded Wallets](https://portal.thirdweb.com/connect/embedded-wallet/overview) (social/email login)
-- First party support for [Account Abstraction](https://portal.thirdweb.com/connect/account-abstraction/overview)
+- First party support for [Embedded Wallets](https://portal.thirdweb.com/wallets) (social/email login)
+- First party support for [Account Abstraction](https://portal.thirdweb.com/wallets/sponsor-gas)
- Instant connection to any chain with RPC Edge integration
- Integrated IPFS upload/download
- UI Components for connection, transactions, nft rendering
diff --git a/apps/portal/public/llms.txt b/apps/portal/public/llms.txt
index d804babc945..60e16d85e3d 100644
--- a/apps/portal/public/llms.txt
+++ b/apps/portal/public/llms.txt
@@ -1017,7 +1017,7 @@
* [getProfiles](https://portal.thirdweb.com/references/typescript/v5/getProfiles): Gets the linked profiles for the connected in-app or ecosystem wallet.
* [getUserEmail](https://portal.thirdweb.com/references/typescript/v5/getUserEmail): Retrieves the authenticated user email for the active in-app wallet.
* [getUserPhoneNumber](https://portal.thirdweb.com/references/typescript/v5/getUserPhoneNumber): Retrieves the authenticated user phone number for the active embedded wallet.
-* [inAppWallet](https://portal.thirdweb.com/references/typescript/v5/inAppWallet): Creates an app scoped wallet for users based on various authentication methods. Full list of available authentication methods [here](https://portal.thirdweb.com/connect/wallet/sign-in-methods/configure).
+* [inAppWallet](https://portal.thirdweb.com/references/typescript/v5/inAppWallet): Creates an app scoped wallet for users based on various authentication methods. Full list of available authentication methods [here](https://portal.thirdweb.com/wallets/users).
* [linkProfile](https://portal.thirdweb.com/references/typescript/v5/linkProfile): Connects a new profile (and new authentication method) to the current user.
* [preAuthenticate](https://portal.thirdweb.com/references/typescript/v5/preAuthenticate): Pre-authenticates the user based on the provided authentication strategy. Use this function to send a verification code to the user's email or phone number.
* [privateKeyToAccount](https://portal.thirdweb.com/references/typescript/v5/privateKeyToAccount): Get an `Account` object from a private key.
diff --git a/apps/portal/redirects.mjs b/apps/portal/redirects.mjs
index cc6b808c721..03cc304f390 100644
--- a/apps/portal/redirects.mjs
+++ b/apps/portal/redirects.mjs
@@ -1,5 +1,3 @@
-// @ts-check
-
const unrealEngineRedirects = {
"/unreal-engine/blueprints/private-key-wallet":
"unreal-engine/blueprints/in-app-wallet",
@@ -206,7 +204,7 @@ const reactRedirects = {
};
const solidityRedirects = {
- "/interact/overview": "/connect/blockchain-api",
+ "/interact/overview": "/wallets",
"/solidity": "/contracts/build",
"/solidity/base-contract/erc721delayedreveal":
"/contracts/build/base-contracts/erc-721/delayed-reveal",
@@ -545,98 +543,89 @@ const unityRedirects = {
const walletRedirects = {
//auth
- "/auth": "/connect/auth",
- "/auth/client-frameworks/react": "/connect/auth/client-frameworks/react",
- "/auth/client-frameworks/react-native":
- "/connect/auth/client-frameworks/react-native",
- "/auth/faqs": "/connect/auth/faq",
- "/auth/getting-started": "/connect/auth/get-started",
- "/auth/how-auth-works": "/connect/auth/how-it-works",
- "/auth/how-auth-works/auth-api": "/connect/auth/how-it-works/api",
- "/auth/how-auth-works/json-web-tokens": "/connect/auth/how-it-works/jwt",
- "/auth/how-auth-works/sign-in-with-wallet": "/connect/auth/how-it-works/siwe",
- "/auth/integrations/firebase": "/connect/auth/integrations/firebase",
- "/auth/integrations/next-auth": "/connect/auth/integrations/next-auth",
- "/auth/integrations/supabase": "/connect/auth/integrations/supabase",
- "/auth/server-frameworks/express": "/connect/auth/server-frameworks/express",
- "/auth/server-frameworks/next": "/connect/auth/server-frameworks/next",
- "/auth/wallet-configuration": "/connect/auth/wallet-configuration",
+ "/auth": "/wallets/auth",
+ "/auth/client-frameworks/react": "/wallets",
+ "/auth/client-frameworks/react-native": "/wallets",
+ "/auth/faqs": "/wallets/auth",
+ "/auth/getting-started": "/wallets/auth",
+ "/auth/how-auth-works": "/wallets/auth",
+ "/auth/how-auth-works/auth-api": "/wallets/auth",
+ "/auth/how-auth-works/json-web-tokens": "/wallets/auth",
+ "/auth/how-auth-works/sign-in-with-wallet": "/wallets/auth",
+ "/auth/integrations/firebase": "/wallets/auth",
+ "/auth/integrations/next-auth": "/wallets/auth",
+ "/auth/integrations/supabase": "/wallets/auth",
+ "/auth/server-frameworks/express": "/wallets/auth",
+ "/auth/server-frameworks/next": "/wallets/auth",
+ "/auth/wallet-configuration": "/wallets/auth",
//connect
- "/connect/architecture": "/connect",
- "/connect/auth/client-frameworks/react": "/connect/auth",
- "/connect/auth/client-frameworks/react-native": "/connect/auth",
- "/connect/auth/faqs": "/connect/auth",
- "/connect/auth/get-started": "/connect/auth",
- "/connect/auth/how-it-works": "/connect/auth",
- "/connect/auth/how-it-works/api": "/connect/auth",
- "/connect/auth/how-it-works/jwt": "/connect/auth",
- "/connect/auth/how-it-works/siwe": "/connect/auth",
- "/connect/auth/integrations/firebase": "/connect/auth",
- "/connect/auth/integrations/next-auth": "/connect/auth",
- "/connect/auth/integrations/supabase": "/connect/auth",
- "/connect/auth/server-frameworks/express": "/connect/auth",
- "/connect/auth/server-frameworks/next": "/connect/auth",
- "/connect/auth/wallet-configuration": "/connect/auth",
- "/connect/connect-wallet": "/connect/connect",
- "/connect/connect-wallet/auth": "/connect/sign-in",
- "/connect/connect-wallet/button-title": "/connect/sign-in",
- "/connect/connect-wallet/class-name": "/connect/sign-in",
- "/connect/connect-wallet/custom-button": "/connect/sign-in",
- "/connect/connect-wallet/custom-ui": "/connect/sign-in/custom-ui",
- "/connect/connect-wallet/drop-down-positions": "/connect/sign-in",
- "/connect/connect-wallet/hide-testnet-faucet": "/connect/sign-in",
- "/connect/connect-wallet/modal-size": "/connect/sign-in",
- "/connect/connect-wallet/modal-title": "/connect/sign-in",
- "/connect/connect-wallet/privacy-policy": "/connect/sign-in",
- "/connect/connect-wallet/switch-chain": "/connect/sign-in",
- "/connect/connect-wallet/terms-of-service": "/connect/sign-in",
- "/connect/connect-wallet/theme": "/connect/sign-in",
- "/connect/connect-wallet/wallet-providers": "/connect/connect",
- "/connect/connect-wallet/welcome-screen": "/connect/sign-in",
- "/connect/ecosystem/ecosystem-premissions":
- "/connect/wallet/ecosystem/permissions",
+ "/connect/architecture": "/wallets",
+ "/connect/auth/client-frameworks/react": "/wallets/auth",
+ "/connect/auth/client-frameworks/react-native": "/wallets/auth",
+ "/connect/auth/faqs": "/wallets/auth",
+ "/connect/auth/get-started": "/wallets/auth",
+ "/connect/auth/how-it-works": "/wallets/auth",
+ "/connect/auth/how-it-works/api": "/wallets/auth",
+ "/connect/auth/how-it-works/jwt": "/wallets/auth",
+ "/connect/auth/how-it-works/siwe": "/wallets/auth",
+ "/connect/auth/integrations/firebase": "/wallets/auth",
+ "/connect/auth/integrations/next-auth": "/wallets/auth",
+ "/connect/auth/integrations/supabase": "/wallets/auth",
+ "/connect/auth/server-frameworks/express": "/wallets/auth",
+ "/connect/auth/server-frameworks/next": "/wallets/auth",
+ "/connect/auth/wallet-configuration": "/wallets/auth",
+ "/connect/connect-wallet": "/wallets",
+ "/connect/connect-wallet/auth": "/wallets",
+ "/connect/connect-wallet/button-title": "/wallets",
+ "/connect/connect-wallet/class-name": "/wallets",
+ "/connect/connect-wallet/custom-button": "/wallets",
+ "/connect/connect-wallet/custom-ui": "/wallets",
+ "/connect/connect-wallet/drop-down-positions": "/wallets",
+ "/connect/connect-wallet/hide-testnet-faucet": "/wallets",
+ "/connect/connect-wallet/modal-size": "/wallets",
+ "/connect/connect-wallet/modal-title": "/wallets",
+ "/connect/connect-wallet/privacy-policy": "/wallets",
+ "/connect/connect-wallet/switch-chain": "/wallets",
+ "/connect/connect-wallet/terms-of-service": "/wallets",
+ "/connect/connect-wallet/theme": "/wallets",
+ "/connect/connect-wallet/wallet-providers": "/wallets",
+ "/connect/connect-wallet/welcome-screen": "/wallets",
+ "/connect/ecosystem/ecosystem-premissions": "/wallets/ecosystem/set-up",
- "/connect/ecosystem/faq": "/connect/wallet/faq",
- "/connect/ecosystem/get-started": "/connect/wallet/get-started",
- "/connect/ecosystem/integrating-partners":
- "/connect/wallet/ecosystem/integrating-partners",
- "/connect/ecosystem/overview": "/connect/wallet/overview",
- "/connect/ecosystem/pregenerate-wallets":
- "/connect/wallet/pregenerate-wallets",
- "/connect/ecosystem/security": "/connect/wallet/security",
- "/connect/ecosystem/wallet-explorer": "/connect/wallet/ecosystem/portal",
- "/connect/faqs": "/connect/sign-in",
- "/connect/in-app-wallet/faqs": "/connect/wallet/faq",
- "/connect/in-app-wallet/get-started": "/connect/wallet/get-started",
+ "/connect/ecosystem/faq": "/wallets/faq",
+ "/connect/ecosystem/get-started": "/wallets",
+ "/connect/ecosystem/integrating-partners": "/wallets/ecosystem/set-up",
+ "/connect/ecosystem/overview": "/wallets/ecosystem/set-up",
+ "/connect/ecosystem/pregenerate-wallets": "/wallets",
+ "/connect/ecosystem/security": "/wallets/security",
+ "/connect/ecosystem/wallet-explorer": "/wallets/ecosystem/set-up",
+ "/connect/faqs": "/wallets/faq",
+ "/connect/in-app-wallet/faqs": "/wallets/faq",
+ "/connect/in-app-wallet/get-started": "/wallets",
"/connect/in-app-wallet/guides/export-private-key":
- "/connect/wallet/user-management/export-private-key",
- "/connect/in-app-wallet/guides/get-user-details":
- "/connect/wallet/user-management/get-user-profiles",
+ "/wallets/export-private-key",
+ "/connect/in-app-wallet/guides/get-user-details": "/wallets/get-users",
"/connect/in-app-wallet/guides/link-multiple-profiles":
- "/connect/wallet/user-management/link-multiple-identity",
+ "/wallets/link-profiles",
"/connect/in-app-wallet/guides/retrieve-linked-profiles":
- "/connect/wallet/user-management/get-user-profiles",
+ "/wallets/get-users",
- "/connect/in-app-wallet/overview": "/connect/wallet/overview",
- "/connect/in-app-wallet/security": "/connect/wallet/security",
- "/connect/sign-in": "/connect/sign-in/overview",
- "/connect/sign-in/ConnectButton": "/connect/wallet/get-started",
- "/connect/sign-in/ConnectEmbed": "/connect/wallet/get-started",
- "/connect/sign-in/Custom-UI": "/connect/wallet/get-started",
- "/connect/sign-in/methods/email-and-phone":
- "/connect/wallet/sign-in-methods/configure",
- "/connect/sign-in/methods/external-wallets":
- "/connect/wallet/sign-in-methods/external-wallets",
- "/connect/sign-in/methods/guest-mode":
- "/connect/wallet/sign-in-methods/guest",
- "/connect/sign-in/methods/social-logins":
- "/connect/wallet/sign-in-methods/configure",
+ "/connect/in-app-wallet/overview": "/wallets",
+ "/connect/in-app-wallet/security": "/wallets/security",
+ "/connect/sign-in": "/wallets/auth",
+ "/connect/sign-in/ConnectButton": "/wallets",
+ "/connect/sign-in/ConnectEmbed": "/wallets",
+ "/connect/sign-in/Custom-UI": "/wallets",
+ "/connect/sign-in/methods/email-and-phone": "/wallets/users",
+ "/connect/sign-in/methods/external-wallets": "/wallets/external-wallets",
+ "/connect/sign-in/methods/guest-mode": "/wallets",
+ "/connect/sign-in/methods/social-logins": "/wallets/users",
- "/connect/sign-in/overview": "/connect/wallet/overview",
- "/connect/usage-with-react-native-sdk": "/connect/sign-in",
- "/connect/usage-with-react-sdk": "/connect/sign-in",
- "/connect/usage-with-typescript-sdk": "/connect/sign-in",
- "/connect/usage-with-unity-sdk": "/connect/sign-in",
+ "/connect/sign-in/overview": "/wallets/auth",
+ "/connect/usage-with-react-native-sdk": "/wallets",
+ "/connect/usage-with-react-sdk": "/wallets",
+ "/connect/usage-with-typescript-sdk": "/wallets",
+ "/connect/usage-with-unity-sdk": "/wallets",
//embedded wallet
"/embedded-wallet": "/wallets/embedded-wallet/overview",
@@ -1022,6 +1011,8 @@ const otherRedirects = {
"/wallet/get-started/overview": "/connect/wallet/overview",
// connect > wallets
"/connect": "/wallets",
+ "/connect/auth": "/wallets/auth",
+ "/connect/:path*": "/wallets/:path*",
"/connect/wallet/sign-in-methods/configure": "/wallets/users",
"/connect/wallet/server": "/wallets/server",
"/connect/account-abstraction/get-started": "/wallets/sponsor-gas",
@@ -1061,7 +1052,7 @@ const v4ToV5Redirects = {
"/typescript/v4/:path*": "/typescript/v5",
"/unity/v4": "/unity/v5",
"/unity/v4/:path*": "/unity/v5",
- "/wallet-sdk/:path*": "/connect",
+ "/wallet-sdk/:path*": "/wallets",
};
const payRedirects = {
diff --git a/apps/portal/src/app/account/api-keys/page.mdx b/apps/portal/src/app/account/api-keys/page.mdx
index 45523805697..902bdf5f509 100644
--- a/apps/portal/src/app/account/api-keys/page.mdx
+++ b/apps/portal/src/app/account/api-keys/page.mdx
@@ -32,4 +32,4 @@ API Keys consists of two components:
To obtain an API Key, follow the Create Project step in the [Create API Key](/account/api-keys/create) guide.
-You can find your API Key in the project settings of your dashboard.
\ No newline at end of file
+You can find your API Key in the project settings of your dashboard.
diff --git a/apps/portal/src/app/dotnet/wallets/actions/authenticate/page.mdx b/apps/portal/src/app/dotnet/wallets/actions/authenticate/page.mdx
index 0cb3f98e80c..702f5ab9be3 100644
--- a/apps/portal/src/app/dotnet/wallets/actions/authenticate/page.mdx
+++ b/apps/portal/src/app/dotnet/wallets/actions/authenticate/page.mdx
@@ -8,7 +8,7 @@ export const metadata = createMetadata({
# IThirdwebWallet.Authenticate
-Login to your [thirdweb Auth](https://portal.thirdweb.com/connect/auth)-integrated backend.
+Login to your [thirdweb Auth](/wallets/auth)-integrated backend.
## Usage
diff --git a/apps/portal/src/app/engine/v2/configure-wallets/server-wallet/page.mdx b/apps/portal/src/app/engine/v2/configure-wallets/server-wallet/page.mdx
index 3e39ef82842..87ce8b017b9 100644
--- a/apps/portal/src/app/engine/v2/configure-wallets/server-wallet/page.mdx
+++ b/apps/portal/src/app/engine/v2/configure-wallets/server-wallet/page.mdx
@@ -33,5 +33,5 @@ The smart account is automatically deployed the first time you send a transactio
### Pricing
-Smart server wallets have no additional costs to use with your Engine instance. Transactions sent from smart backend wallets follow the [same billing model as regular account abstraction transactions with thirdweb](/connect/account-abstraction/infrastructure#pricing--billing).
-Smart accounts need to be deployed on each chain. This costs gas and is billed to your account like any other transaction.
\ No newline at end of file
+Smart server wallets have no additional costs to use with your Engine instance. Transactions sent from smart backend wallets follow the same billing model as regular account abstraction transactions with thirdweb.
+Smart accounts need to be deployed on each chain. This costs gas and is billed to your account like any other transaction.
diff --git a/apps/portal/src/app/engine/v2/features/relayers/page.mdx b/apps/portal/src/app/engine/v2/features/relayers/page.mdx
index c6464fa5d8f..64c7bf8fade 100644
--- a/apps/portal/src/app/engine/v2/features/relayers/page.mdx
+++ b/apps/portal/src/app/engine/v2/features/relayers/page.mdx
@@ -69,7 +69,7 @@ import { ThirdwebProvider } from "thirdweb/react";
;
```
-Next prompt the user to connect a wallet. See [ConnectButton](https://portal.thirdweb.com/connect/sign-in/ConnectButton) for customization options.
+Next prompt the user to connect a wallet. See [ConnectButton](/references/typescript/v5/ConnectButton) for customization options.
```tsx
import { ConnectButton } from "thirdweb/react";
diff --git a/apps/portal/src/app/engine/v2/troubleshooting/page.mdx b/apps/portal/src/app/engine/v2/troubleshooting/page.mdx
index 2a6d8d91aed..e4afc531d8c 100644
--- a/apps/portal/src/app/engine/v2/troubleshooting/page.mdx
+++ b/apps/portal/src/app/engine/v2/troubleshooting/page.mdx
@@ -112,12 +112,6 @@ The backend wallet you are sending the transaction with does not have sufficient
Confirm if the backend wallet is a valid admin for this account.
If you are using Session Keys, confirm they are not close to or already expired.
-### Received "AA21 didn’t pay prefund" error
-
-**What it means**
-
-Your thirdweb API key used by Engine is not properly configured to use Account Abstraction, or you have a [sponsorship rule](https://portal.thirdweb.com/connect/account-abstraction/sponsorship-rules) that has been exceeded.
-
**How to resolve**
-Confirm if the API key is tied to an account with valid payment. Also confirm if there are any sponsorship rule for the Engine API key.
\ No newline at end of file
+Confirm if the API key is tied to an account with valid payment. Also confirm if there are any sponsorship rule for the Engine API key.
diff --git a/apps/portal/src/app/layout.tsx b/apps/portal/src/app/layout.tsx
index ac8131b878d..068e41c2e59 100644
--- a/apps/portal/src/app/layout.tsx
+++ b/apps/portal/src/app/layout.tsx
@@ -52,10 +52,6 @@ export default function RootLayout({
- {/* */}
diff --git a/apps/portal/src/app/nebula/get-started/page.mdx b/apps/portal/src/app/nebula/get-started/page.mdx
index da053619be4..955143d4363 100644
--- a/apps/portal/src/app/nebula/get-started/page.mdx
+++ b/apps/portal/src/app/nebula/get-started/page.mdx
@@ -3,13 +3,13 @@ import NewProject from "../assets/new-project.png";
import KeysSetup from "../assets/keys.png";
export const metadata = createMetadata({
- image: {
- title: "Get Started",
- icon: "nebula",
- },
- title: "Get started with thirdweb Nebula: Set up Guide",
- description:
- "How to start building web3 capable apps with thirdweb Nebula, the most powerful AI to interact with the blockchain.",
+ image: {
+ title: "Get Started",
+ icon: "nebula",
+ },
+ title: "Get started with thirdweb Nebula: Set up Guide",
+ description:
+ "How to start building web3 capable apps with thirdweb Nebula, the most powerful AI to interact with the blockchain.",
});
@@ -181,4 +181,4 @@ Congratulations! You have successfully set up the Nebula API and executed a tran
### Additional Resources
- [Nebula API Documentation](https://portal.thirdweb.com/nebula/api-reference)
-- [thirdweb SDK Documentation](https://portal.thirdweb.com/typescript/v5)
\ No newline at end of file
+- [thirdweb SDK Documentation](https://portal.thirdweb.com/typescript/v5)
diff --git a/apps/portal/src/app/pay/faqs/page.mdx b/apps/portal/src/app/pay/faqs/page.mdx
index d58f7caa761..c44218bd365 100644
--- a/apps/portal/src/app/pay/faqs/page.mdx
+++ b/apps/portal/src/app/pay/faqs/page.mdx
@@ -11,25 +11,25 @@ export const metadata = createMetadata({
# FAQs
-
-thirdweb does not charge any fees for buy with fiat. Any fees on onramping are based on the onramp provider.
+
+thirdweb does not charge any fees for buy with fiat. Any fees on onramping are based on the onramp provider.
-
-For buying with crypto or swap fees, thirdweb charges a 0.3% protocol fee. Developers may monetize their application by charging additional fees on swap transactions. To set a fee in your project page, navigate to Payments > Settings to set this fee.
+
+For buying with crypto or swap fees, thirdweb charges a 0.3% protocol fee. Developers may monetize their application by charging additional fees on swap transactions. To set a fee in your project page, navigate to Payments > Settings to set this fee.
-
+
Network fees, also referred to as miner fees, are paid to the miner for processing crypto transactions and securing the respective network. These fees do not go to thirdweb.
-
-Payments is an asset router that combines thirdweb's own onchain infrastructure with existing bridging and swapping protocols to find the optimal route for any given transaction.
-This can include intents, native bridges, third party bridges, cross-chain messaging protocols, thirdweb's custom bridges, and more. All routes are monitored and planned continuously for
-health, price, and speed to guarantee the best path every time.
+
+Payments is an asset router that combines thirdweb's own onchain infrastructure with existing bridging and swapping protocols to find the optimal route for any given transaction.
+This can include intents, native bridges, third party bridges, cross-chain messaging protocols, thirdweb's custom bridges, and more. All routes are monitored and planned continuously for
+health, price, and speed to guarantee the best path every time.
-
+
Payments is able to support most token that meet the following criteria:
- The token must have sufficient liquidity
@@ -37,11 +37,11 @@ Payments is able to support most token that meet the following criteria:
To request support for a token, please visit the Payments tab in your project dashboard > Settings > "Don't see your token listed?" component and fill out the chain and token address information.
-Payments will automatically kick off the token route discovery process. Please check back the Payments modal after 20-40 minutes for the requested token.
+Payments will automatically kick off the token route discovery process. Please check back the Payments modal after 20-40 minutes for the requested token.
-
-Yes, Payments is designed to be agnostic to wallet infrastructure. You can use it with any wallet service.
+
+Yes, Payments is designed to be agnostic to wallet infrastructure. You can use it with any wallet service.
@@ -50,16 +50,16 @@ Apple Pay and Google Pay are supported through the onramp providers depending on
Onramp options all require minimal KYC. This is done to comply with local regulations and to ensure the safety of our users.
-Please note: onramping with Coinbase does not require KYC for a purchase below $500 with debit card.
+Please note: onramping with Coinbase does not require KYC for a purchase below $500 with debit card.
-
+
We currently require a $1 minimum purchase for both stablecoin and non-stablecoin purchases through Buy With Fiat.
Our transaction maximum starts from $1500 per week for new users and can increase over time to $10,000 per week.
-
+
**Buy With Fiat** is available 160+ countries. The following countries are _UNSUPPORTED_:
- Afghanistan
@@ -87,7 +87,7 @@ Our transaction maximum starts from $1500 per week for new users and can increas
All United States are supported, excluding Hawaii.
-
+
We offer direct onramping **internationally** to the following tokens:
- Mainnet (Ethereum)
@@ -107,19 +107,19 @@ All other tokens will require an additional Buy With Crypto step.
\* Not available in New York or the EU.
-
+
Users will be required to complete KYC verification for their first purchase using 'Buy with Fiat.' After that, no further KYC will be needed for future purchases on the same platform.
-
+
Payments can support any currency on our [supported chains](https://thirdweb.com/chainlist?service=pay).
-
+
Prices are set depending on the liquidity provider used to route your transaction.
-
+
Fiat payouts are not currently available.
diff --git a/apps/portal/src/app/pay/guides/smart-accounts/page.mdx b/apps/portal/src/app/pay/guides/smart-accounts/page.mdx
index a2f8c4d4f10..b4ee08330b1 100644
--- a/apps/portal/src/app/pay/guides/smart-accounts/page.mdx
+++ b/apps/portal/src/app/pay/guides/smart-accounts/page.mdx
@@ -148,7 +148,7 @@ for (let i = 0; i < bridgePreparation.steps.length; i++) {
## Next Steps
-- **[EIP7702 Documentation](/connect/account-abstraction/overview)** - Learn more about smart account features
+- **[EIP7702 Documentation](/wallets/sponsor-gas)** - Learn more about smart account features
- **[Batching Transactions](/typescript/v5/account-abstraction/batching-transactions)** - Explore advanced batching patterns
-- **[Gas Sponsorship](/connect/account-abstraction/sponsoring-gas)** - Set up custom gas sponsorship rules
-- **[Payments API](/pay/webhooks)** - Monitor cross-chain operations with webhooks
+- **[Gas Sponsorship](/wallets/sponsor-gas)** - Set up custom gas sponsorship rules
+- **[Payments API](/payments/webhooks)** - Monitor cross-chain operations with webhooks
diff --git a/apps/portal/src/app/pay/onramp-providers/page.mdx b/apps/portal/src/app/pay/onramp-providers/page.mdx
index 016ce59abd5..d6f58651257 100644
--- a/apps/portal/src/app/pay/onramp-providers/page.mdx
+++ b/apps/portal/src/app/pay/onramp-providers/page.mdx
@@ -12,7 +12,7 @@ export const metadata = createMetadata({
# Onramp Providers
-**Onramp Providers** are services that allow users to buy crypto with fiat. You can set preferred providers for your application by using the [`preferredProvider`](/connect/pay/customization/payembed#preferred-provider) parameter in the `PayEmbed` component.
+**Onramp Providers** are services that allow users to buy crypto with fiat.
Payments supports the following onramp providers:
- **Coinbase**
@@ -38,4 +38,4 @@ Each provider has different regions they support. You can learn more about the s
| -------- | ------- |
| Coinbase | [View Regions](https://docs.cdp.coinbase.com/onramp/docs/api-configurations) |
| Transak | [View Regions](https://transak.com/global-coverage) |
-| Stripe | [View Regions](https://support.stripe.com/questions/crypto-supportability-and-availability-by-region) |
\ No newline at end of file
+| Stripe | [View Regions](https://support.stripe.com/questions/crypto-supportability-and-availability-by-region) |
diff --git a/apps/portal/src/app/payments/products/page.mdx b/apps/portal/src/app/payments/products/page.mdx
index 9516da99604..9c3a7b94e1a 100644
--- a/apps/portal/src/app/payments/products/page.mdx
+++ b/apps/portal/src/app/payments/products/page.mdx
@@ -84,4 +84,4 @@ The CheckoutWidget handles the complete payment flow, supporting both crypto and
## API Reference
-- [CheckoutWidget](/references/typescript/v5/checkoutwidget)
+- [CheckoutWidget](/references/typescript/v5/widgets/CheckoutWidget)
diff --git a/apps/portal/src/app/react/v5/account-abstraction/get-started/page.mdx b/apps/portal/src/app/react/v5/account-abstraction/get-started/page.mdx
index 10ae547eb57..39dfc39d29a 100644
--- a/apps/portal/src/app/react/v5/account-abstraction/get-started/page.mdx
+++ b/apps/portal/src/app/react/v5/account-abstraction/get-started/page.mdx
@@ -55,7 +55,7 @@ Try out in-app wallets for yourself in the [in-app wallet live playground](https
## Usage with Connect UI components
-The easiest way to get started with account abstraction is to use the [ConnectButton](/connect/sign-in/ConnectButton) component. Simply add the `accountAbstraction` property with the desired chain and whether to sponsor gas for your users.
+The easiest way to get started with account abstraction is to use the [ConnectButton](/references/typescript/v5/ConnectButton) component. Simply add the `accountAbstraction` property with the desired chain and whether to sponsor gas for your users.
With this property, all connected wallets will be automatically converted to smart accounts. The connected wallet will be the admin wallet of the smart account.
diff --git a/apps/portal/src/app/react/v5/components/ConnectButton/page.mdx b/apps/portal/src/app/react/v5/components/ConnectButton/page.mdx
index 7c69d6d904c..99b02c52670 100644
--- a/apps/portal/src/app/react/v5/components/ConnectButton/page.mdx
+++ b/apps/portal/src/app/react/v5/components/ConnectButton/page.mdx
@@ -43,7 +43,7 @@ Refer to [Props](#props) to see all the available configuration options
- This example uses [In-App Wallets](/connect/in-app-wallet/overview), a special type of wallet that allows users to connect to your app using email, social logins, or other custom forms of authentication.
+ This example uses [In-App Wallets](/wallets/users), a special type of wallet that allows users to connect to your app using email, social logins, or other custom forms of authentication.
@@ -79,7 +79,7 @@ function Example() {
## Auth
-The `ConnectButton` can optionally include [Auth](/connect/auth) to manage user authentication for you. When the user connects their wallet, the `ConnectButton` will immediately prompt them to sign a message to login. That signature can then be verified on your server to issue the user a JWT authenticating their session.
+The `ConnectButton` can optionally include [Auth](/wallets/auth) to manage user authentication for you. When the user connects their wallet, the `ConnectButton` will immediately prompt them to sign a message to login. That signature can then be verified on your server to issue the user a JWT authenticating their session.
```ts
diff --git a/apps/portal/src/app/react/v5/in-app-wallet/enable-gasless/page.mdx b/apps/portal/src/app/react/v5/in-app-wallet/enable-gasless/page.mdx
index 5beac7c1948..c7dcd10c20c 100644
--- a/apps/portal/src/app/react/v5/in-app-wallet/enable-gasless/page.mdx
+++ b/apps/portal/src/app/react/v5/in-app-wallet/enable-gasless/page.mdx
@@ -20,7 +20,7 @@ export const metadata = createMetadata({
# Sponsor Transactions
-By using [Account abstraction](/connect/account-abstraction) or [In-App Wallets](/connect/in-app-wallet/overview), you can sponsor all gas costs for your users transactions.
+By using [Account abstraction](/wallets/sponsor-gas) or [In-App Wallets](/wallets/users), you can sponsor all gas costs for your users transactions.
diff --git a/apps/portal/src/app/react/v5/in-app-wallet/get-started/page.mdx b/apps/portal/src/app/react/v5/in-app-wallet/get-started/page.mdx
index 5f0684c1424..cf539bfb8ae 100644
--- a/apps/portal/src/app/react/v5/in-app-wallet/get-started/page.mdx
+++ b/apps/portal/src/app/react/v5/in-app-wallet/get-started/page.mdx
@@ -12,7 +12,7 @@ import {
Steps,
Step
} from "@doc";
-import {ExternalLink} from "lucide-react";
+import { ExternalLink } from "lucide-react";
export const metadata = createMetadata({
title: "Connect users with In-App Wallet",
@@ -302,7 +302,7 @@ const handleLogin = async () => {
## Bring your own auth
-From the in-app wallet settings on the thirdweb dashboard, you can enable [custom authentication with your own JWT or auth endpoint](/connect/in-app-wallet/custom-auth/configuration)
+From the in-app wallet settings on the thirdweb dashboard, you can enable [custom authentication with your own JWT or auth endpoint](/wallets/users).
### OICD compliant JWT
diff --git a/apps/portal/src/app/react/v5/migrate/installation/page.mdx b/apps/portal/src/app/react/v5/migrate/installation/page.mdx
index ef6e9d423dc..bd168d89c35 100644
--- a/apps/portal/src/app/react/v5/migrate/installation/page.mdx
+++ b/apps/portal/src/app/react/v5/migrate/installation/page.mdx
@@ -1,15 +1,15 @@
import {
- ArticleCard,
- GithubTemplateCard,
- Grid,
- ExpandableGrid,
- createMetadata,
- OpenSourceCard,
- Stack,
- Steps,
- Step,
- InstallTabs,
- Callout
+ ArticleCard,
+ GithubTemplateCard,
+ Grid,
+ ExpandableGrid,
+ createMetadata,
+ OpenSourceCard,
+ Stack,
+ Steps,
+ Step,
+ InstallTabs,
+ Callout
} from "@doc";
[Migrate from React v4](/react/v5/migrate)
@@ -81,7 +81,7 @@ import { ThirdwebProvider } from "thirdweb/react"; // v5
### Connecting wallets
-Similar to v4's `ConnectWallet` component, the latest version has the [`ConnectButton`](/connect/sign-in/ConnectButton) component which has the same functionality.
+Similar to v4's `ConnectWallet` component, the latest version has the [`ConnectButton`](/references/typescript/v5/ConnectButton) component which has the same functionality.
However, unlike with v4 where the number of supported wallets is limited (about 20), and adding more wallets mean your app becomes heavier,
the SDK v5 supports [over 300 wallets](/wallets/external-wallets) with virtually no impact to your application.
@@ -115,4 +115,4 @@ export const client = createThirdwebClient({
clientId: process.env.NEXT_PUBLIC_TW_CLIENT_ID,
});
-```
\ No newline at end of file
+```
diff --git a/apps/portal/src/app/react/v5/rainbow-kit-migrate/page.mdx b/apps/portal/src/app/react/v5/rainbow-kit-migrate/page.mdx
index 59670a47cbb..2f098404f30 100644
--- a/apps/portal/src/app/react/v5/rainbow-kit-migrate/page.mdx
+++ b/apps/portal/src/app/react/v5/rainbow-kit-migrate/page.mdx
@@ -9,7 +9,7 @@ import {
Steps,
Step,
InstallTabs,
- Callout
+ Callout
} from "@doc";
export const metadata = createMetadata({
@@ -88,7 +88,7 @@ Learn how to migrate to thirdweb's ConnectButton component from [RainbowKit](htt
Get a free client ID to use in your application by creating a project in [thirdweb's dashboard](https://thirdweb.com/team).
- To customize your ConnectButton component, view the cheatsheet below or [view the customization documentation](https://portal.thirdweb.com/connect/sign-in/customization).
+ To customize your ConnectButton component, view the cheatsheet below or [view the customization documentation](wallets/users).
If you are using Wagmi, Viem, or Ethers in your application, use thirdweb adapters to continue using contracts, providers, and wallets from these libraries.
@@ -284,4 +284,4 @@ import { ...etc, darkTheme } from '@rainbow-me/rainbowkit';
href="https://github.com/thirdweb-example/ethers-adapter-example"
tag="Example"
/>
-
\ No newline at end of file
+
diff --git a/apps/portal/src/app/tokens/build/base-contracts/erc-4337/page.mdx b/apps/portal/src/app/tokens/build/base-contracts/erc-4337/page.mdx
index 26bc330beb2..5a27aab6447 100644
--- a/apps/portal/src/app/tokens/build/base-contracts/erc-4337/page.mdx
+++ b/apps/portal/src/app/tokens/build/base-contracts/erc-4337/page.mdx
@@ -1,6 +1,6 @@
# ERC-4337 Smart Accounts
-All of thirdweb's [smart accounts](/connect/account-abstraction) are [EIP-4337](https://eips.ethereum.org/EIPS/eip-4337) smart contract accounts with role-based permission control.
+All of thirdweb's [smart accounts](/wallets/sponsor-gas) are [EIP-4337](https://eips.ethereum.org/EIPS/eip-4337) smart contract accounts with role-based permission control.
Users can deploy a smart accounts for individual use, and app developers can issue smart accounts to their users programmatically.
diff --git a/apps/portal/src/app/tokens/explore/pre-built-contracts/account-factory/page.mdx b/apps/portal/src/app/tokens/explore/pre-built-contracts/account-factory/page.mdx
index de67fe05022..05c72addf0f 100644
--- a/apps/portal/src/app/tokens/explore/pre-built-contracts/account-factory/page.mdx
+++ b/apps/portal/src/app/tokens/explore/pre-built-contracts/account-factory/page.mdx
@@ -34,10 +34,3 @@ This contract includes the following extensions:
- [ContractMetadata](/contracts/build/extensions/general/ContractMetadata)
- [AccountFactory](/contracts/build/extensions/erc-4337/SmartWallet-factory)
-## Use Cases & Examples
-
-Use the `AccountFactory` contract alongside the [thirdweb SDK](/connect/account-abstraction) to easily use account abstraction in your projects:
-
-- [React Guide](/connect/account-abstraction/guides/react)
-- [Typescript Guide](/connect/account-abstraction/guides/typescript)
-- [Unity Guide](/unity/wallets/providers/account-abstraction)
diff --git a/apps/portal/src/app/tokens/explore/pre-built-contracts/managed-account-factory/page.mdx b/apps/portal/src/app/tokens/explore/pre-built-contracts/managed-account-factory/page.mdx
index 844e4440a48..f2a50bd5bd3 100644
--- a/apps/portal/src/app/tokens/explore/pre-built-contracts/managed-account-factory/page.mdx
+++ b/apps/portal/src/app/tokens/explore/pre-built-contracts/managed-account-factory/page.mdx
@@ -40,10 +40,3 @@ This contract includes the following extensions:
- [AccountFactory](/contracts/build/extensions/erc-4337/SmartWallet-factory)
- [DynamicContract](https://github.com/thirdweb-dev/dynamic-contracts)
-## Use Cases & Examples
-
-Use the `ManagedAccountFactory` contract alongside the [thirdweb SDK](/connect/account-abstraction) to easily use account abstraction in your projects:
-
-- [React Guide](/connect/account-abstraction/guides/react)
-- [Typescript Guide](/connect/account-abstraction/guides/typescript)
-- [Unity Guide](/unity/wallets/providers/account-abstraction)
diff --git a/apps/portal/src/app/transactions/page.mdx b/apps/portal/src/app/transactions/page.mdx
index 0773a46f526..188be6b4991 100644
--- a/apps/portal/src/app/transactions/page.mdx
+++ b/apps/portal/src/app/transactions/page.mdx
@@ -1,33 +1,33 @@
import {
- Callout,
- OpenSourceCard,
- createMetadata,
- InstallTabs,
- SDKCard,
- Grid,
- ArticleIconCard,
- Tabs,
- TabsList,
- TabsTrigger,
- TabsContent,
+ Callout,
+ OpenSourceCard,
+ createMetadata,
+ InstallTabs,
+ SDKCard,
+ Grid,
+ ArticleIconCard,
+ Tabs,
+ TabsList,
+ TabsTrigger,
+ TabsContent,
} from "@doc";
import {
- ReactIcon,
- TypeScriptIcon,
- UnityIcon,
- DotNetIcon,
- UnrealEngineIcon,
- EngineIcon,
+ ReactIcon,
+ TypeScriptIcon,
+ UnityIcon,
+ DotNetIcon,
+ UnrealEngineIcon,
+ EngineIcon,
} from "@/icons";
import { ExternalLink } from "lucide-react";
export const metadata = createMetadata({
- image: {
- title: "Transactions",
- icon: "transactions",
- },
- title: "Transactions",
- description: "Send, monitor, and manage transactions.",
+ image: {
+ title: "Transactions",
+ icon: "transactions",
+ },
+ title: "Transactions",
+ description: "Send, monitor, and manage transactions.",
});
# Get Started
diff --git a/apps/portal/src/app/transactions/session-keys/page.mdx b/apps/portal/src/app/transactions/session-keys/page.mdx
index 16081c42f0b..4ad5101821e 100644
--- a/apps/portal/src/app/transactions/session-keys/page.mdx
+++ b/apps/portal/src/app/transactions/session-keys/page.mdx
@@ -220,4 +220,4 @@ try {
## Next Steps
- Explore [Engine API Reference](https://engine.thirdweb.com/reference)
-- Check out the [TypeScript SDK](/references/typescript/v5/serverWallet) documentation
\ No newline at end of file
+- Check out the [TypeScript SDK](/references/typescript/v5/serverWallet) documentation
diff --git a/apps/portal/src/app/typescript/v5/account-abstraction/get-started/page.mdx b/apps/portal/src/app/typescript/v5/account-abstraction/get-started/page.mdx
index 080fff178d3..a1a81df1720 100644
--- a/apps/portal/src/app/typescript/v5/account-abstraction/get-started/page.mdx
+++ b/apps/portal/src/app/typescript/v5/account-abstraction/get-started/page.mdx
@@ -21,7 +21,7 @@ By using the [TypeScript SDK](/typescript/v5), you can use smart accounts in you
The wallet SDK with the TypeScript SDK is primarily used when creating a backend for your application or when creating a node script.
In this guide, we will be using the wallet SDK to create a Node script but the logic for creating a backend is the same.
-If you are working in a React environment, you are recommended to follow [this guide](/connect/account-abstraction/guides/react).
+If you are working in a React environment, you are recommended to follow [this guide](/wallets/sponsor-gas).
diff --git a/apps/portal/src/components/others/DocSearch.tsx b/apps/portal/src/components/others/DocSearch.tsx
index e86b64b5c43..2909636146a 100644
--- a/apps/portal/src/components/others/DocSearch.tsx
+++ b/apps/portal/src/components/others/DocSearch.tsx
@@ -393,24 +393,14 @@ function getTagsFromHref(href: string): Tag[] | undefined {
}
return ["React Native"];
}
- if (href.includes("/react/v4")) {
- if (href.includes("/references")) {
- return ["Reference", "React"];
- }
- return ["React"];
- }
+
if (href.includes("/typescript/v4")) {
if (href.includes("/references")) {
return ["Reference", "TypeScript"];
}
return ["TypeScript"];
}
- if (href.includes("/wallet-sdk/v2")) {
- if (href.includes("/references")) {
- return ["Reference", "Wallet SDK"];
- }
- return ["Wallet SDK"];
- }
+
if (href.includes("/unity")) {
return ["Unity"];
}
diff --git a/packages/thirdweb/CHANGELOG.md b/packages/thirdweb/CHANGELOG.md
index b38b5082b72..55db2103efd 100644
--- a/packages/thirdweb/CHANGELOG.md
+++ b/packages/thirdweb/CHANGELOG.md
@@ -6019,7 +6019,7 @@
- [#2933](https://github.com/thirdweb-dev/js/pull/2933) [`8e0a3ce`](https://github.com/thirdweb-dev/js/commit/8e0a3cea1e354f45e7aa107851909e7d57604f0d) Thanks [@MananTank](https://github.com/MananTank)! - ### Integrate Pay Modal with TransactionButton
- By default, the Pay Modal is integrated with the `TransactionButton` component. If the user performs a transaction and does not have enough funds to execute it and if [thirdweb pay](https://portal.thirdweb.com/connect/pay/buy-with-crypto) is available for that blockchain, the Pay Modal will be displayed to allow user to buy the required amount of tokens
+ By default, the Pay Modal is integrated with the `TransactionButton` component. If the user performs a transaction and does not have enough funds to execute it and if [thirdweb Payments](https://portal.thirdweb.com/payments) is available for that blockchain, the Pay Modal will be displayed to allow user to buy the required amount of tokens
A new prop `payModal` is added to the `TransactionButton` component customize the Pay Modal UI or disable it entirely