Getting Started
Features
Payments
Network
Guides
- Build a Telegram Mini App
- Configure Virtual TestNets
- EVM Transactions using Wagmi
- EVM Transactions using Ethers
- EVM Smart Contract Interaction
- Solana Transactions using AppKit
- Bitcoin Transactions using AppKit
- Support Send Calls
- Gas Sponsorship using AppKit
- Travel Rule using AppKit
- Smart Sessions using AppKit
- Troubleshooting
Upgrade
Technical Reference
AppKit FAQs
This FAQ section covers common questions and solutions for using AppKit. The questions are organized into three main categories:
- Configuration: Questions about setting up AppKit, including project configuration, wallet visibility, and RPC customization.
- Features: Information about AppKit’s capabilities, including off-ramp support, multi-wallet address retrieval, and branding options.
- Technical: Technical details about project approval requirements and initialization constraints.
AppKit Configuration
This error typically occurs when the projectId
is not configured correctly. To resolve this:
- Create a valid project ID at https://cloud.reown.com/
- Add it to your AppKit configuration:
const modal = createAppKit({
...
projectId: "..." // Add your valid projectId here
});
- Ensure that you have added your domain to the allowed domains in your project settings. If you have not done so, you can do so by navigating to “Project Domains” on the Dashboard, clicking on “Configure Domains” and adding your domain.
Problem: Users only see the “Connect Wallet” title in the modal after clicking the connect button.
Solution: This issue typically has two possible causes:
- Version Mismatch: Ensure all @reown libraries use the same version in your
package.json
:
{
"dependencies": {
"@reown/appkit": "1.7.8",
"@reown/appkit-adapter-wagmi": "1.7.8"
// ... other dependencies
}
}
- Initialization Location: Call
createAppKit
outside of your component to ensure proper initialization:
// Create modal
createAppKit({
adapters: [wagmiAdapter],
...generalConfig,
features: {
analytics: true // Optional - defaults to your Cloud configuration
}
})
export function App() {
return (
<WagmiProvider ...>
<QueryClientProvider ...>
<appkit-button />
</QueryClientProvider>
</WagmiProvider>
)
}
You can use your own RPC by setting the customRpcUrls
option in the AppKit configuration. This lets you define custom RPC URLs for specific chains. Each entry must follow the format:
customRpcUrls: {
[ChainId.Ethereum]: 'https://your.custom.rpc.url',
[ChainId.Polygon]: 'https://your.polygon.rpc.url'
}
AppKit will prioritize these URLs over the default ones.
Features
Reown currently does not plan to support off-ramp functionality.
To retrieve addresses from multiple connected wallets, refer to our multichain example:
Example using React SDK:
import { useAppKitAccount } from '@reown/appkit/react'
// Get account states for different chains
const eip155AccountState = useAppKitAccount({ namespace: 'eip155' })
const solanaAccountState = useAppKitAccount({ namespace: 'solana' })
<>
EVM Address: {eip155AccountState.address}<br />
Solana Address: {solanaAccountState.address}<br />
</>
Currently, only enterprise clients can hide “UX by Reown” on the AppKit modal by adjusting this option on our Dashboard. If you are an enterprise client and would like to hide this branding, please contact sales@reown.com.
Reown currently provides 2.5 million requests per 30 days. If you wish to increase this limit, you need to upgrade to AppKit Pro.
Technical
No, dApps do not need approval in order to use your projectId.
Currently, createAppKit
can only be called once during the application’s lifecycle.
It cannot be lazily initialized and then torn down for re-initialization.
This means you must pass in all the networks you plan to support during the initial setup.
Support
Free tier AppKit customers only are only entitled to support via Discord. Please join the Discord server and create a forum post #developers-forum and the team will get back to you.
AppKit Pro and Enterprise customers get priority support via dedicated channels.
Was this page helpful?