Updating Balances

In certain scenarios, you may want to manually refresh all private balances.

Example: Manually refresh balances

import { NETWORK_CONFIG, NetworkName } from '@railgun-community/shared-models';
import { refreshBalances } from '@railgun-community/wallet';

const { chain } = NETWORK_CONFIG[NetworkName.Ethereum];
const railgunWalletID = '...'; // Obtained after a previous call to `createRailgunWallet`

// Optional filter to only scan the provided wallet IDs. Leave undefined to scan all wallets.
const walletIdFilter = [railgunWalletID];

try {
    await refreshBalances(chain, walletIdFilter);
    // During scan, `onMerkletreeScanCallback` callback from the previous section will trigger.
    // When scan is completed, `onBalanceUpdateCallback` callback from the previous section will trigger.
    // This may take a few minutes on first sync, but only a few seconds on subsequent calls.
} catch (err) {
    // Scan failed to run.
}

Last updated