---
title: "WalletConnect Project ID (Reown Cloud)"
description: "How clone buyers and integrators create a Reown Cloud project ID and set NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID on Order Lab Secrets."
locale: "en"
---
# WalletConnect Project ID (Reown Cloud)

> **Info**
> Ring enables **WalletConnect** only when `NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID` is set to a real Reown Cloud project ID (not empty, not the demo placeholder). Without it, injected wallets (MetaMask extension) still work; **mobile QR / WalletConnect** stays disabled.

WalletConnect (now under [Reown Cloud](https://cloud.reown.com)) issues a **Project ID** that identifies your dapp to the WalletConnect relay. Ring reads that ID from env and wires the Wagmi `walletConnect` connector when present.

| Env key | Class | Buyer writable? |
|---------|-------|-----------------|
| `NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID` | public (`NEXT_PUBLIC_*`) | Yes — `public_shared` on Secrets |

Paste it on Order Lab **Secrets**: [`?tab=secrets`](https://ring-platform.org/admin/crm/orders/po_1785404272368_e8dca92b?tab=secrets) (your order id will differ).

### For founders

## Obtain a Project ID

Open [Reown Cloud](https://cloud.reown.com) and sign in (GitHub / email).

Create a **new project**. Choose the AppKit / WalletConnect product type offered for web dapps.

Copy the **Project ID** (a long hex string). Treat it as public configuration — it is not a private API secret, but it should still be **your** project, not a shared demo ID.

In Order Lab → **Secrets**, find `NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID`, paste the ID, and **Save**.

Ask your integrator to **deploy**. After rollout, open a wallet route (login wallet connect, `/wallet`, NFT, checkout) and confirm WalletConnect / QR appears in the connector picker.

### Why members need this

- **Desktop MetaMask extension** — works without WalletConnect (injected connector).
- **Phone wallets (Trust, Rainbow, MetaMask mobile)** — need WalletConnect QR / deep link → requires your Project ID.
- Console warning *“No valid project ID found. WalletConnect disabled”* means the env key is missing or invalid on that deploy.

  
- **[Ethereum wallets overview](/docs/integrations/ethereum-wallets.md)** — Wagmi stack, connectors, and RPC checklist.

  
- **[Public vars](/docs/configuration/public-vars.md)** — Other NEXT_PUBLIC_* keys on the same Secrets tab.

  
- **[Supported services](/docs/configuration/supported-services.md)** — Full third-party account catalog for go-live.

### For developers

## Runtime gate (verified)

Template comment SSOT (`env.local.template`):

```bash
# WalletConnect / Reown Cloud project ID (https://cloud.reown.com)
NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID=
```

Ownership: `PUBLIC_SHARED_EXACT` in `features/crm/lab/env-key-ownership.ts` — buyers may PATCH via `/api/my-orders/[id]/env`.

Connector behavior (docs + Wagmi config pattern): WalletConnect is added only when the project ID is present and not the `demo-project-id` placeholder — avoids WalletConnect Cloud **403** responses. See [Ethereum wallets](/docs/integrations/ethereum-wallets.md).

### Smoke test

1. Deploy with Project ID set.
2. Hit a `pathNeedsWeb3()` route (`/auth/wallet-connect`, `/wallet`, `/nft`, …).
3. Connector list includes WalletConnect; QR flow opens without “No valid project ID” console warning.

## Related documentation

  
- [integrations/ethereum-wallets](/docs/integrations/ethereum-wallets.md) — Deep-dive: Wagmi connectors, RPC SSOT, and white-label picker.

  
- [configuration/secrets](/docs/configuration/secrets.md) — Same-workflow: save on Secrets and apply on next deploy.

  
- [configuration/public-vars](/docs/configuration/public-vars.md) — See-also: other buyer public_shared keys.

  
- [features/wallet](/docs/features/wallet.md) — Next-step: custodial wallet product surface after connect.

  
- [configuration](/docs/configuration.md) — Prerequisite: project configuration hub.
