Ethers

Privy is fully compatible with ethers.js. To get an ethers provider for a user’s connected wallet, first find your desired wallet from the wallets array and switch it to your desired network, using the wallet’s switchChain method:

Ethers v5

const privyProvider = await wallet.getEthereumProvider();
const provider = new ethers.providers.Web3Provider(privyProvider);

Ethers v6

const provider = await wallet.getEthereumProvider();
const ethersProvider = new ethers.BrowserProvider(provider);
const signer = ethersProvider.getSigner();