Issued supply is protocol arithmetic, not an estimate. Add the subsidy of every height from the genesis block to height h, in whole satoshis as Bitcoin Core computes it, and that is the figure: 19,687,500 BTC through block 839,999, then 3.125 BTC more for each block after it.
It is the denominator the Holdings tab uses, pinned to one block so anyone can check it. It is deliberately the schedule rather than the coins that can move: it includes the genesis block's 50 BTC, which can never be spent, and the coins lost when two early coinbase transactions duplicated earlier ones, before BIP 30 forbade it. Leaving them in makes every holder's share slightly smaller, which keeps a floor conservative.
A node with coinstatsindex can itemise the difference: gettxoutsetinfo lists the genesis, BIP 30, unspendable-script and unclaimed-reward amounts separately.