I'm working on a web app that can connect to Phantom Wallet. I've established the connection and have successfully retrieved the wallet's public key. The problem is, I can't seem to find any solution to get the account balance.
For reference, I wanted to display the account balance just like how solanart.io displays it.
Note that I've gone through all related docs (Solana/web3.js, Solana JSON RPC API etc). Please guide me as I'm still new to JSON RPC API.
For a heads up, I'm using vanilla js.
try {
const resp = window.solana.request({
method: "getAccountTokenBalance",
params: [
id, //wallet's public key
{
encoding: "base58",
},
],
});
console.log(resp);
} catch(err) {
// error message
}
The RPC method that you're using does not exist. You'll want to use
getBalance
to get the SOL on the wallet: https://docs.solana.com/developing/clients/jsonrpc-api#getbalanceTo get all of the non-SOL token balances owned by that wallet, you'll have to use
getTokenAccountsByOwner
using that wallet id: https://docs.solana.com/developing/clients/jsonrpc-api#gettokenaccountsbyowner