Milestone 1.7: Sending bitcoin
Status: Early design exploration
The big goal is to provide full-fledged wallet features for view-only, single-key, and multi-key wallets, as well as hardware wallet support and more. The specifics are yet to be determined and will be tackled via smaller milestone releases.
A major step in development is the moment when the application reaches parity with the existing QT GUI and can take its place. This requires a lot of foundational work in the codebase, and a lot of front-end development work.
Below is a visual map of how we can reach this parity point based on Milestone 1, split up into distinct milestones. Each milestone adds a mostly self-contained set of features, with milestones building on each other. These are explained in more detail in the following pages.
The complexity of the send flow can range dramatically. Some of the features to support:
- Address book
- Fee estimation, recommendations and customization
- Coin selection
- External signers
- Multiple signers
- Multiple signing paths
- Silent payments
- Transaction batching
- Transaction (PSBT) import and export
- Bitcoin URI scheme support
- Clipboard support
Screens and flows have not been fully designed yet. This page covers the current state. Below is an early version of the tree of user flows we may end up with.
This is an initial send screen where the user has a payment request on their clipboard, and the wallet has multiple active spending paths to choose from.
The goal is to keep the primary screen simple and focused for regular transactions, and hide less frequently used options in the menu, accessed easily via the ellipsis button.
Before the transaction is broadcast, the user has another chance to review it.
Wallet can be set up to be view only. We need to decide whether to offer some type of upgrade path to enable signing.
Batch transactions can be enabled via the menu. The user can add more recipients and specify amounts for each.
In coin selection, users can choose which inputs to include in a transaction.
There is a lot missing from these designs, but they should provide a good foundation to build on.