This is a proposal targeting wallet API standardization: a new JSON-RPC method
wallet_getOwnedTokens, for retrieving a selection of owned tokens by an Ethereum address, with the owner’s permission.
There are financial dApps that require a list of owned tokens from a user, for various purposes - calculating taxes, selecting customized payment options, etc. Each of these dApps are now forced to keep a list of popular tokens (smart contract addresses, ABIs) and retrieve the user’s data from the blockchain, for each token. This leads to effort duplication and nonoptimal UX where the user is presented with either more or less token options than the user would like - various airdrops, incomplete list of tokens kept by the dApp.
This proposal was already requested here.