Even though there’s more liquidity in the NNS than all other wallets combined, today’s ICP apps don’t support connecting with it… but it’s possible.
Steps to support users connecting their NNS wallet to your app (and other on-chain wallets like NFID Wallet and Oisy):
- Integrate IdentityKit to support today’s on-chain wallets (NFID Wallet) and those coming soon (Oisy)
- Add ICRC support to NNS (ICRC-25, ICRC-28, ICRC-34, ICRC-49)
An alternative to step 2 above (though may be longer term) is to add IdentityKit to the NNS so that other wallets can manage their NNS accounts. That way, if my EOA wallet can manage my NNS account (let’s call it dostro.icp) and I can connect to dapps with the same dostro.icp account, dapps can ask me to approve transactions out of my NNS. Example flow:
- Dapp requests my NNS principal/subaccount → I supply it
- Dapp formats an icrc2_approve transaction for me
- Dapp uses icrc49 to display an wallet prompt for me to approve