btcpayserver / btcpayserver/BTCPayServer.Vault
Trezor T can't sign >100 inputs
- Dominant language
- C#
- Stars
- 178
- Forks
- 88
- PR merge metrics
- No merged PRs in 30d
Description
Copied from https://github.com/bitcoin-core/HWI/issues/720 by @AlphaTEsterUnited and @divinationstar
---
Dear Devs,
Windows and OSX indeed behave similarly. I'm unable to send any transaction with over 200 inputs using JADE, Trezor, and Ledger through the HWI implementation in Sparrow and BTCPay. It's important to note that the wallet is P2SH (Pay to Script Hash).
Steps to reproduce:
Attempt to send a transaction with over 200 inputs (for comparison, Electrum can consistently handle over 900). Two failure scenarios occur with Trezor:
In one scenario, pre-signing (loading transactions) is successful, but after confirming on the Trezor, BTCPay immediately displays "The user refused to sign the transaction," and the progress bar on the Trezor halts See screenshot:

In the other scenario, nothing appears on the Trezor and the BTCPay server vault remains in the "signtx" state See screenshot:

Thank you for looking into this issue.
Is there anyway I can generate logs btw?
---
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reproducing the BTCPay Vault signtx flow with a P2SH transaction containing over 200 inputs, using Trezor through the HWI implementation. Compare the two reported failure modes with Electrum's ability to handle over 900 inputs, and collect logs as requested. Done means the transaction signs successfully and the vault leaves the signtx state.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- blockchain
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100