Why Bitcoin Core does not support importing extended public keys directly? I'm trying to create a watch-only wallet importing the extended public key from a Ledger Nano (as an example) but is not to easy to do directly to my Node, I should do it through electrum personal server or something like that.
I was trying to find a clear (like 5 years old) explanation of what is the reason for that.
I was trying to do that in the mainnet and from the regtest following the next command in order to get the checksum but all the time a message said that the key is not valid.

bitcoin-cli --regtest getdescriptorinfo "wpkh(vpub5UwuWtLWaprMvQBpnZeufhRAqYsgrYf7ZMxr6Kf7N41aa9M7UzZJ1e7HMwzdxGnfer5g2PaFgcvmNU7iRZAasNXz6EdDW6FGdcKf8m4oF7b/*)"

And there are plans to allow this import function?, I think so it's a very convenience feature.
The structure of the Bitcoin Core wallet makes it difficult to implement importing extended public keys. This structure makes several assumptions about keys available in the keypool which xpubs do not meet. One such assumption is availability of private keys. While it isn't impossible to implement support for it, doing so is difficult to do, difficult to review, and is largely a hack on top of a hack.

Recently, native descriptor wallets was merged into Bitcoin Core so you will be able to import xpubs that are in a descriptor in 0.21. Native descriptor wallets took a long time to implement because of structural changes that had to be made to the wallet to even be able to support this.