I noticed that almost all wallets that are active have one address overused. That is, almost all protocols return funds to some determined address (I think it is the m/1852’/1815’/0’/0/0 address). Is there some reason why they do this? For example, both minswap and sundaeswap return swapped funds to this address. How do they even know that this is the correct address? Do they take the first appearance of a stakekey and call that address 0?
They ask the wallet app that is connected via the dApp connector: https://github.com/cardano-foundation/CIPs/tree/master/CIP-0030
If your wallet app and the dApp behave properly and you have a multi-address wallet connected, it should send to unused addresses, but it might well be that one or both do not behave properly.
Nami was the first wallet app that could do dApps and the Nami developer thought that it was a good idea to reduce complexity by only using a single address (yes, it is
m/1852’/1815’/0’/0/0). That already leads to a lot of questions, when people use Nami and a wallet app not set to single address mode in parallel.
It is not really a privacy issue, though, since all addresses are quite clearly identifiable as belonging together by the contained stake address, anyway.
@HeptaSean thanks for the clear explanation on the wallet end
and the answer is - whenever you use the non- single address wallet as input in a transaction ( typically spend/send) your remaining balance is returned to a newly generated address, therefore Nami will see 0 Ada.
In order to make Nami work again, you can do another transaction where you send your ADA to your first address.