This guide shows you how to offer WalletConnect, so users can connect a mobile wallet by scanning a QR code. The SDK doesn’t supply a WalletConnect project; without your own project ID, WalletConnect stays hidden and the other connection methods keep working.
-
Create a project in the Reown dashboard and copy its project ID. It’s separate from your DogeOS client ID.
-
If the project has an origin allowlist, add your app’s production and preview origins.
-
Pass the project ID and your app’s metadata, which wallets show to users when they approve the connection:
import type { WalletConnectKitConfig } from "@dogeos/dogeos-sdk" const dogeConfig: WalletConnectKitConfig = { clientId: "YOUR_DOGEOS_CLIENT_ID", walletConnectProjectId: "YOUR_WALLETCONNECT_PROJECT_ID", metadata: { name: "Your App", description: "Your DogeOS application", url: "https://your-app.example", icons: ["https://your-app.example/icon.png"], }, }In Next.js, read it from an environment variable such as
process.env.NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID, then rebuild and redeploy. -
Open the wallet modal and check that WalletConnect appears with a QR code.
If the QR code stays blank and the browser console shows Unauthorized: origin not allowed, your origin isn’t on the project’s allowlist yet. Allowlist changes can take about 15 minutes to apply; see Reown’s relay configuration guide . An invalid project ID shows a connection error; the SDK doesn’t fall back to another project.