BTCPay Vault is a cross-platform desktop application that allows the use of a hardware wallet with a full node inside BTCPay Server.
In laymen words, BTCPay Vault is a separate app, locally hosted on your own PC, which BTCPay Server connects to and asks for permission. Once permission is granted, BTCPay is able to integrate with any hardware wallet connected to your PC.
You can import your wallet and spend incoming funds with a simple confirmation on your device, with your keys never leaving your hardware device, with all funds being validated against your own Bitcoin full node and no data leakage.
Setting up BTCPay Vault is quite easy. You only need to have already set up BTCPay Server.
Install the Vault on your PC (Windows, MacOS or Linux)
Open the BTCPay Vault app
Plug in the hardware wallet into your PC and make sure it’s in a wake up state
Go to your BTCPay Server’s Store > General Settings > Derivation Scheme > Import from the Vault
Grant the permission
The public key will automatically be imported in the store and configured to an appropriate format
Validate that address shown on BTCPay is the same as the one on your device
Once you’ve received funds to your wallet and you decide to spend them, you can sign the transaction with your hardware wallet, all inside BTCPay Server.
Open BTCPay Vault app on your PC
Plug in the hardware wallet and make sure it’s in wake up state
In BTCPay Server, go to > Wallets > Manage > Send
Fill in the Destination address and the Amount
Select Sign with the Vault
Verify the transaction on your hardware wallet and confirm it
Broadcast the transaction
The list of supported hardware wallets is available on this link.