Skip to content
bitcoinsv.design

Search the guide

Search the guide

An upgradeable wallet case

Upgradeable wallet

Start on one key, move to several when the balance justifies it, without the user having to understand key schemes on day one.

The problem this solves is an onboarding problem. Asking somebody setting up their first wallet to choose a key scheme is asking a question they have no basis to answer, and it can lose them before they hold anything.

An upgradeable wallet starts them on one key, which is enough while they hold nothing, and offers a stronger scheme when there is something worth protecting. For people holding real money, this guide suggests two wallets instead. See the alternative below.

Recommendation

This is a path, not a feature. The upgrade should be prompted by the balance crossing something the user would mind losing, not discovered in settings by the people who least need it.

The path

First use

One key on the device. Created in a second, no questions, no words shown. The wallet works immediately and holds nothing.

A backup, when there is something to back up. or shares, prompted when the balance first crosses a threshold. See First use.

Several keys, when the amount justifies the friction. A signing device, a second phone, a key held by somebody else. See Multi-key.

Second step

Do

Name the trigger in terms of the user's own money: "You're holding more than you said you wanted to keep on this phone. Want to add a second key?"

Don't

Offer the upgrade as an abstract security improvement. "Increase your security level" is a prompt nobody acts on, because nobody knows what level they are at.

What an upgrade actually is

This is the part to be honest about in the interface, because it is not a settings .

A key scheme is a property of the spending condition on each . Changing it means moving the money to outputs with the new condition, which is a payment the current keys authorise.

Consequences the user should know:

  • it is a transaction, so it appears in their activity
  • the old keys keep working on anything not moved
  • the recovery material changes, so the old words no longer restore everything
  • money paid to the old keys after the upgrade is not protected by the new scheme until it is moved

Important

Say that the old backup is superseded, and make writing down the new one part of the upgrade rather than a later prompt. A user holding two sets of words, one of which is stale, is worse off than before they upgraded.

The home screen

The wallet home

The wallet should not feel different at each stage. The same balance, the same payments, the same contacts. What changes is how many actions a payment takes, and that only above whatever limit the user set.

A cannot check the amount on its own. A one-tap small payment works because one of the keys is an auto-signer: it co-signs on its own, but only below the limit. Above it, the auto-signer refuses and a second key has to sign. See Savings wallet.

Do

Keep small payments one-tap at every stage. A multi-key wallet that asks for a second device to buy a coffee has become a by accident. See Wallet setups.

Changing scheme in settings

Settings

Changing the key scheme

For the people who do go looking:

Do

Show the current arrangement in plain words, and what each option would protect against. "One key on this phone. If you lose it and have your recovery words, you're fine. If somebody unlocks it, they can spend."

Do

Let a user rehearse the new arrangement with a small amount before moving everything.

Don't

Offer downgrades without a hard confirmation naming what is lost. Going from three keys to one is a real reduction in protection and should feel like one.

The alternative: two wallets instead of one

Worth saying, because it is often the better answer.

Rather than upgrading one wallet in place, many people are better served by an that stays simple and a separate savings wallet that is multi-key from the start. The everyday wallet never becomes slow, the savings wallet is never casual, and there is no migration.

Recommendation

Offer the upgrade path for people who want one wallet, and the two-wallet arrangement for people holding enough to care. The second is the one this guide recommends once there is real money involved. See Multiple wallets.

Open questions

  • Does the , and the identity behind it, stay the same across an upgrade, or does a new key set mean a new identity?
  • At what balance do people act on "You're holding more than you said you wanted to keep on this phone"?
  • Do users who upgrade in place end up treating the wallet as savings and stop using it daily?

Pros and cons

Pros

  • No key-scheme question during onboarding, which is where products lose people.
  • Protection grows with the balance rather than being guessed at the start.
  • One wallet, one history, one handle throughout.

Cons

  • Each upgrade is a transaction and a new backup, not a setting.
  • Stale recovery material is a real hazard if the upgrade flow does not handle it.
  • A wallet that upgrades in place eventually has the friction of a savings wallet while still being used daily.

Written from: BRC-42, BRC-75, BRC-140, ts-stack docs.

Checklist

The rules on this page, in a form you can work through.

8 rules