Reputation: 5968
I am trying to create a WalletConnect provider.
I am using the @walletconnect/web3-provider package along with Web3Modal for UI.
I am instantiating the WalletConnectProvider
using my Infura client ID
let web3Modal = new Web3Modal({
network: "matic",
cacheProvider: true,
providerOptions: {
walletconnect: {
package: WalletConnectProvider,
options: {
infuraId: "c22c90a767684c5fbd7257da57802b35" ,
},
},
},
});
web3Modal.clearCachedProvider();
await web3Modal.connect();
When I run my app and connect my wallet, I get the following error:
Error: No RPC Url available for chainId: 137
I am trying to connect to the Polygon network (which is chainId 137
).
Infura does seem to support the Polygon Mainnet chain.
Also, I have this chain added to my MetaMask mobile wallet, which is the wallet I am using when connecting to WalletConnect.
So it should work..
Any ideas how to fix this?
Upvotes: 6
Views: 16133
Reputation: 3273
I was facing the exact same issue. Here is how I resolved this error:
import WalletConnectProvider from '@walletconnect/web3-provider';
import Web3Modal from 'web3modal';
const options = new WalletConnectProvider({
rpc: {
137: 'https://matic-mainnet.chainstacklabs.com',
},
infuraId: INFURA_ID,
});
const providerOptions = {
walletconnect: {
package: WalletConnectProvider, // required
options: options,
},
};
const web3Modal = new Web3Modal({
network: 'mainnet',
cacheProvider: true,
providerOptions,
});
}
const provider = await web3Modal.connect();
Upvotes: 2
Reputation: 129
You can try using this RPC URL -
https://matic-mainnet.chainstacklabs.com
More references can be found here - https://github.com/maticnetwork/static/blob/master/network/mainnet/v1/index.json
Upvotes: 5