So, when I buy some bitcoins, how and from which wallet do I generate the Receive transaction?
To expand on BitCryptex's answer:
He is right in stating you should generate a receiving address from your watch only wallet. But technically speaking, you can generate a receiving address from either your watch only or your airgapped wallet, as they contain the exact same set of addresses. The only difference is that the airgapped wallet
also contains the private keys to those addresses, and so can sign transactions, whereas your watch only wallet can only watch those address, as the name suggests.
There is also a common misunderstanding that your wallet is storing your bitcoin, which is why people get confused about having two wallets for the same address. This is not the case. The blockchain is simply a record of which addresses are allowed to spend which bitcoins. The bitcoins never actually leave the blockchain, and are never stored in your wallet. All your wallet stores is a list of addresses which you control, and the blockchain stores a list of all the coins those addresses are allowed to spend.
Indeed, yes, I was confused.
The term "wallet" implied storage of some sort, like a wallet or purse that actually hold £, $, Euro notes etc.
It's beginning to dawn on me that, on one level, the wallet is really just a set of pointers to entries on the blockchain.