# Universe Wallet documentation - full text Derived from the static site for wallet 1.7.5.8. 0 of 42 protocols authorize operations in this tree; every write operation fails closed. # Page not found | Universe Wallet That page does not exist here. These are the pages people are usually looking for. # Page not found That address does not exist on this site. It may have moved during the rebuild of this documentation, or the link may have been mistyped. If you arrived here while something is going wrong with your wallet , go straight to If your wallet is compromised . ## The pages people are usually looking for Section titled “The pages people are usually looking for” - ### Documentation home Everything, organised. - ### Which version you are running Read this before trusting anything else here. - ### Install The only official install route, and how to check it. - ### What a signature authorizes The page most worth reading before you approve anything. - ### Supported features What is present, what is gated, and what does not exist. - ### Troubleshooting The failures people actually hit. Search is in the header, and it runs in your browser without contacting anything. If a link on this site is broken, report it . A dead link in wallet documentation is a defect, not a nuisance. # Answer Center | Universe Wallet Answers drawn only from these documentation pages, with the release and capability status they were checked against. # Answer Center # Answer Center The Answer Center needs JavaScript to run its in-browser search. Without JavaScript, use the FAQ , the troubleshooting guide , or the plain-text index at llms.txt . Previous Screen Atlas Next Emergency handbook ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Dogecoin marketplace | Universe Wallet What the wallet verifies before signing an integrated Dogecoin marketplace transaction, and what it still leaves for you to check. - Universe Wallet - Assets and protocols # Dogecoin marketplace Universe Wallet implements transaction-specific approval for integrated Dogecoin marketplace flows. The application supplies a prepared transaction together with a marketplace intent. The wallet validates the request and signs only the inputs explicitly assigned to the connected account. Not available in any released build The dogecoin-marketplace entry authorizes nothing in 1.7.5.8, along with every other protocol in the registry. A marketplace request fails closed and names what is missing. See What this release authorizes . ## What the wallet checks Section titled “What the wallet checks” For a supported marketplace request, the wallet verifies that: - the request identifies the intended marketplace action; - the transaction matches the approved template; - the listed signing inputs match the transaction inputs assigned to the connected account; - the signature mode commits to the complete transaction; - the returned signed transaction is bound to the same intent and input list. These checks reduce the risk of signing a substituted transaction or an unintended input. They do not replace your own review of the asset, price, recipient, network, and fee. ## Where the funding comes from Section titled “Where the funding comes from” Funding inputs come from Universe-operated Dogecoin Core and Doginals or DRC-20 indexers. Before signing, the wallet recalculates every supplied previous transaction id and confirms the exact output value and script. Protocol-bearing or currently reserved outputs are not offered as ordinary funding. If the data authority is stale, disagrees with Core, or cannot provide enough verified plain DOGE, the transaction remains unavailable rather than proceeding on partial information. ## Review and sign Section titled “Review and sign” - Start the marketplace action in the connected application. - When the wallet opens, verify the account and the Dogecoin network are correct. - Compare the marketplace summary, amount, recipient, and fee with the order you intended to create or accept. - Approve only if every field is expected. Otherwise reject. - Return to the application and wait for its broadcast or confirmation status. Do not retry blindly after an error Refresh the marketplace state first, so that you do not approve a stale or duplicate action. A retry against stale state is how the same trade gets signed twice. ## The one difference from a Zcash listing Section titled “The one difference from a Zcash listing” A Dogecoin marketplace signature commits to the complete transaction. A Zcash listing signature deliberately does not, which is why a listing stays an open offer and a marketplace approval does not. See What a signature authorizes . ## Related Section titled “Related” - Review a PSBT - The protocol registry Edit page Last updated: Oct 9, 2026 Previous Media and large portfolios Next Zcash market listings ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/utils/dogecoin-marketplace.ts, frontend/ui/pages/Approval/components/DogecoinMarketplace.tsx Applicable release Universe Wallet 1.7.5.8 Chain dogecoin Lifecycle Not released Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Media and large portfolios | Universe Wallet How the wallet renders thousands of assets without stalling, where images come from, and what a dimmed number means. - Universe Wallet - Assets and protocols # Media and large portfolios Universe Wallet is built so that the screen you asked for appears at once and fills in as data arrives, rather than waiting for everything before showing anything. ## What you see Section titled “What you see” - The home screen shows your wallet, account, and network in one row, then your balance and actions, then the assets of the selected protocol. On a wide window, activity and network context move beside the balance. - The balance expands into Spendable , Protected , and Pending . Protected is currency held inside outputs that also carry inscriptions, runes, or other assets. The Portfolio screen repeats the spendable and protected split next to the total. See Protected outputs . - The protocol picker lists protocols you hold first, then each group. Protocols with nothing held stay reachable but step back. Search, arrow keys, Enter, and Shift with Enter to pin all work from the keyboard. - Balances and holdings render from the last known state while a refresh runs, and the amount dims until the refresh lands. The wallet never presents stale spendable state as fresh. - Inscriptions, collectibles, and token cards load an image sized for their slot, not the full on-chain file. A 36 pixel icon does not download a multi-megabyte original. - Text and JSON inscriptions show a typed card. HTML inscriptions show a static preview in lists and open as an interactive document on their detail screen. - Galleries with thousands of assets render only the rows near your scroll position. Arrow keys move between tiles and your scroll position stays put. - On a metered or slow connection, the wallet requests smaller images and loads less ahead of the viewport. ## Where the media comes from Section titled “Where the media comes from” Every image, poster, and thumbnail comes from Universe-operated media infrastructure. Originals stay exact on chain. Display derivatives are content-hashed and cached by your browser for a year. If the optimized derivative does not exist yet, the wallet shows the original through the Universe proxy and the derivative is prepared for next time. ## Reading the states Section titled “Reading the states” What you see What it means A dimmed amount A refresh is running. The number shown is the last known value. A count labelled last known The service was unreachable, so this came from the previous portfolio read. Media unavailable on a tile Every source for that item failed. Other tiles keep loading. A wallet API unreachable notice A health check failed. It retries every minute and backs off while the service stays down. ## Controls worth knowing Section titled “Controls worth knowing” - Pull down on the home screen to refresh balances and holdings. A manual refresh always asks the network again rather than reusing a cached answer. - The filter control above an inscription grid sets density, sort order, satoshi visibility, and a minimum-satoshi filter. ## Related Section titled “Related” - Read your activity - Troubleshooting Edit page Last updated: Oct 9, 2026 Previous Why an action is unavailable Next Dogecoin marketplace ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/components, docs/PERFORMANCE-BASELINE-1.7.5.8.md Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # The protocol registry | Universe Wallet Every protocol the wallet knows about, the chains it runs on, the operations the product intends, and what this release actually authorizes. - Universe Wallet - Assets and protocols # The protocol registry This table is generated from the wallet’s own capability summary. It is not written by hand and it is not a wish list. Read the two operation columns separately Intended operations is what the product is built to do for that protocol. Authorized here is what this release actually permits. In 1.7.5.8 the second column reads none for every row, because the committed baseline authorizes nothing. See What this release authorizes . ## What the operation names mean Section titled “What the operation names mean” Operation Meaning read The wallet can display balances or holdings for the protocol explore The wallet can browse the protocol’s data deploy Create a new token or collection mint Create new units of an existing token etch Define a new rune inscribe Write new data to the chain transfer Move an existing holding to another address marketplace Take part in that protocol’s trading flow send Move the chain’s own currency sign Produce a signature for the protocol’s transaction shape broadcast Submit the signed transaction to the network A protocol with only read and explore is one you can look at and not trade. That is a deliberate state, not an incomplete one. ## Every protocol Section titled “Every protocol” Every protocol in the Universe Wallet 1.7.5.8 registry, with the operations the product intends and the operations this release authorizes. Protocol Chains Intended operations Authorized here State Alkanes alkanes bitcoin broadcast, explore, mint, read, sign none Not in this release ARC-20 arc-20 bitcoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release Atomicals atomicals bitcoin broadcast, mint, read, sign, transfer none Not in this release Babylon babylon cosmos explore, read none Not in this release Bitcoin bitcoin bitcoin broadcast, read, send, sign none Not in this release Bitmap bitmap bitcoin broadcast, explore, mint, read, sign, transfer none Not in this release BLOCK-20 block-20 bitcoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release BlockDrop blockdrop bitcoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release BRC-110 brc-110 bitcoin none declared none Not in this release BRC-20 brc-20 bitcoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release CAT-20 cat-20 fractal broadcast, explore, read, sign, transfer none Not in this release CAT-721 cat-721 fractal broadcast, explore, read, sign, transfer none Not in this release ChainBloom chainbloom bitcoin explore, read none Not in this release DMT dmt bitcoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release Doge TAP doge-tap dogecoin broadcast, explore, mint, read none Not in this release Dogecoin dogecoin dogecoin broadcast, read, send, sign none Not in this release Dogecoin marketplace dogecoin-marketplace dogecoin broadcast, explore, marketplace, read, sign none Not in this release Doginals doginals dogecoin broadcast, explore, inscribe, read, sign, transfer none Not in this release DRC-20 drc-20 dogecoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release DROPS drops bitcoin explore, read none Not in this release DUST-20 dust-20 bitcoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release Fractal Bitcoin fractal fractal explore, read none Not in this release Mezcal mezcal bitcoin broadcast, etch, explore, mint, read, sign none Not in this release OP Inscriptions op_inscriptions bitcoin broadcast, explore, inscribe, read, sign none Not in this release OP Names op_names bitcoin broadcast, explore, inscribe, read, sign, transfer none Not in this release OP_RETURN op_return bitcoin broadcast, deploy, explore, inscribe, mint, read, sign, transfer none Not in this release OP-20 op-20 bitcoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release OP-DROP op-drop bitcoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release Ordinals ordinals bitcoin broadcast, inscribe, read, sign, transfer none Not in this release Patina patina bitcoin explore, read none Not in this release Runes runes bitcoin broadcast, etch, explore, mint, read, sign, transfer none Not in this release SRC-101 src-101 bitcoin explore, read none Not in this release SRC-20 src-20 bitcoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release Stamps stamps bitcoin broadcast, explore, inscribe, read, sign none Not in this release TAP tap bitcoin broadcast, deploy, explore, mint, read, sign, transfer none Not in this release UNAT unat bitcoin broadcast, explore, mint, read, sign, transfer none Not in this release Witness Circles witness-circles bitcoin explore, read none Not in this release Zcash zcash zcash broadcast, payment.send, read, send, sign none Not in this release Zerdinals zerdinals zcash broadcast, explore, inscribe, market-buy, market-list, market-settle, read, sign, transfer none Not in this release ZRC-20 (Zecscriptions) zrc-20-zecscriptions zcash broadcast, deploy, explore, mint, read, sign, transfer none Not in this release ZRC-20 (Zord) zrc-20-zord zcash broadcast, deploy, explore, mint, read, sign, transfer none Not in this release ZRunes zrunes zcash broadcast, etch, explore, mint, read, sign, transfer none Not in this release ## Notes on individual entries Section titled “Notes on individual entries” - BRC-110 declares no intended operations and is recorded as intentionally out of scope. It is in the registry so that the list is complete, not because it is planned. - Babylon appears on a Cosmos network and is not selectable in the network picker . Its screens carry a design obligation recorded as not intended, meaning only the unavailable state ships. Treat it as unavailable. - Fractal Bitcoin appears both as a chain in the picker and as a protocol row with read and explore . - Aliases matter when you read other documentation. ordinals covers inscriptions, rare sats, media, text, and names. zerdinals and zrunes are the Zcash entries. ## Related Section titled “Related” - What this release authorizes - Why an action is unavailable - Chains and networks Edit page Last updated: Oct 9, 2026 Previous What this release authorizes Next Why an action is unavailable ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/PUBLIC-CAPABILITY-SUMMARY.json Applicable release Universe Wallet 1.7.5.8 Lifecycle Not released Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # What this release authorizes | Universe Wallet The generated answer to which protocol operations Universe Wallet 1.7.5.8 authorizes, and why the number is what it is. - Universe Wallet - Assets and protocols # What this release authorizes The number, first Universe Wallet 1.7.5.8 carries 42 protocols in its registry and authorizes 0 of them. No protocol operation is available in the committed baseline. Do not plan around a protocol action working. That figure comes from the wallet’s own generated capability summary, which is the only source this documentation is permitted to make a version or capability claim from. It is copied into this repository as capability-snapshot.json and every count on this site is rendered from it, so the two cannot drift apart. ## Why zero Section titled “Why zero” An operation is authorized only when current evidence exists for every link behind it, bound to the exact commit of the build. The baseline in the repository carries none, on purpose, so that a build can never inherit an authorization it did not earn. The rule the product applies is: code existing is not support . A route existing is not availability. A parser existing is not wallet support. Authorization is attached at release time, per protocol, per network, per operation, from evidence covering the wallet, the API, the indexer, the network, confirmation, and reconciliation. One qualification campaign has completed, scoped to Zerdinals and ZRunes, producing an authorization covering thirteen operations across those two protocols against one candidate commit. That artifact has not been published. See Which version you are running . ## What is still true with zero authorized Section titled “What is still true with zero authorized” The parts of the wallet that carry no protocol gate work regardless: creating and importing wallets, receiving, addresses and address types, network switching, connections, the security dashboard, locked-coin and coin-health views, the address book, and activity. The parts that carry a protocol gate, including ordinary Bitcoin sending , depend on what your build authorized. The screen tells you. See Why an action is unavailable . ## How to read a claim anywhere else Section titled “How to read a claim anywhere else” If a page, a listing, a social post, or a person tells you a protocol action works in Universe Wallet, the way to check is not to ask them. Open the screen. If the operation is not authorized in your build, the screen says so and names what is missing. ## Related Section titled “Related” - The protocol registry , all 42 of them - Capability evidence - Why an action is unavailable Edit page Last updated: Oct 9, 2026 Previous What a digital artifact is Next The protocol registry ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/PUBLIC-CAPABILITY-SUMMARY.json Applicable release Universe Wallet 1.7.5.8 Lifecycle Not released Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # What a digital artifact is | Universe Wallet How an inscription, a token balance, and a rare satoshi actually exist on Bitcoin, and why that makes them fragile in an ordinary wallet. - Universe Wallet - Assets and protocols # What a digital artifact is Bitcoin has no field for “this coin is a collectible”. Everything people call a digital artifact is built on top of ordinary transaction structure, and understanding which part of the structure carries it explains almost every surprising behaviour you will meet. ## The three shapes Section titled “The three shapes” ### An inscription Section titled “An inscription” Data written into the witness of a transaction, and then treated as attached to one specific satoshi. Ownership follows that satoshi as it moves from output to output. Practically: the inscription lives on one unspent output . The output usually holds a tiny amount, often 546 satoshis, because the value is what is written on it, not what it holds. ### A token balance Section titled “A token balance” An amount recorded in a ledger that indexers compute by reading the chain. The chain itself has no token balance field. Different indexers reading the same blocks can, in principle, disagree, which is why protocol support depends on a specific indexer being part of the evidence chain. Practically: the balance is associated with an address or an output, according to that protocol’s rules, and moving the wrong coin can move or destroy the balance. ### A rare satoshi Section titled “A rare satoshi” A satoshi whose position in the issuance order is interesting: the first of a block, the first of a halving epoch, and so on. Nothing marks it. Its rarity is computed from where it sits in the sequence. Practically: rarity is a property of a satoshi inside an output. Spend the output carelessly and the rare satoshi ends up wherever the change went. ## Why this makes them fragile Section titled “Why this makes them fragile” An ordinary wallet sees coins and amounts. It has no reason to treat a 546 satoshi output as anything other than a small amount of money, and it will happily use it to fund a payment or roll it into a fee. That is not a bug in that wallet. It is a wallet doing exactly its job, on a chain where the artifact is invisible without an extra layer of interpretation. Universe Wallet adds that layer before coin selection, which is the whole point of Protected outputs . ## Why “supported” is a stronger word here than elsewhere Section titled “Why “supported” is a stronger word here than elsewhere” Displaying a token balance requires an indexer. Moving one requires the wallet, the indexer, the API, the network, and reconciliation afterwards to all agree. A wallet that shows you a balance it cannot correctly move is more dangerous than one that shows nothing. That is why the product treats support as something to be evidenced rather than declared. See What this release authorizes . ## Related Section titled “Related” - Payment and asset addresses - The protocol registry - Glossary Edit page Last updated: Oct 9, 2026 Previous Locking and passwords Next What this release authorizes ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/protocol-registry.ts Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Why an action is unavailable | Universe Wallet What the unavailable screen means, what it is not, and the list of things that will not change it. - Universe Wallet - Assets and protocols # Why an action is unavailable You opened a screen and it told you the operation is not available in this build. Here is what that means. ## What it means Section titled “What it means” The exact build you are running does not carry evidence for that operation, on that protocol, on that network. So the wallet refuses it up front, and names what is missing, rather than offering an action that would fail somewhere later. The screen still loads. It does not disappear from navigation. That is deliberate: a feature that silently vanishes between builds leaves you unsure whether you imagined it. ## What it is not Section titled “What it is not” - Not an outage. Nothing is down. This is a property of your build. - Not a permission problem. There is no account, no tier, and no upgrade. - Not a setting. There is no toggle in the wallet that changes it. - Not a bug to report. It is the product working as designed. Reporting it is fine and the answer will be this page. ## What will not change it Section titled “What will not change it” - Reinstalling the extension. - Clearing storage or resetting the wallet. - Switching accounts, or importing the phrase again. - Switching networks, although a different network genuinely can have a different authorization state, because authorization is recorded per network. - Waiting. It changes when a new build is released carrying evidence for that operation, not before. ## How the gating is shaped Section titled “How the gating is shaped” Screens fall into groups, recorded in the wallet’s generated route inventory: Group What it means Always reachable No protocol gate. Present in every build. Gated and authorized Behind a protocol gate that your release authorizes. Gated and blocked Behind a protocol gate with no authorized operation. Fails closed. Runtime gated The gate depends on what you navigated from. In the 1.7.5.8 baseline, 69 of 113 routes are always reachable, 40 are gated and blocked, and 4 are runtime gated. Nothing is gated and authorized, because the baseline authorizes nothing. Ordinary Bitcoin sending is behind a gate too The send, confirm, batch send, and consolidation screens sit behind bitcoin/send and bitcoin/broadcast . This surprises people, and it is the same rule applied consistently: no operation is exempt from needing evidence, including the most ordinary one. ## What you can still do Section titled “What you can still do” Everything with no protocol gate: create and import wallets, receive, manage address types, switch networks, connect and disconnect sites, read activity, inspect a transaction by id, view locked coins and coin health, use the address book, and use the security dashboard. ## If you need the operation Section titled “If you need the operation” There is nothing to configure locally. Follow the release list for a build that carries it, and read What this release authorizes for the current position. ## Related Section titled “Related” - Capability evidence - Which version you are running Edit page Last updated: Oct 9, 2026 Previous The protocol registry Next Media and large portfolios ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/ROUTE-INVENTORY.md, frontend/ui/pages/FeatureUnavailable Applicable release Universe Wallet 1.7.5.8 Lifecycle Not released Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Zcash market listings | Universe Wallet Review Zerdinal listings and full token lots with exact total prices, clear quantities, and a separate purchase approval. - Universe Wallet - Assets and protocols # Zcash market listings Universe Wallet’s source supports Zerdinal listings and full-lot purchases of ZRune and ZRC-20 tokens. A full lot moves everything listed on one outpoint in one purchase. It does not split the lot into partial fills. Check your installed build This source update is not an extension release. Listing and purchase signing require the installed build to authorize the corresponding operation. Source tests alone do not make the controls available. If the wallet reports that an operation is unavailable, keep that restriction in place. See Which version you are running and What this release authorizes . ## What you are buying Section titled “What you are buying” Asset What the lot represents ZRune The listed token balance carried by one outpoint ZRC-20 (zord) One pending transfer inscription evaluated under zord rules ZRC-20 (zecscriptions) One pending transfer inscription evaluated under zecscriptions rules The two ZRC-20 rulesets have separate identities and balances. A matching ticker does not make them interchangeable. The purchase approval names the selected ruleset. ## Read the quantity and total together Section titled “Read the quantity and total together” The approval shows Full lot in base units and Total lot price in ZEC or testnet ZEC. Base units are the token’s smallest units, not necessarily whole tokens. For a token with 18 decimal places, 100000000000000000000 base units represent 100 tokens. Confirm the token’s decimal places and lot on the market before approving. New total-price lots can have a price smaller than one zatoshi per base unit. The wallet shows their exact total without inventing a rounded unit price. Existing per-unit listings retain their exact price per base unit and also show the derived total. Review Buyer debit , the seller proceeds, creator payout, platform fee, network fee, change, and maximum debit. Check the delivery address separately from the address receiving your change. A signature does not mean the asset has arrived: delivery remains pending until the transaction is confirmed and indexed. ## What a listing signature allows Section titled “What a listing signature allows” A listing signature commits one asset outpoint to an exact seller payout. The payout must return to your connected wallet address. Anyone holding the signature can settle a conforming purchase; it does not reserve the offer for a particular buyer. There is no escrow or service custody. Review the exact amount you will receive, the listed outpoint and everything it carries, its expiry, and the selected network before signing. ## Why an approval can be blocked Section titled “Why an approval can be blocked” The wallet refuses an unverifiable asset outpoint, a mismatched account or network, a changed consensus branch, invalid transaction bytes, or a buyer debit above the approved maximum. A token purchase must settle the full lot from one outpoint. Partial fills and additional lot outpoints are refused. The wallet verifies its own funding and checks asset claims from Universe-operated services. The market and indexer establish the token quantity and ruleset. Missing or conflicting evidence must be resolved before approval; a disabled approve control is not a warning to click through. ## Cancellation and expiry Section titled “Cancellation and expiry” - A listing is public. Anyone can settle it while its signature remains valid. - Cancellation removes the market offer. It does not revoke a signature already supplied. A confirmed spend of the listed outpoint invalidates that offer. A positive expiry also limits the signature; an offer marked No expiry has no expiry block. - The ZEC riding on the asset outpoint transfers with it. Consider that value when setting your selling price. Disconnecting a site does not revoke a previously issued listing signature. ## After you approve Section titled “After you approve” The wallet checks the request again before signing. Changes to the account, network, site, reviewed order, transaction, or maximum debit require a fresh approval. Purchase signing touches only the reviewed buyer inputs and preserves the seller’s authorization and transaction outputs. If a submitted purchase has an unknown outcome, retain its execution identity and check its recorded status before retrying. Do not assume an interrupted page means the transaction failed. ## Related Section titled “Related” - What a signature authorizes - Connection permissions - What this release authorizes Edit page Last updated: Oct 9, 2026 Previous Dogecoin marketplace Next Security model ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/utils/zcash-market-settlement.ts, frontend/ui/pages/Approval/components/ZcashSignMarketSettlement/index.tsx Applicable release Universe Wallet 1.7.5.8 Chain zcash Lifecycle Not released Last verified 2026-09-17 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Redirecting to: /docs-wallet/assets/dogecoin-marketplace Redirecting to: /docs-wallet/assets/dogecoin-marketplace - Redirecting from /docs-wallet/assets-and-protocols/dogecoin-marketplace/ to /docs-wallet/assets/dogecoin-marketplace # Redirecting to: /docs-wallet/assets/support-state Redirecting to: /docs-wallet/assets/support-state - Redirecting from /docs-wallet/assets-and-protocols/overview/ to /docs-wallet/assets/support-state # Redirecting to: /docs-wallet/concepts/protected-outputs Redirecting to: /docs-wallet/concepts/protected-outputs - Redirecting from /docs-wallet/assets-and-protocols/protected-outputs/ to /docs-wallet/concepts/protected-outputs # Redirecting to: /docs-wallet/assets/protocol-registry Redirecting to: /docs-wallet/assets/protocol-registry - Redirecting from /docs-wallet/assets-and-protocols/supported-protocols/ to /docs-wallet/assets/protocol-registry # Redirecting to: /docs-wallet/assets/zcash-market-listings Redirecting to: /docs-wallet/assets/zcash-market-listings - Redirecting from /docs-wallet/assets-and-protocols/zcash-market-listings/ to /docs-wallet/assets/zcash-market-listings # Screen Atlas | Universe Wallet Every verified screenshot of Universe Wallet, with its release, theme, viewport, fixture, and provenance. # Screen Atlas # Screen Atlas 57 captures, all produced by the wallet's own deterministic visual harness and exported only after their pixel state was proven. Every image names the wallet version and commit it was captured from, and a capture of one release never represents another. ## All captures (no JavaScript required) The complete listing, usable without JavaScript or search. Each entry links its deep link and its image. - ### Address type selection (address-type--dark--360) A list of address type cards, each naming a derivation model and showing any balance found on it. Continue at the bottom is disabled while the wallet scans derivation paths for existing balances. workflow install-and-onboarding · state address-type · dark · 360px · wallet 1.7.5.8 Enlarge Address type selection - Picking the address model for the wallet. The Continue control stays disabled until the scan of each path finishes. (dark theme, 360px, wallet 1.7.5.8) Address type selection - wallet 1.7.5.8 Close - ### Address type selection (address-type--dark--400) A list of address type cards, each naming a derivation model and showing any balance found on it. Continue at the bottom is disabled while the wallet scans derivation paths for existing balances. workflow install-and-onboarding · state address-type · dark · 400px · wallet 1.7.5.8 Enlarge Address type selection - Picking the address model for the wallet. The Continue control stays disabled until the scan of each path finishes. (dark theme, 400px, wallet 1.7.5.8) Address type selection - wallet 1.7.5.8 Close - ### Connection request (approval-connect--dark--400) The approval window for a connection request. The requesting origin is shown as example-site.test, a clearly synthetic address. The request names the account access it wants. Approve and reject controls sit at the bottom, with reject as the safe default. workflow connection-approval · state connect-request · dark · 400px · wallet 1.7.5.8 Enlarge Connection request - What a site sees requested and what the user is asked to approve: the origin, the requested access, and nothing else. (dark theme, 400px, wallet 1.7.5.8) Connection request - wallet 1.7.5.8 Close - ### Connection request (approval-connect--light--400) The approval window for a connection request. The requesting origin is shown as example-site.test, a clearly synthetic address. The request names the account access it wants. Approve and reject controls sit at the bottom, with reject as the safe default. workflow connection-approval · state connect-request · light · 400px · wallet 1.7.5.8 Enlarge Connection request - What a site sees requested and what the user is asked to approve: the origin, the requested access, and nothing else. (light theme, 400px, wallet 1.7.5.8) Connection request - wallet 1.7.5.8 Close - ### Chain switch request (approval-switch-chain--dark--400) The approval window for a chain switch. The request states that the site example-site.test wants to switch the chain from the current value to Bitcoin Testnet. Approve and cancel controls sit at the bottom. workflow connection-approval · state switch-chain-request · dark · 400px · wallet 1.7.5.8 Enlarge Chain switch request - A site asking to move the active chain. The request names both the current and the requested chain. (dark theme, 400px, wallet 1.7.5.8) Chain switch request - wallet 1.7.5.8 Close - ### Chain switch request (approval-switch-chain--light--400) The approval window for a chain switch. The request states that the site example-site.test wants to switch the chain from the current value to Bitcoin Testnet. Approve and cancel controls sit at the bottom. workflow connection-approval · state switch-chain-request · light · 400px · wallet 1.7.5.8 Enlarge Chain switch request - A site asking to move the active chain. The request names both the current and the requested chain. (light theme, 400px, wallet 1.7.5.8) Chain switch request - wallet 1.7.5.8 Close - ### Unverified origin gate (approval-unverified-origin--dark--400) A full-window gate titled unable to verify this site. Body text explains that the wallet could not complete its site check and that the request is blocked until verification succeeds. No approve control is offered. workflow connection-approval · state unverified-origin · dark · 400px · wallet 1.7.5.8 Enlarge Unverified origin gate - The gate shown instead of an approval when the wallet cannot verify the requesting site. (dark theme, 400px, wallet 1.7.5.8) Unverified origin gate - wallet 1.7.5.8 Close - ### Unverified origin gate (approval-unverified-origin--light--400) A full-window gate titled unable to verify this site. Body text explains that the wallet could not complete its site check and that the request is blocked until verification succeeds. No approve control is offered. workflow connection-approval · state unverified-origin · light · 400px · wallet 1.7.5.8 Enlarge Unverified origin gate - The gate shown instead of an approval when the wallet cannot verify the requesting site. (light theme, 400px, wallet 1.7.5.8) Unverified origin gate - wallet 1.7.5.8 Close - ### Create a password (create-password--dark--360) A two-field form titled Create a password. Both fields are masked. Helper text explains that the password is used to unlock the wallet on this device. A Continue button sits at the bottom and stays disabled until both fields are filled. workflow install-and-onboarding · state create-password · dark · 360px · wallet 1.7.5.8 Enlarge Create a password - Password creation during setup. The password unlocks this device only; it never replaces the recovery phrase. (dark theme, 360px, wallet 1.7.5.8) Create a password - wallet 1.7.5.8 Close - ### Create a password (create-password--dark--400) A two-field form titled Create a password. Both fields are masked. Helper text explains that the password is used to unlock the wallet on this device. A Continue button sits at the bottom and stays disabled until both fields are filled. workflow install-and-onboarding · state create-password · dark · 400px · wallet 1.7.5.8 Enlarge Create a password - Password creation during setup. The password unlocks this device only; it never replaces the recovery phrase. (dark theme, 400px, wallet 1.7.5.8) Create a password - wallet 1.7.5.8 Close - ### Wallet tools hub (discover--dark--1100) The discover hub screen. A grid of wallet tool cards covers portfolio analytics, the NFT gallery, and other utilities. Cards whose underlying operation is not authorized in this release render in a muted unavailable state. workflow discover · state hub · dark · 1100px · wallet 1.7.5.8 Enlarge Wallet tools hub - The discover hub listing wallet tools. Entries that need an unauthorized operation are inert here. (dark theme, 1100px, wallet 1.7.5.8) Wallet tools hub - wallet 1.7.5.8 Close - ### Wallet tools hub (discover--dark--360) The discover hub screen. A grid of wallet tool cards covers portfolio analytics, the NFT gallery, and other utilities. Cards whose underlying operation is not authorized in this release render in a muted unavailable state. workflow discover · state hub · dark · 360px · wallet 1.7.5.8 Enlarge Wallet tools hub - The discover hub listing wallet tools. Entries that need an unauthorized operation are inert here. (dark theme, 360px, wallet 1.7.5.8) Wallet tools hub - wallet 1.7.5.8 Close - ### Wallet tools hub (discover--dark--400) The discover hub screen. A grid of wallet tool cards covers portfolio analytics, the NFT gallery, and other utilities. Cards whose underlying operation is not authorized in this release render in a muted unavailable state. workflow discover · state hub · dark · 400px · wallet 1.7.5.8 Enlarge Wallet tools hub - The discover hub listing wallet tools. Entries that need an unauthorized operation are inert here. (dark theme, 400px, wallet 1.7.5.8) Wallet tools hub - wallet 1.7.5.8 Close - ### Wallet tools hub (discover--light--400) The discover hub screen. A grid of wallet tool cards covers portfolio analytics, the NFT gallery, and other utilities. Cards whose underlying operation is not authorized in this release render in a muted unavailable state. workflow discover · state hub · light · 400px · wallet 1.7.5.8 Enlarge Wallet tools hub - The discover hub listing wallet tools. Entries that need an unauthorized operation are inert here. (light theme, 400px, wallet 1.7.5.8) Wallet tools hub - wallet 1.7.5.8 Close - ### Transaction history, offline (history--dark--360) The activity screen showing a load failure. Text explains that transaction history could not be loaded and offers a retry control. No transactions are listed. workflow history · state offline-error · dark · 360px · wallet 1.7.5.8 Enlarge Transaction history, offline - History while the wallet cannot reach its indexers: an explicit failure state, not a silent empty list. (dark theme, 360px, wallet 1.7.5.8) Transaction history, offline - wallet 1.7.5.8 Close - ### Transaction history, offline (history--dark--400) The activity screen showing a load failure. Text explains that transaction history could not be loaded and offers a retry control. No transactions are listed. workflow history · state offline-error · dark · 400px · wallet 1.7.5.8 Enlarge Transaction history, offline - History while the wallet cannot reach its indexers: an explicit failure state, not a silent empty list. (dark theme, 400px, wallet 1.7.5.8) Transaction history, offline - wallet 1.7.5.8 Close - ### Transaction history, offline (history--light--400) The activity screen showing a load failure. Text explains that transaction history could not be loaded and offers a retry control. No transactions are listed. workflow history · state offline-error · light · 400px · wallet 1.7.5.8 Enlarge Transaction history, offline - History while the wallet cannot reach its indexers: an explicit failure state, not a silent empty list. (light theme, 400px, wallet 1.7.5.8) Transaction history, offline - wallet 1.7.5.8 Close - ### Home, empty wallet (home--dark--1100) The home screen of Universe Wallet with a zero balance and no transaction history. A header shows the account name and the current network. The main area invites the user to receive their first funds. A protocol bar states that no protocol is authorized in this build. workflow home · state empty · dark · 1100px · wallet 1.7.5.8 Enlarge Home, empty wallet - Home for a wallet with nothing in it yet. The fail-closed protocol bar shows no authorized protocol. (dark theme, 1100px, wallet 1.7.5.8) Home, empty wallet - wallet 1.7.5.8 Close - ### Home, empty wallet (home--dark--360) The home screen of Universe Wallet with a zero balance and no transaction history. A header shows the account name and the current network. The main area invites the user to receive their first funds. A protocol bar states that no protocol is authorized in this build. workflow home · state empty · dark · 360px · wallet 1.7.5.8 Enlarge Home, empty wallet - Home for a wallet with nothing in it yet. The fail-closed protocol bar shows no authorized protocol. (dark theme, 360px, wallet 1.7.5.8) Home, empty wallet - wallet 1.7.5.8 Close - ### Home, empty wallet (home--dark--400) The home screen of Universe Wallet with a zero balance and no transaction history. A header shows the account name and the current network. The main area invites the user to receive their first funds. A protocol bar states that no protocol is authorized in this build. workflow home · state empty · dark · 400px · wallet 1.7.5.8 Enlarge Home, empty wallet - Home for a wallet with nothing in it yet. The fail-closed protocol bar shows no authorized protocol. (dark theme, 400px, wallet 1.7.5.8) Home, empty wallet - wallet 1.7.5.8 Close - ### Home, empty wallet (home--dark--430) The home screen of Universe Wallet with a zero balance and no transaction history. A header shows the account name and the current network. The main area invites the user to receive their first funds. A protocol bar states that no protocol is authorized in this build. workflow home · state empty · dark · 430px · wallet 1.7.5.8 Enlarge Home, empty wallet - Home for a wallet with nothing in it yet. The fail-closed protocol bar shows no authorized protocol. (dark theme, 430px, wallet 1.7.5.8) Home, empty wallet - wallet 1.7.5.8 Close - ### Home, empty wallet (home--dark--536) The home screen of Universe Wallet with a zero balance and no transaction history. A header shows the account name and the current network. The main area invites the user to receive their first funds. A protocol bar states that no protocol is authorized in this build. workflow home · state empty · dark · 536px · wallet 1.7.5.8 Enlarge Home, empty wallet - Home for a wallet with nothing in it yet. The fail-closed protocol bar shows no authorized protocol. (dark theme, 536px, wallet 1.7.5.8) Home, empty wallet - wallet 1.7.5.8 Close - ### Home, empty wallet (home--light--400) The home screen of Universe Wallet with a zero balance and no transaction history. A header shows the account name and the current network. The main area invites the user to receive their first funds. A protocol bar states that no protocol is authorized in this build. workflow home · state empty · light · 400px · wallet 1.7.5.8 Enlarge Home, empty wallet - Home for a wallet with nothing in it yet. The fail-closed protocol bar shows no authorized protocol. (light theme, 400px, wallet 1.7.5.8) Home, empty wallet - wallet 1.7.5.8 Close - ### Home, empty wallet (home--oled--400) The home screen of Universe Wallet with a zero balance and no transaction history. A header shows the account name and the current network. The main area invites the user to receive their first funds. A protocol bar states that no protocol is authorized in this build. workflow home · state empty · oled · 400px · wallet 1.7.5.8 Enlarge Home, empty wallet - Home for a wallet with nothing in it yet. The fail-closed protocol bar shows no authorized protocol. (oled theme, 400px, wallet 1.7.5.8) Home, empty wallet - wallet 1.7.5.8 Close - ### Home with a populated portfolio (home-populated--dark--360) The home screen populated from the performance lab synthetic fixture. A balance block shows a total, an available portion, and a held-back portion with an ownership line. The protected-output summary lists held outputs. The network header and account switcher sit above. workflow home · state populated · dark · 360px · wallet 1.7.5.8 Enlarge Home with a populated portfolio - Home answered from the synthetic portfolio fixture: real balance anatomy, ownership line, and protected-output summary with real numbers. (dark theme, 360px, wallet 1.7.5.8) Home with a populated portfolio - wallet 1.7.5.8 Close - ### Home with a populated portfolio (home-populated--dark--400) The home screen populated from the performance lab synthetic fixture. A balance block shows a total, an available portion, and a held-back portion with an ownership line. The protected-output summary lists held outputs. The network header and account switcher sit above. workflow home · state populated · dark · 400px · wallet 1.7.5.8 Enlarge Home with a populated portfolio - Home answered from the synthetic portfolio fixture: real balance anatomy, ownership line, and protected-output summary with real numbers. (dark theme, 400px, wallet 1.7.5.8) Home with a populated portfolio - wallet 1.7.5.8 Close - ### Home with a populated portfolio (home-populated--light--400) The home screen populated from the performance lab synthetic fixture. A balance block shows a total, an available portion, and a held-back portion with an ownership line. The protected-output summary lists held outputs. The network header and account switcher sit above. workflow home · state populated · light · 400px · wallet 1.7.5.8 Enlarge Home with a populated portfolio - Home answered from the synthetic portfolio fixture: real balance anatomy, ownership line, and protected-output summary with real numbers. (light theme, 400px, wallet 1.7.5.8) Home with a populated portfolio - wallet 1.7.5.8 Close - ### Protected outputs, empty (locked-utxos--dark--400) The protected outputs screen in its empty state. A header reads Protected outputs. Body text explains that outputs held back by the wallet appear here and that none are currently held. workflow protected-outputs · state empty · dark · 400px · wallet 1.7.5.8 Enlarge Protected outputs, empty - The protected outputs screen with nothing held back yet. (dark theme, 400px, wallet 1.7.5.8) Protected outputs, empty - wallet 1.7.5.8 Close - ### Protected outputs, empty (locked-utxos--light--400) The protected outputs screen in its empty state. A header reads Protected outputs. Body text explains that outputs held back by the wallet appear here and that none are currently held. workflow protected-outputs · state empty · light · 400px · wallet 1.7.5.8 Enlarge Protected outputs, empty - The protected outputs screen with nothing held back yet. (light theme, 400px, wallet 1.7.5.8) Protected outputs, empty - wallet 1.7.5.8 Close - ### NFT gallery, offline (nft-gallery--dark--400) The NFT gallery screen in its offline state. The header reads NFT Gallery. The grid area shows an explicit unavailable state rather than an empty grid. workflow nft-gallery · state offline-error · dark · 400px · wallet 1.7.5.8 Enlarge NFT gallery, offline - The gallery screen while its index is unreachable. (dark theme, 400px, wallet 1.7.5.8) NFT gallery, offline - wallet 1.7.5.8 Close - ### NFT gallery, offline (nft-gallery--light--400) The NFT gallery screen in its offline state. The header reads NFT Gallery. The grid area shows an explicit unavailable state rather than an empty grid. workflow nft-gallery · state offline-error · light · 400px · wallet 1.7.5.8 Enlarge NFT gallery, offline - The gallery screen while its index is unreachable. (light theme, 400px, wallet 1.7.5.8) NFT gallery, offline - wallet 1.7.5.8 Close - ### Portfolio analytics, offline (portfolio--dark--400) The portfolio analytics screen in its offline state. The header reads Portfolio. The chart area shows an explicit unavailable state rather than an empty chart. workflow portfolio · state offline-error · dark · 400px · wallet 1.7.5.8 Enlarge Portfolio analytics, offline - Portfolio analytics settling into its offline state when no index answers. (dark theme, 400px, wallet 1.7.5.8) Portfolio analytics, offline - wallet 1.7.5.8 Close - ### Portfolio analytics, offline (portfolio--light--400) The portfolio analytics screen in its offline state. The header reads Portfolio. The chart area shows an explicit unavailable state rather than an empty chart. workflow portfolio · state offline-error · light · 400px · wallet 1.7.5.8 Enlarge Portfolio analytics, offline - Portfolio analytics settling into its offline state when no index answers. (light theme, 400px, wallet 1.7.5.8) Portfolio analytics, offline - wallet 1.7.5.8 Close - ### Protected outputs, populated (protected-outputs-populated--dark--400) The protected outputs screen populated from the synthetic fixture. Each row lists an output, the amount held back, and the reason it is held. A summary line totals the held amount. workflow protected-outputs · state populated · dark · 400px · wallet 1.7.5.8 Enlarge Protected outputs, populated - Held-back outputs listed with the reasons the wallet is holding them. (dark theme, 400px, wallet 1.7.5.8) Protected outputs, populated - wallet 1.7.5.8 Close - ### Protected outputs, populated (protected-outputs-populated--light--400) The protected outputs screen populated from the synthetic fixture. Each row lists an output, the amount held back, and the reason it is held. A summary line totals the held amount. workflow protected-outputs · state populated · light · 400px · wallet 1.7.5.8 Enlarge Protected outputs, populated - Held-back outputs listed with the reasons the wallet is holding them. (light theme, 400px, wallet 1.7.5.8) Protected outputs, populated - wallet 1.7.5.8 Close - ### Receive (receive--dark--360) The receive screen. Text states the wallet is ready to receive. Controls for choosing the receiving address and copying or revealing it appear once an address is selected. The network name is shown near the header. workflow receive · state ready · dark · 360px · wallet 1.7.5.8 Enlarge Receive - The receiving screen before an address is requested, showing the readiness state. (dark theme, 360px, wallet 1.7.5.8) Receive - wallet 1.7.5.8 Close - ### Receive (receive--dark--400) The receive screen. Text states the wallet is ready to receive. Controls for choosing the receiving address and copying or revealing it appear once an address is selected. The network name is shown near the header. workflow receive · state ready · dark · 400px · wallet 1.7.5.8 Enlarge Receive - The receiving screen before an address is requested, showing the readiness state. (dark theme, 400px, wallet 1.7.5.8) Receive - wallet 1.7.5.8 Close - ### Receive (receive--light--400) The receive screen. Text states the wallet is ready to receive. Controls for choosing the receiving address and copying or revealing it appear once an address is selected. The network name is shown near the header. workflow receive · state ready · light · 400px · wallet 1.7.5.8 Enlarge Receive - The receiving screen before an address is requested, showing the readiness state. (light theme, 400px, wallet 1.7.5.8) Receive - wallet 1.7.5.8 Close - ### Import source selection (restore-source--dark--360) A selection screen listing import sources as radio cards. The Unisat Wallet card is highlighted because the walk selected it. Each card names a source and a short description of what it imports. workflow import-a-wallet · state restore-source · dark · 360px · wallet 1.7.5.8 Enlarge Import source selection - Choosing where an imported wallet comes from. The wallet only accepts the sources it can verify. (dark theme, 360px, wallet 1.7.5.8) Import source selection - wallet 1.7.5.8 Close - ### Import source selection (restore-source--dark--400) A selection screen listing import sources as radio cards. The Unisat Wallet card is highlighted because the walk selected it. Each card names a source and a short description of what it imports. workflow import-a-wallet · state restore-source · dark · 400px · wallet 1.7.5.8 Enlarge Import source selection - Choosing where an imported wallet comes from. The wallet only accepts the sources it can verify. (dark theme, 400px, wallet 1.7.5.8) Import source selection - wallet 1.7.5.8 Close - ### Recovery phrase entry (seed-import--dark--360) A grid of twelve input boxes, one per recovery word, shown with masked characters because secure input is enabled. A toggle labelled secure input controls masking. A Continue button sits at the bottom. workflow import-a-wallet · state seed-entry · dark · 360px · wallet 1.7.5.8 Enlarge Recovery phrase entry - The twelve-word entry grid with secure input on. Words are masked while typing; nothing here is ever photographed or pasted for real recovery material. (dark theme, 360px, wallet 1.7.5.8) Recovery phrase entry - wallet 1.7.5.8 Close - ### Recovery phrase entry (seed-import--dark--400) A grid of twelve input boxes, one per recovery word, shown with masked characters because secure input is enabled. A toggle labelled secure input controls masking. A Continue button sits at the bottom. workflow import-a-wallet · state seed-entry · dark · 400px · wallet 1.7.5.8 Enlarge Recovery phrase entry - The twelve-word entry grid with secure input on. Words are masked while typing; nothing here is ever photographed or pasted for real recovery material. (dark theme, 400px, wallet 1.7.5.8) Recovery phrase entry - wallet 1.7.5.8 Close - ### Send, fail-closed state (send--dark--360) The send screen in its fail-closed state. Instead of a transfer form, a panel explains that this build cannot send because its release authorizes no sending operation. No address field, amount field, or approve control is shown. workflow send · state unavailable · dark · 360px · wallet 1.7.5.8 Enlarge Send, fail-closed state - What Send shows in a build whose release authorizes no sending: a plain statement that this build cannot send. (dark theme, 360px, wallet 1.7.5.8) Send, fail-closed state - wallet 1.7.5.8 Close - ### Send, fail-closed state (send--dark--400) The send screen in its fail-closed state. Instead of a transfer form, a panel explains that this build cannot send because its release authorizes no sending operation. No address field, amount field, or approve control is shown. workflow send · state unavailable · dark · 400px · wallet 1.7.5.8 Enlarge Send, fail-closed state - What Send shows in a build whose release authorizes no sending: a plain statement that this build cannot send. (dark theme, 400px, wallet 1.7.5.8) Send, fail-closed state - wallet 1.7.5.8 Close - ### Send, fail-closed state (send--light--400) The send screen in its fail-closed state. Instead of a transfer form, a panel explains that this build cannot send because its release authorizes no sending operation. No address field, amount field, or approve control is shown. workflow send · state unavailable · light · 400px · wallet 1.7.5.8 Enlarge Send, fail-closed state - What Send shows in a build whose release authorizes no sending: a plain statement that this build cannot send. (light theme, 400px, wallet 1.7.5.8) Send, fail-closed state - wallet 1.7.5.8 Close - ### Settings (settings--dark--1100) The settings screen. Sections list backup status with a call to back up the wallet, security entries, appearance, network, and about information with the wallet version. workflow settings · state root · dark · 1100px · wallet 1.7.5.8 Enlarge Settings - The settings root, including backup status and the appearance entry. (dark theme, 1100px, wallet 1.7.5.8) Settings - wallet 1.7.5.8 Close - ### Settings (settings--dark--360) The settings screen. Sections list backup status with a call to back up the wallet, security entries, appearance, network, and about information with the wallet version. workflow settings · state root · dark · 360px · wallet 1.7.5.8 Enlarge Settings - The settings root, including backup status and the appearance entry. (dark theme, 360px, wallet 1.7.5.8) Settings - wallet 1.7.5.8 Close - ### Settings (settings--dark--400) The settings screen. Sections list backup status with a call to back up the wallet, security entries, appearance, network, and about information with the wallet version. workflow settings · state root · dark · 400px · wallet 1.7.5.8 Enlarge Settings - The settings root, including backup status and the appearance entry. (dark theme, 400px, wallet 1.7.5.8) Settings - wallet 1.7.5.8 Close - ### Settings (settings--light--400) The settings screen. Sections list backup status with a call to back up the wallet, security entries, appearance, network, and about information with the wallet version. workflow settings · state root · light · 400px · wallet 1.7.5.8 Enlarge Settings - The settings root, including backup status and the appearance entry. (light theme, 400px, wallet 1.7.5.8) Settings - wallet 1.7.5.8 Close - ### Settings (settings--oled--400) The settings screen. Sections list backup status with a call to back up the wallet, security entries, appearance, network, and about information with the wallet version. workflow settings · state root · oled · 400px · wallet 1.7.5.8 Enlarge Settings - The settings root, including backup status and the appearance entry. (oled theme, 400px, wallet 1.7.5.8) Settings - wallet 1.7.5.8 Close - ### Account switcher (switch-account--dark--400) The account switcher screen. A list shows Account 1 with its balance and address fragment, and a control to add another account. The active account is marked. workflow account-switching · state switcher · dark · 400px · wallet 1.7.5.8 Enlarge Account switcher - Switching between accounts. Balances for each account are listed beside its name. (dark theme, 400px, wallet 1.7.5.8) Account switcher - wallet 1.7.5.8 Close - ### Account switcher (switch-account--light--400) The account switcher screen. A list shows Account 1 with its balance and address fragment, and a control to add another account. The active account is marked. workflow account-switching · state switcher · light · 400px · wallet 1.7.5.8 Enlarge Account switcher - Switching between accounts. Balances for each account are listed beside its name. (light theme, 400px, wallet 1.7.5.8) Account switcher - wallet 1.7.5.8 Close - ### Appearance settings (theme-settings--dark--360) The appearance screen. Three appearance profiles are offered as selectable cards: light, dark, and OLED black. The currently selected profile is marked. workflow settings · state appearance · dark · 360px · wallet 1.7.5.8 Enlarge Appearance settings - Choosing between light, dark, and OLED appearance profiles. (dark theme, 360px, wallet 1.7.5.8) Appearance settings - wallet 1.7.5.8 Close - ### Appearance settings (theme-settings--dark--400) The appearance screen. Three appearance profiles are offered as selectable cards: light, dark, and OLED black. The currently selected profile is marked. workflow settings · state appearance · dark · 400px · wallet 1.7.5.8 Enlarge Appearance settings - Choosing between light, dark, and OLED appearance profiles. (dark theme, 400px, wallet 1.7.5.8) Appearance settings - wallet 1.7.5.8 Close - ### Appearance settings (theme-settings--light--400) The appearance screen. Three appearance profiles are offered as selectable cards: light, dark, and OLED black. The currently selected profile is marked. workflow settings · state appearance · light · 400px · wallet 1.7.5.8 Enlarge Appearance settings - Choosing between light, dark, and OLED appearance profiles. (light theme, 400px, wallet 1.7.5.8) Appearance settings - wallet 1.7.5.8 Close - ### Welcome screen (welcome--dark--360) Universe Wallet welcome screen on a dark background. The wallet wordmark sits above text welcoming the reader, and two actions are offered: create a new wallet, or import an existing wallet. A short line under the actions explains that keys are stored on this device. workflow install-and-onboarding · state welcome · dark · 360px · wallet 1.7.5.8 Enlarge Welcome screen - The first screen a new installation shows, with the choice between creating a wallet and importing one. (dark theme, 360px, wallet 1.7.5.8) Welcome screen - wallet 1.7.5.8 Close - ### Welcome screen (welcome--dark--400) Universe Wallet welcome screen on a dark background. The wallet wordmark sits above text welcoming the reader, and two actions are offered: create a new wallet, or import an existing wallet. A short line under the actions explains that keys are stored on this device. workflow install-and-onboarding · state welcome · dark · 400px · wallet 1.7.5.8 Enlarge Welcome screen - The first screen a new installation shows, with the choice between creating a wallet and importing one. (dark theme, 400px, wallet 1.7.5.8) Welcome screen - wallet 1.7.5.8 Close Previous Transaction Safety Lab Next Answer Center ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Address types | Universe Wallet The six Bitcoin address variants Universe Wallet derives, their derivation paths, their prefixes, and which to choose. - Universe Wallet - How it works # Address types Universe Wallet derives six Bitcoin address variants from one recovery phrase. Four are formats you would recognise; two exist only so that wallets which derived addresses in an older, non-standard way can still be imported. Name Path Starts with Use it when Native SegWit (P2WPKH) m/84'/0'/0'/0 bc1q Default. Cheapest to spend, accepted almost everywhere. Nested SegWit (P2SH-P2WPKH) m/49'/0'/0'/0 3 A service cannot pay a bc1 address. Taproot (P2TR) m/86'/0'/0'/0 bc1p Holding inscriptions and most protocol assets. Legacy (P2PKH) m/44'/0'/0'/0 1 A service accepts nothing else. Most expensive to spend. Native SegWit, BIP-44 path m/44'/0'/0'/0 bc1q Import compatibility only. Some wallets derived SegWit keys on the legacy path. Taproot, BIP-44 path m/44'/0'/0'/0 bc1p Import compatibility only, for the same reason. ## Why the same phrase gives different addresses Section titled “Why the same phrase gives different addresses” The derivation path is part of the calculation. Change the path, and the same twelve words produce a completely different set of keys, which are equally valid and equally yours, holding nothing. This is why an imported wallet can appear empty when nothing is wrong. It is not the phrase. It is the path. See Import an existing wallet . ## Changing your address type Section titled “Changing your address type” Open Settings , then Address type . Changing it does not move anything and does not create a new wallet. It changes which of your addresses the wallet shows you and spends from by default. Coins at the old address type are still yours, still visible, and still spendable. ## Which one to choose Section titled “Which one to choose” - If you are unsure, keep Native SegWit. It is the default for good reasons: lowest fees to spend, and near-universal acceptance. - If you hold or plan to hold inscriptions, use Taproot for those, because marketplaces and indexers expect it. See Payment and asset addresses . - Do not use Legacy for anything new. It works, and it costs more in fees every time you spend. ## Fee consequences Section titled “Fee consequences” Address type affects the size of a transaction, and size is what you pay for. Roughly, spending a Legacy input costs the most, Nested SegWit less, and Native SegWit and Taproot the least. If you hold a mixture, a consolidation of many small Legacy coins can cost noticeably more than the same consolidation of Native SegWit coins. ## Related Section titled “Related” - Payment and asset addresses - Inputs, outputs, fees, change Edit page Last updated: Oct 9, 2026 Previous Payment and asset addresses Next Inputs, outputs, fees, change ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/constant/index.ts Applicable release Universe Wallet 1.7.5.8 Chain bitcoin Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Payment and asset addresses | Universe Wallet Why people talk about a payment address and an asset address, why Bitcoin has no such distinction, and what actually decides where your artifacts live. - Universe Wallet - How it works # Payment and asset addresses One recovery phrase produces several Bitcoin addresses, in different formats, all yours at the same time. People call one of them the payment address and another the asset address. That shorthand is useful, and it is also not how Bitcoin works. Both halves of that matter. All four lanes come from the same words. Universe Wallet defaults to Native SegWit for payments and shows Taproot as the lane where inscriptions and most protocol assets are conventionally held. The distinction is a convention among wallets and marketplaces, not a rule the network enforces. ## What is actually true Section titled “What is actually true” An inscription, a rune balance, or a token balance is attached to a specific unspent output , not to an address. The address is just the lock on that output. That has three consequences worth internalising: - Any address type can hold an artifact. Nothing stops an inscription from sitting on a Native SegWit output. Marketplaces and indexers conventionally expect Taproot, so a non-standard placement can be harder to trade, but it is not invalid. - Spending the output moves the artifact. If a payment happens to select the coin an inscription sits on, the inscription goes wherever that coin goes. This is the accident Universe Wallet exists to prevent, and it is covered in Protected outputs . - You cannot make an address safe. There is no address setting that protects an artifact. The protection lives in coin selection, not in the address. ## Why the shorthand still helps Section titled “Why the shorthand still helps” Keeping artifacts on one address type and everyday money on another has a practical benefit: it reduces the number of coins that a routine payment could reach in the first place. It is a tidiness habit, not a security boundary. If you use one address for everything, Universe Wallet still classifies every coin before selecting it. The habit helps; the classification is what actually protects you. ## Which address to give out Section titled “Which address to give out” Situation Give them Someone is paying you in bitcoin Your default receiving address. Native SegWit unless you changed it. A marketplace is sending you an inscription or an ordinal Your Taproot address, unless the marketplace asks for something specific. A service says it cannot pay a bc1 address Your Nested SegWit address, which starts with 3 . A service only accepts addresses starting with 1 Your Legacy address. Expect to pay more to spend it later. ## Related Section titled “Related” - Address types , including derivation paths - Protected outputs - Receive Edit page Last updated: Oct 9, 2026 Previous Emergency handbook Next Address types ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/constant/index.ts Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Backup and recovery | Universe Wallet What the recovery phrase restores, what it does not, and which of the five ways to lose a wallet has no way back. - Universe Wallet - How it works # Backup and recovery Your coins are not in the extension. They are on the chain. The extension holds the keys that authorize moving them, and the recovery phrase reproduces those keys anywhere. Four of these five situations are recoverable from paper alone. The fifth has no path back, for anyone. ## What the phrase restores Section titled “What the phrase restores” Everything that is money: - every account in the wallet, - every network, - every address type, - on any device, in any BIP-39 compatible wallet, not only this one. ## What the phrase does not restore Section titled “What the phrase does not restore” Everything that is a setting: - your password, - connected sites, - address labels and contacts, - coins you locked yourself, - spending limits. These live on the device. After a restore, your funds and assets are all there, and your preferences are not. Expect to set them up again. Nothing about that indicates a failed restore. ## The five situations Section titled “The five situations” What happened Recoverable What to do Forgot the password Yes The password unlocks one installation and is not the backup. Reinstall, then restore from the phrase. Device lost, stolen, or broken Yes Restore from the phrase on another device. Your coins were never on the old one. Extension removed or profile wiped Yes Reinstalling gives you an empty wallet. Restore from the phrase. Someone else saw the phrase Access is fine, secrecy is not Move everything to a wallet made from a new phrase, immediately. See If your wallet is compromised . Phrase lost and you cannot unlock No There is no path. See below. The one with no way back If your recovery phrase is gone and you can no longer unlock the wallet, nobody can recover it. Not Universe, not the browser vendor, not a support agent, not a recovery service. Anyone offering to do it is arranging a second theft. There is no exception to this and there never will be. ## The situation people miss Section titled “The situation people miss” Phrase lost, but the wallet still unlocks. This is urgent and it is survivable, and people sit on it for months because nothing appears to be wrong. Do one of these today: - Open Settings , then Export recovery phrase , and write it down properly. See Back up your recovery phrase . - Or move everything to a wallet whose phrase you do have. The window closes the moment anything happens to that browser profile. ## Restoring, step by step Section titled “Restoring, step by step” - Install the extension from the real store listing. See Install . - Choose to import a wallet. - Enter the phrase, in order, plus the BIP-39 passphrase if you used one. - Select the address type you used before. If the balance looks wrong, this is almost always why. See Address types . - Confirm a known address of yours appears. - Set your password, auto-lock, and any settings you want back. ## Related Section titled “Related” - Back up your recovery phrase - Import an existing wallet - Locking and passwords Edit page Last updated: Oct 9, 2026 Previous Connection permissions Next Chains and networks ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/service/keyring, frontend/ui/pages/Settings/ExportMnemonicsScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Chains and networks | Universe Wallet The ten networks the wallet can switch between, what switching does and does not change, and why a test network address must never receive real money. - Universe Wallet - How it works # Chains and networks ## The networks in the picker Section titled “The networks in the picker” Network Unit Purpose Bitcoin BTC Real money. Bitcoin Testnet tBTC Test coins with no value. Bitcoin Testnet4 (Beta) tBTC Newer test network, labelled Beta in the product. Bitcoin Signet sBTC Test network with predictable block production. Dogecoin DOGE Real money. Dogecoin Testnet tDOGE Test coins with no value. Zcash ZEC Real money. Transparent addresses. Zcash Testnet tZEC Test coins with no value. Fractal Bitcoin FB Real money. Fractal Bitcoin Testnet tFB Test coins with no value. Entries that a build has not enabled appear in the list marked Coming soon and cannot be selected. They are shown rather than hidden so that the list does not silently change shape between builds. Babylon and Cosmos The protocol registry records a Babylon entry on a Cosmos network, and the source tree contains Babylon screens. Babylon is not selectable in the network picker , and its routes are gated with a design obligation recorded as not intended, meaning only the unavailable state ships. Treat Cosmos and Babylon as unavailable. ## What switching a network changes Section titled “What switching a network changes” - The addresses shown, because address formats differ per network. - The balance, assets, and activity, because they are read per network. - Which protocol operations are even conceivable, because authorization is recorded per protocol and per network . ## What switching does not change Section titled “What switching does not change” - Your recovery phrase. One phrase covers every network. - Your keys. They are derived per chain from the same phrase. - Anything on the chain. Switching is a view change, not a transaction. ## Test networks Section titled “Test networks” Test coins are worthless by design. That is the point: you can practise sending, reviewing, and recovering without risk. Never send real funds to a test network address Mainnet and testnet addresses look similar and are not interchangeable. Coins sent to the wrong network do not bounce back, and there is no support process to retrieve them. Check the network shown at the top of the wallet before you copy any address. Practising on a test network first is the cheapest safety measure available to you, and almost nobody does it. It is worth twenty minutes. ## Connected sites and networks Section titled “Connected sites and networks” A connection is granted for one address on one network . Switching networks does not extend an existing connection to the new one. A site that needs the other network has to request it, and you approve that separately. See Connection permissions . ## Related Section titled “Related” - Switch chain and network - The protocol registry Edit page Last updated: Oct 9, 2026 Previous Backup and recovery Next Confidence marks ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/constant/index.ts, frontend/ui/pages/Settings/NetworkTypeScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Confidence marks | Universe Wallet Every interpreted fact on an approval screen carries EXACT, ESTIMATED, or UNKNOWN. What each one means, and why unknown is never rounded to zero. - Universe Wallet - How it works # Confidence marks An approval screen has to tell you what a transaction does. Some of that is arithmetic the wallet can do with certainty. Some of it is interpretation that depends on an indexer, a decoder, or data the wallet does not have. Rather than presenting both with the same authority, every interpreted fact carries a mark. Mark Meaning How to read it EXACT Computed from the transaction itself. Trust the number. It is arithmetic. ESTIMATED Derived from data that could be stale or approximate. Directionally right. Do not treat the last digits as precise. UNKNOWN The wallet could not determine this. Treat as a reason to stop, not as zero. ## Why unknown is not zero Section titled “Why unknown is not zero” A fact the wallet cannot verify is shown as unknown, not hidden and not rounded to zero This is the difference between a wallet that is honest about its limits and one that looks reassuring. An unreadable field means something happened that the wallet could not interpret. Blank space where that field should be would look like nothing happening, which is the opposite of the truth. The overall status of a request takes the worst mark present. A request cannot read as ready while any fact on it is unknown. ## What to do with each Section titled “What to do with each” Everything exact. The arithmetic is complete. Read the amounts and decide. Something estimated. Usually fine. Common with protocol balances, where the amount depends on an indexer’s reading of the chain. Check that the direction and the rough size match what you expect. Anything unknown. Stop and find out why before approving. - If a protocol balance is unknown, an indexer probably could not be reached. Retry later rather than approving blind. - If an output is unknown, the wallet could not tell whose it is or what it does. That is the shape of a request that is not what it appears to be. - If the whole request is unknown, reject it. There is no cost to rejecting. ## The related rule about mutation Section titled “The related rule about mutation” Approval authority is computed once per request and re-checked at every signing entry point. A request that changed after you looked at it fails closed rather than being signed. You do not have to catch that yourself, and the marks are not the mechanism that catches it, but knowing it exists is worth something when you are deciding how much of the screen to trust. ## Related Section titled “Related” - Review a transaction - What a signature authorizes Edit page Last updated: Oct 9, 2026 Previous Chains and networks Next Receive ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/STORE-LISTING.md, frontend/ui/pages/Approval/components Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Connection permissions | Universe Wallet What a connected site is granted, the five things it is never granted, and how the idle window ends access on its own. - Universe Wallet - How it works # Connection permissions Connecting a site is the smallest permission in the product, and it is routinely mistaken for the largest one. It is worth being precise about. Being connected is permission to ask . It is never permission to sign . Every signature is its own screen, every time, for the life of the connection. ## Granted Section titled “Granted” - One address, on one network. Not your wallet, not your accounts, not your other networks. The one you selected when you approved. - The public data at that address: balance, assets, history. All of this is public on the chain already, and anyone could read it without asking you. - The right to put a signature request in front of you. ## Never granted Section titled “Never granted” - Your recovery phrase. - Your private keys. - The ability to move a coin without a fresh approval. - Your other accounts and other networks. - The contents of the pages you visit. The wallet reads the origin the browser reports, not the page. ## The origin is what the browser says it is Section titled “The origin is what the browser says it is” The approval screen shows the origin the browser reports, not a name the page chose for itself. A page can print any brand it likes in its own body. It cannot change the origin line in the wallet. When you are checking whether you are on the real site, that line is the one to read. ## How access ends Section titled “How access ends” You choose an idle window when you connect. Options are 24 hours, 7 days, 30 days, which is the default, or until you disconnect. It is an idle window, not an age limit. Each time you use the site, the window restarts. A site you use every day never expires on its own; a site you tried once in March is gone by April. When the window passes, access ends. The site has to ask again from the beginning, and you get the full approval screen again. ## Ending it yourself Section titled “Ending it yourself” Open Connected sites . You can see every connection, what each one can read, when it was last used, and end any of them, or all of them at once. A site that lost access has to start over. ## What disconnecting does not do Section titled “What disconnecting does not do” Disconnecting stops a site from asking for anything new. It does not: - reverse a transaction you already approved, - revoke a signature you already gave, including a partial signature that someone can still complete (see What a signature authorizes ), - undo an approval on the chain. If you are disconnecting because something went wrong, disconnecting is the second step. The first is If your wallet is compromised . ## Related Section titled “Related” - Connect an application - Manage connections - Provider API Edit page Last updated: Oct 9, 2026 Previous What a signature authorizes Next Backup and recovery ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Approval/components/Connect.tsx, frontend/ui/pages/ConnectedSites Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Inputs, outputs, fees, change | Universe Wallet What a Bitcoin transaction is actually made of, why the fee is not a field you fill in, and why a missing change output is the most expensive thing you can fail to notice. - Universe Wallet - How it works # Inputs, outputs, fees, change You do not have a balance. You have a set of coins, each a fixed amount, each spendable only in full. Every payment consumes some of them entirely and creates new ones. Once you see it this way, most of the surprising behaviour in any Bitcoin wallet stops being surprising. The fee is not entered anywhere. It is the difference between what goes in and what comes out. You influence it by choosing a rate in satoshis per virtual byte, and the wallet computes the amount from the size of the transaction it built. ## The four terms Section titled “The four terms” Input. A coin you already own, being spent. It is consumed whole. A transaction can have many. Output. A new coin being created. One goes to the person you are paying. Usually one comes back to you. Change. The output that comes back to you. It is a real payment, to a real address of yours, and it is where the remainder of your consumed coins ends up. It is not a leftover in an account somewhere. Fee. Whatever the inputs exceed the outputs by. Nobody writes it into the transaction. Whoever mines the block claims it. ## The consequences worth knowing Section titled “The consequences worth knowing” ### Your available balance can be lower than your total Section titled “Your available balance can be lower than your total” Because some coins are held back as protected, and because a coin cannot be split without spending it. See Protected outputs . ### A large payment does not cost a large fee Section titled “A large payment does not cost a large fee” Fees follow size in virtual bytes. A transaction with many inputs is large and therefore expensive, regardless of the amounts involved. Paying from twenty small coins costs much more than paying from one large one. ### A missing change output means you gave the remainder away Section titled “A missing change output means you gave the remainder away” If the review screen shows inputs of 0.0345 BTC, one output of 0.02 BTC, and no change line, the other 0.0145 BTC is the fee. This is the shape of both a bug and an attack. Reject anything you cannot account for. See Review a transaction . ### Dust Section titled “Dust” An output too small to be worth spending later is called dust, and the network will not relay outputs below a threshold. Creating a 200 satoshi change output is not useful: it will cost more than that to spend it. Wallets round it into the fee instead, which is another reason a change line can be absent. ## Where Universe Wallet shows you this Section titled “Where Universe Wallet shows you this” The review screen lists every input and every output, marks which inputs are protected, states the fee once, and shows the resulting net change to your wallet. See Review a transaction for how to read it in order. ## Related Section titled “Related” - Choose a fee - Coin control - Glossary Edit page Last updated: Oct 9, 2026 Previous Address types Next Protected outputs ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/utils/psbt-utils.ts Applicable release Universe Wallet 1.7.5.8 Chain bitcoin Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Protected outputs | Universe Wallet Why part of your balance refuses to spend, what puts a coin into that state, and why a coin the wallet could not check is held back rather than released. - Universe Wallet - How it works # Protected outputs On Bitcoin, an inscription lives inside an ordinary coin. There is no separate container for it. A wallet that treats every coin as plain money can hand your collectible to a miner as change, and that is the single most common way inscriptions are lost. Universe Wallet classifies every coin before it can be selected. Coins that carry something are held back from ordinary payments. Protected value still counts in your total balance. It does not count as available . That gap between the two numbers is the feature working, not a fault. ## What puts a coin into the protected state Section titled “What puts a coin into the protected state” A coin is shown as Protected when it carries any of the following: - an inscription, - an indexed protocol balance, - a rare-satoshi candidate, - a lock you applied yourself. And one more, which is the important one: Unknown is treated as unsafe If the wallet cannot complete the check, because an indexer is unreachable or a lookup timed out, the coin stays protected. It is not released on the assumption that it is probably fine. A wallet that guesses in your favour when it cannot see is a wallet that eventually guesses wrong with something irreplaceable. ## What that means in practice Section titled “What that means in practice” You see Why Total balance higher than available balance Some coins are protected. The difference is exactly the protected amount. A payment says there are not enough funds The available pool is smaller than the amount plus fee, even though the total is larger. More is protected than usual today An indexer may be lagging or unreachable, so coins that are normally clear are being held back. A protected coin holds a very small amount, like 546 satoshis That is normal. Asset-bearing outputs are usually near the dust limit, because the value is what is written on them, not what they hold. ## Spending a protected coin on purpose Section titled “Spending a protected coin on purpose” You can. It is deliberately not on the default path. Moving an artifact uses the flow built for that asset, not the plain send screen, and it asks you to confirm by name before the coin can be selected. Those flows sit behind protocol release gates, so whether they are available in your build depends on that build. See What this release authorizes . If you set the lock yourself, you can remove it yourself. Locks you set are device settings, and they do not travel with your recovery phrase. ## Where to see the list Section titled “Where to see the list” The Locked coins screen lists the coins currently being held back and why. It has no protocol gate, so it is present regardless of what your build authorizes. The Coin health screen shows the overall shape of your coin set, including how much is protected. ## What this does not protect you from Section titled “What this does not protect you from” - Signing a transaction that someone else built. If you approve a PSBT that spends a protected coin, it is spent. Classification informs the review screen; it does not veto your approval. See Review a PSBT . - Assets the wallet cannot recognise. Protection depends on knowing an asset is there. A protocol the wallet does not index cannot be classified, and a coin carrying it can look plain. - Another wallet using the same phrase. Protection is a Universe Wallet behaviour. Import the same phrase into a wallet without it and every coin becomes ordinary money again. ## Related Section titled “Related” - Coin control - Inputs, outputs, fees, change - What a digital artifact is Edit page Last updated: Oct 9, 2026 Previous Inputs, outputs, fees, change Next What a signature authorizes ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path README.md, docs/STORE-LISTING.md Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # What a signature authorizes | Universe Wallet Four kinds of approval, the exact boundary of each, and the one shape of signature that lets a stranger finish the transaction without asking you again. - Universe Wallet - How it works # What a signature authorizes If you read one page here, read this one. Most losses in self-custody are not broken cryptography. They are someone approving a request whose scope they misread. A signature is a scope , not a button. The question is never “do I trust this site” but “what exactly does this signature let anyone do, forever”. ## 1. Connecting a site Section titled “1. Connecting a site” Authorizes: the site to see one address on one network, and to ask you for signatures later. Does not authorize: any movement of funds. Ever. A connection is not a payment approval, and connecting to a hostile site does not by itself cost you anything. Every connection expires on an idle window. See Connection permissions . ## 2. Signing a message Section titled “2. Signing a message” Authorizes: a proof that you control the address. No fee is paid, nothing is broadcast, and no coin can move as a result. Does not authorize: any spend. A message with no on-chain effect can still be a promise Signing text is how sites verify address ownership, and it is also how some off-chain agreements are made. Read the text. If it is unreadable, or it is raw data rather than a sentence, treat that as a reason to refuse, not a reason to hurry. Raw data signing, where the content is not human-readable text, is off by default in Universe Wallet and requires a typed confirmation to enable. That default exists because a blob you cannot read is indistinguishable from a transaction you did not mean to authorize. ## 3. Signing a whole transaction Section titled “3. Signing a whole transaction” Authorizes: exactly the listed inputs becoming exactly the listed outputs, at exactly the stated fee. Change one input, one output, one amount, or the fee, and the signature stops being valid. This is the well-behaved case: what you approved is what can happen, and nothing else. Does not authorize: anything after that transaction. A second payment needs a second approval. Once broadcast and confirmed, it cannot be reversed by you, by Universe, by the recipient, or by a miner. ## 4. Signing part of a transaction Section titled “4. Signing part of a transaction” This is the one that catches people. A signature can commit to only one input and one output, leaving the rest of the transaction open for anyone to fill in. In Bitcoin terms, this is SIGHASH_SINGLE combined with ANYONECANPAY . Authorizes: anyone holding that signed fragment to complete the transaction, on their own terms, at any time, for as long as your coin remains unspent. This is how a fixed-price sale offer works: you sign “my inscription leaves, this payment comes to me”, and a buyer later supplies their own inputs and fees to complete it. That is the intended use, and it is genuinely useful. Cancelling a listing is advisory until the coin moves Removing an offer from a marketplace removes it from that marketplace’s list. It does not revoke the signature. Anyone who kept a copy can still complete it while the coin is unspent. The only real cancellation is to spend the coin yourself, into a transaction you control, so the offer can no longer be completed. ## The questions to ask before approving anything Section titled “The questions to ask before approving anything” - What can this move? Read the impact lines, not the site’s description. - What is left open? If the request does not commit to every input and output, someone else gets to decide the rest. - Is anything marked unknown? A fact the wallet could not read is shown as unknown. See Confidence marks . - Would I be fine if this were completed by the worst possible person, a year from now? For a partial signature, that is the actual question. Rejecting is free, repeatable, and costs you nothing but the time to ask again. ## Related Section titled “Related” - Review a transaction - Review a PSBT - Connection permissions Edit page Last updated: Oct 9, 2026 Previous Protected outputs Next Connection permissions ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Approval/components Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Integrating with the wallet | Universe Wallet How to build an integration that a careful user will approve, what to never ask for, and the failure modes to handle before you ship. - Universe Wallet - Developers # Integrating with the wallet Intended reader: a developer adding Universe Wallet support to a web application. Goal: an integration whose requests a careful user can approve without hesitating. Prerequisites: the extension installed, and a test network to work on. The API reference is on Provider API . This page is about the part the reference cannot tell you: how to build something that does not get rejected, and does not get someone hurt. ## The three rules that come before any code Section titled “The three rules that come before any code” - Request a connection only in response to a direct user action , such as a click on a control you own. Never on page load. A wallet prompt nobody asked for teaches people to dismiss prompts. - Never ask a user for their recovery phrase or private key. No integration needs either, and no legitimate flow collects them. A page that asks is indistinguishable from a phishing page, because it is one. - Signing happens inside the wallet, not in your page. Your application submits a request. The user reads it in the extension and approves or rejects it there. Treat rejection as an ordinary outcome, not an error. ## Build for the review screen, not for your own UI Section titled “Build for the review screen, not for your own UI” The user does not read your page at the moment of decision. They read the wallet’s approval screen, which shows what leaves, what returns, the fee, the origin, and a confidence mark on every interpreted fact. See Review a transaction . That has practical consequences for you: - Make the amounts on your page match the amounts on the approval. If your page says one price and the approval says another, a careful user rejects, and they are right to. - Do not construct requests whose effect the wallet cannot decode. A fact the wallet cannot read is shown as UNKNOWN, and a request with an unknown fact can never read as ready. - Prefer full-transaction signatures. A SIGHASH_SINGLE | ANYONECANPAY request leaves an open offer standing, and a user who understands that will hesitate. If your flow genuinely needs it, say so on your own page, in advance, in plain words. See What a signature authorizes . ## Test what your users will actually hit Section titled “Test what your users will actually hit” Test networks exist for this. See Chains and networks . Handle every one of these before you ship: Situation What to do No wallet installed Detect it and offer the store link. Do not throw. User rejects the request Return the interface to its previous state, silently. It is not an error. Wallet locked The user unlocks and the request continues. Do not resubmit in a loop. Connection expired Ask again from the start. Idle windows expire on purpose. Wrong network Ask the wallet to switch, and handle rejection of that too. Account changed Subscribe to the account-change event. Do not cache an address indefinitely. The operation is not authorized in the user’s build The request fails closed. Show the wallet’s reason rather than a generic failure. See Why an action is unavailable . ## The authorization reality Section titled “The authorization reality” An operation your integration calls may be unavailable in the build your user has, because authorization is attached per build, per protocol, per network, per operation. This is not something you can detect by version number alone, and it is not something you can work around. Design for it: if a protocol call fails closed, surface the wallet’s own reason, and do not present it to the user as your application being broken. See Capability evidence . ## What connecting gets you Section titled “What connecting gets you” One address, on one network, and the right to ask for signatures. It does not get you the user’s other accounts, their other networks, their balances elsewhere, or anything about the page they are on. See Connection permissions . Ask for a connection when you need an address, not before. ## Related Section titled “Related” - Provider API - Connection permissions - Review a PSBT Edit page Last updated: Oct 9, 2026 Previous Diagram conventions Next Provider API ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/content-script, backend/controller Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Machine-readable documentation and MCP | Universe Wallet llms.txt, the JSON catalog, clean Markdown views, and the read-only MCP server for AI clients. - Universe Wallet - Developers # Machine-readable documentation and MCP # Machine-readable documentation and MCP Everything humans read here exists in machine-readable form, generated from the same data and checked against wallet 1.7.5.8. Nothing is summarized by a model on the way through: clients quote the same pages people read. ## Corpus - llms.txt - the shaped index for language models - llms-full.txt - every page as plain text - api/catalog.json - every page with its content hash - api/releases.json - the release catalog - api/capabilities.json - the capability snapshot - api/journeys.json - the journey catalog - markdown/ - a clean Markdown view of every page ## MCP server A read-only Model Context Protocol server serves this corpus. Tools: search_wallet_docs , read_wallet_doc , list_wallet_releases , compare_wallet_releases , get_wallet_capability , list_wallet_protocols , get_wallet_protocol , list_wallet_journeys , read_wallet_journey , read_wallet_safety_checklist , get_provider_method , list_provider_methods . Every result carries its URL, title, release, and content hash. The server exposes no wallet connector, signer, broadcaster, or account lookup, and cannot mutate anything. ### Local stdio server Run from a checkout of this repository (the corpus is generated at build time): node mcp-server/stdio.mjs --corpus https://bitcoinuniverseio.github.io/docs-wallet/api/catalog.json ### Claude Code claude mcp add universe-wallet-docs -- node /path/to/docs-wallet/mcp-server/stdio.mjs ### Cursor and VS Code-compatible clients { "mcpServers": { "universe-wallet-docs": { "command": "node", "args": ["/path/to/docs-wallet/mcp-server/stdio.mjs"] } } } ### Hosted read-only endpoint A Streamable HTTP endpoint serving the same corpus from first-party infrastructure: { "mcpServers": { "universe-wallet-docs": { "url": "https://docs.bitcoinuniverse.io/mcp/wallet" } } } Both transports are one implementation with two adapters, tested with the MCP protocol test suite. The hosted endpoint exposes the same read-only tool set and nothing else. ## Grounding rules the server enforces - Every answer quotes pages; the server never synthesizes capabilities. - Unknown versions are answered as unknown, never mapped to the nearest release. - Capability status travels with every result that involves an operation. - Insufficient evidence returns the closest passages and says so. Questions about integration: start at the integration guide or the Integration Studio . Previous Integration Studio Next Troubleshooting ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Provider API | Universe Wallet The JavaScript provider Universe Wallet injects into pages, with the object name, every method, its real parameters and return type, the event API, and the error codes. - Universe Wallet - Developers # Provider API For developers building web applications that integrate Universe Wallet. Every signature below was read from the extension source at 1.7.5.8. Where the source declares no return type, the runtime shape is given and marked as such. Read Integrating with the wallet first for the rules that come before any code. ## The provider object Section titled “The provider object” With the extension installed , every page gets a provider object. The primary name is window.tapwallet . - if ( typeof window . tapwallet !== ' undefined ' ) { console . log ( ' Universe Wallet is available ' ); } The same object is also defined under nine aliases, all non-writable, all pointing at one proxy: window . tapwallet // primary window . tap_wallet window . TapWallet window . tapWallet window . Tap_Wallet window . universe window . universewallet window . UniverseWallet window . bitcoinuniverse window . bitcoinUniverse The provider does not occupy window.unisat window.unisat is deliberately left alone, because the UniSat extension owns that namespace and may be installed alongside this one. Detecting Universe Wallet through window.unisat will find the wrong wallet, or nothing. Use window.tapwallet . The object carries identity flags you can branch on: isUniverse , isBitcoinUniverse , and isTapWallet are all true ; isUniSat and isUnisat are both false . The namespace string reported by getCapabilities() is bitcoinuniverse . ### Waiting for injection Section titled “Waiting for injection” The content script sets data-tapwallet-injected="true" and data-universe-wallet-injected="true" on the <html> element, and dispatches an initialization event on window for every alias, twice: once immediately and once when initialization completes. function whenWalletReady ( cb ) { if ( window . tapwallet ) return cb ( window . tapwallet ); window . addEventListener ( ' tapwallet#initialized ' , () => cb ( window . tapwallet ) , { once: true }); } cb(window.tapwallet), { once: true });}"> Properties whose names begin with an underscore return undefined through the proxy, apart from the EventEmitter internals. Do not rely on any of them. ## Connecting Section titled “Connecting” Connecting means asking to see the user’s selected account address. It never authorizes spending. Every later transaction or message opens its own approval, and idle connections expire on their own . Call requestAccounts from a control the user clicked. Disable the control while the promise is pending. try { const accounts = await window . tapwallet . requestAccounts (); console . log ( ' connected ' , accounts ); } catch ( e ) { console . log ( ' rejected or unavailable ' , e . code , e . message ); } requestAccounts resolves to a string[] holding one address, or an empty array when no account is available. ## Availability, before anything else Section titled “Availability, before anything else” Most write methods are gated at build time and default to disabled Protocol operations are re-enabled only by a signed authorization attached to a specific build. assertProviderMethodReleaseAuthorized runs as the first middleware on every request, and throws for any method carrying a protocol and operation pair the build did not authorize. In a build with no authorization, only the ungated read methods work: getNetwork , getChain , getAccounts , getPublicKey , getInscriptions , getBalance , getBalanceV2 , getBitcoinUtxos , getVersion , getCapabilities , getFeatures , verifyMessageOfBIP322Simple , requestAccounts , switchNetwork , and switchChain . Everything else, including sendBitcoin , signPsbt , signMessage , and pushTx , can be unavailable in the build your user has. Call getCapabilities() and branch on what it reports rather than assuming. See Capability evidence . const caps = await window . tapwallet . getCapabilities (); // caps.namespace === 'bitcoinuniverse' // caps.capabilitiesVersion === 2 // caps.bitcoin, caps.dogecoin, caps.zcash, caps.atomicals, // caps.protocols, caps.protocolOperations are boolean maps. getFeatures() returns the same object. ## Account and network Section titled “Account and network” ### requestAccounts Section titled “requestAccounts” requestAccounts() Connect the current account. Opens an approval the first time. Returns Promise<string[]> , holding one address, or empty. ### getAccounts Section titled “getAccounts” getAccounts() Returns Promise<string[]> . Empty when not connected or locked. ### disconnect Section titled “disconnect” disconnect() Ends this site’s connection. Returns Promise<undefined> . ### getPublicKey Section titled “getPublicKey” getPublicKey() Returns Promise<string> , the compressed public key of the current account as hex. Returns an empty string when the wallet is locked. ### getNetwork Section titled “getNetwork” getNetwork() Returns Promise<string> . Exactly one of: Value Meaning 'livenet' Bitcoin mainnet 'testnet' Bitcoin Testnet or Testnet4 'unknown' The active chain is Signet, Fractal, Dogecoin, or Zcash This returns a string, never a number 'unknown' is a real return value, not an error. It means the legacy network name cannot describe the active chain. Use getChain() when you need to know which chain the wallet is actually on. const network = await window . tapwallet . getNetwork (); console . log ( network ); // 'livenet' ### switchNetwork Section titled “switchNetwork” switchNetwork(network) Parameters - network string : 'livenet' , 'mainnet' , or 'testnet' . The value 0 is also accepted for mainnet. Returns Promise<string> , the resulting network name, 'livenet' or 'testnet' . Rejects with a message naming the supported networks if the value is not one of them. No approval is shown when the requested network already matches the active one. const network = await window . tapwallet . switchNetwork ( ' livenet ' ); console . log ( network ); // 'livenet' ### getChain Section titled “getChain” getChain() Returns Promise<Object> : - enum string : the chain type, for example BITCOIN_MAINNET - name string : the human label, for example Bitcoin or Bitcoin Testnet4 (Beta) - network string : 'livenet' or 'testnet' ### switchChain Section titled “switchChain” switchChain(chain) Parameters - chain string : one of BITCOIN_MAINNET , BITCOIN_TESTNET , BITCOIN_TESTNET4 , BITCOIN_SIGNET , FRACTAL_BITCOIN_MAINNET , FRACTAL_BITCOIN_TESTNET , DOGECOIN_MAINNET , DOGECOIN_TESTNET , ZCASH_MAINNET , ZCASH_TESTNET . Returns the same object shape as getChain() . ## Balances and holdings Section titled “Balances and holdings” ### getBalance Section titled “getBalance” getBalance() Marked deprecated in the source. Prefer getBalanceV2 . Returns Promise<Object> or null : - confirmed number : confirmed satoshis - unconfirmed number : unconfirmed satoshis - total number : total satoshis ### getBalanceV2 Section titled “getBalanceV2” getBalanceV2() Returns Promise<Object> or null : - available number : satoshis that can fund an ordinary payment - unavailable number : satoshis held back, including protected coins - total number The split matters. See Protected outputs . ### getInscriptions Section titled “getInscriptions” getInscriptions(cursor = 0, size = 20) List the inscriptions of the current account, one page at a time. Parameters - cursor number : where to start. Non-negative integer. Default 0 . - size number : how many to return. Integer from 1 to 100 . Default 20 . Returns Promise<Object> : - total number - list Object[] , each carrying inscriptionId , inscriptionNumber , address , outputValue , content , contentLength , contentType , preview , timestamp , offset , genesisTransaction , output , and location . Returns { list: [], total: 0 } when the wallet is locked. const page = await window . tapwallet . getInscriptions ( 0 , 20 ); console . log ( page . total , page . list . length ); ### getBitcoinUtxos Section titled “getBitcoinUtxos” getBitcoinUtxos(cursor = 0, size = 20) Returns Promise<Array> of unspent outputs for the current account. ## Sending Section titled “Sending” ### sendBitcoin Section titled “sendBitcoin” sendBitcoin(toAddress, satoshis, options?) The user reviews and approves in the wallet before anything is signed or broadcast. Parameters - toAddress string : up to 128 characters - satoshis number : positive integer - options Object , optional: - feeRate number : positive, up to 1000000 - memo string , optional: up to 256 characters - memos string[] , optional: up to 20 entries Returns Promise<string> , the txid. ### sendInscription Section titled “sendInscription” sendInscription(toAddress, inscriptionId, options?) Returns Promise<string> , the txid. ### sendRunes Section titled “sendRunes” sendRunes(toAddress, runeid, amount, options?) amount is a string . Returns Promise<string> , the txid. ### pushTx Section titled “pushTx” pushTx(rawtx) Parameters - rawtx string : the raw transaction hex. Not an object. Returns Promise<string> , the txid. const txid = await window . tapwallet . pushTx ( ' 0200000000010135bd7d... ' ); ## Signing Section titled “Signing” ### signMessage Section titled “signMessage” signMessage(text, type) Parameters - text string : up to 10000 characters - type string : 'ecdsa' or 'bip322-simple' . Anything else throws unsupported message type . type is declared as required The page provider declares type without an optional marker, so pass it explicitly. Any value other than 'bip322-simple' takes the ECDSA path, but relying on that is relying on a fallback. Returns Promise<string> , the signature, base64 encoded. For ECDSA it is the standard 65-byte Bitcoin signed-message form: a one-byte recovery header followed by a 64-byte compact signature. const signature = await window . tapwallet . signMessage ( ' abcdefghijk123456789 ' , ' ecdsa ' ); ### verifyMessageOfBIP322Simple Section titled “verifyMessageOfBIP322Simple” verifyMessageOfBIP322Simple(address, message, signature, network?) Verification without leaving the wallet. This method is public: it needs no connection, no unlock, and no approval, and it is not gated by a release authorization. Parameters - address string : up to 128 characters - message string - signature string : up to 512 characters - network number , optional: 0 for mainnet, 1 for testnet. This is the numeric network type, not the 'livenet' string. Returns Promise<number> : 1 when the signature is valid, 0 when it is not. A number, not a boolean. const valid = await window . tapwallet . verifyMessageOfBIP322Simple ( ' bc1p...redacted ' , ' abcdefghijk123456789 ' , ' AkcwRAIgeHUcjr0jODaR7GMM8cenWnIj0MYdGmmr... ' , ); console . log ( valid === 1 ); There is no provider method for verifying an ECDSA signature Only BIP-322-simple verification is exposed. To verify an 'ecdsa' signature, verify it yourself, preferably on your server, with any general-purpose secp256k1 library. The construction is the standard one: double SHA-256 over the "Bitcoin Signed Message:\n" prefixed and length-delimited message, recovered against the 65-byte base64 signature. Do not install a third-party wallet library to do this. You do not need one, and asking users to trust an extra wallet dependency for a verification step is a poor trade. ### multiSignMessage Section titled “multiSignMessage” multiSignMessage(messages) Parameters - messages Array<{ text: string, type: string }> : 1 to 20 entries Returns Promise<string[]> . Every message in the batch is still a separate commitment. See What a signature authorizes . ### signData Section titled “signData” signData(data, type) Signs data that is not readable text. Returns Promise<string> . Throws unless the user has enabled raw data signing in Advanced settings, which is off by default and requires a typed confirmation. Treat a request for this as unusual and explain to your users, on your own page, why you need it. ## PSBTs Section titled “PSBTs” ### signPsbt Section titled “signPsbt” signPsbt(psbtHex, options?) Signs the inputs that match the current account. Parameters - psbtHex string : hex, or base64. Up to 8 MiB. - options Object , optional: - autoFinalized boolean : whether to finalize after signing. Defaults to true . - approvalAction string , optional: only 'listing' is accepted. - toSignInputs Array , optional, up to 10000 entries: - index number : which input to sign. Non-negative integer, 0 to 10000, unique within the array. - address string : the current account’s address. Supply this or publicKey . - publicKey string : the current account’s compressed public key, as hex. Supply this or address . - sighashTypes number[] , optional: up to 8 entries. - disableTweakSigner boolean , optional: when signing Taproot inputs the tweaked signer is used by default. Enabling this signs with the untweaked key. - useTweakedSigner boolean , optional. - tapLeafHashToSign string , optional: hex, up to 64 characters. - contracts Array , optional: up to 100 entries. Returns Promise<string> , the signed PSBT as hex. address and publicKey are different values, and both are checked exactly address must equal the connected account’s address. publicKey must equal the connected account’s compressed public key hex. Passing an address in the publicKey field throws invalid public key in toSignInput . Supply one or the other, never an address in both. const signed = await window . tapwallet . signPsbt ( ' 70736274ff01007d... ' , { autoFinalized: false , toSignInputs: [ { index: 0 , address: ' tb1q...redacted ' }, { index: 1 , address: ' tb1q...redacted ' , sighashTypes: [ 1 ] }, { index: 2 , publicKey: ' 02062...8779693f ' }, ] , } ); ### signPsbts Section titled “signPsbts” signPsbts(psbtHexs, options?) Parameters - psbtHexs string[] : up to 20 entries, 16 MiB total - options Object[] , optional: a parallel array, up to 20 entries, each the same shape as signPsbt options Returns Promise<string[]> . ### signAndPushPsbt Section titled “signAndPushPsbt” signAndPushPsbt(psbtHex, options?) Returns Promise<Object> : psbtHex , rawtx , and txid . signAndBroadcastPsbt(psbtHex, options?) is an alias for this method. ### pushPsbt Section titled “pushPsbt” pushPsbt(psbtHex) Returns Promise<string> , the txid. ## Protocol methods Section titled “Protocol methods” These carry protocol and operation gates, so they can be unavailable in a build. Check getCapabilities() first. Method Signature inscribeTransfer (ticker: string, amount: string) , returns {inscriptionId, inscriptionNumber, ticker, amount} requestMint (options?: Object) , returns {status, orderId, txid, psbtHex?} requestArc20Mint (options?: Object) , delegates to requestMint isAtomicalsEnabled () , returns boolean getDogecoinMarketplaceAccount () , returns {address, publicKey, network} or null getDogecoinMarketplaceFundingInputs (minimumValueSats: string, maxInputs = 20) signDogecoinMessage (message: string) , returns string signDogecoinMarketplaceAction (preparedAction) getZcashAccount , getZcashBalance () , returns an object or null sendZcashPayment (request) , requires connection, unlock and explicit approval; unavailable in the imported source baseline signZcashTransaction , broadcastZcashTransaction , signZcashMarketListing (request) getVersion () , returns the build version string A method appearing in the generated contract does not establish that it is enabled. In particular, sendZcashPayment remains gated by the exact Zcash payment operation’s release evidence. A submitted payment identifier is not settlement proof. Preserve the original request identity across a lost response and use the wallet’s recorded status before initiating another payment. See Read your activity . ## Events Section titled “Events” The provider extends Node’s EventEmitter , so on , once , off , addListener , removeListener , and removeAllListeners are all available. The listener limit defaults to 100. Events are delivered only after initialization completes. Clean up when your component unmounts, or handlers pile up across renders. Event Payload accountsChanged string[] , the exposed addresses. An empty array on disconnect. networkChanged string , the network name chainChanged the chain object, the same shape getChain() returns connect connection data disconnect , close a provider error object ecosystemChanged ecosystem state const onAccounts = ( accounts ) => { /* re-read state, never cache an address forever */ } ; window . tapwallet . on ( ' accountsChanged ' , onAccounts ); // later window . tapwallet . removeListener ( ' accountsChanged ' , onAccounts ); { /* re-read state, never cache an address forever */ };window.tapwallet.on('accountsChanged', onAccounts);// laterwindow.tapwallet.removeListener('accountsChanged', onAccounts);"> ## Errors Section titled “Errors” Rejections carry { code, message } . Code Meaning When 4001 User rejected the request The user declined or closed the approval. Also raised when a second approval is requested while one is pending, and when the account or signing context changed while a request was in flight. 4100 Unauthorized The site is not connected, or its permission was revoked while the request was pending. 4900 Disconnected The extension context was invalidated, usually by a reload or an update. -32601 Method not found No handler for that method name. -32600 Invalid request A malformed payload. -32603 Internal error An internal rejection. Validation failures surface as plain Error objects with a descriptive message and no code. So does Too many chained approval requests , which is raised above five chained approvals. 4001 is an ordinary outcome A user rejecting a request is not a failure of your integration. Return the interface to its previous state without an error toast, and let them try again. ## Related Section titled “Related” - Integrating with the wallet - Connection permissions - What a signature authorizes Edit page Last updated: Oct 9, 2026 Previous Integrating with the wallet Next Integration Studio ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/content-script/pageProvider/index.ts, backend/background/controller/provider/controller.ts Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-06 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Emergency handbook | Universe Wallet Suspected compromise, phishing, recovery boundaries, and transaction review - designed to work offline once saved. # Emergency handbook # Emergency handbook Checking whether the emergency bundle is saved for offline use… Save emergency guide offline Refresh cached copy Remove cached copy ## How old is this guidance? Documentation snapshot: wallet 1.7.5.8 (source tree, unpublished). Stored release commit: cf0b6d60d00a . When offline, this page shows the date the bundle was cached at the top of every cached page. Old safety guidance must never pose as current: the banner is the difference. ## Printable checklists ### 1 · Suspected compromised wallet - Stop signing and approving anything on the suspect device. - Do not send a "test transaction" from it. - On a clean device, create a fresh wallet and write its phrase on paper. - Move remaining funds and artifacts to the new wallet. - Remove the old wallet from the suspect device and retire the old phrase for life. Full guide ### 2 · Phishing and fake support - Nobody legitimate ever needs your recovery words. Not support, not "validation", not upgrades. - Nobody legitimate needs a test signature, a screen share, or a hurry. - Check the origin on every approval. Look-alike domains are the con. - Download extensions only from the official listing. Full guide ### 3 · Recovery and backup boundaries - Your phrase restores your keys. Anyone holding it holds your money. - Your password unlocks this device only. It cannot restore funds. - Lost password with an intact phrase: recoverable. Lost phrase with a forgotten password: not. Full guide ### 4 · Version identification - Settings → About shows your version. - Store build 1.0.13 (April 2025) differs from the documented 1.7.5.8 source tree. - Where this site and your wallet disagree, your wallet is correct. Full guide ### 5 · Transaction review checklist - Every output accounted for: payment + change + fee. - Change returns to your wallet. A stranger holding your change is theft in progress. - Fee far above the recommended rate: stop and reread. - Unreadable data signatures: treat the length warning as a stop sign. Full guide · Safety Lab ### 6 · Official support and reporting - Documentation issues: docs-wallet issues - Security reports: see the repository's security policy - The wallet will never direct you to a support agent who asks for your phrase. Previous Answer Center Next Payment and asset addresses ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Redirecting to: /docs-wallet/tasks/hardware-wallet Redirecting to: /docs-wallet/tasks/hardware-wallet - Redirecting from /docs-wallet/getting-started/connect-hardware/ to /docs-wallet/tasks/hardware-wallet # Redirecting to: /docs-wallet/start/create-a-wallet Redirecting to: /docs-wallet/start/create-a-wallet - Redirecting from /docs-wallet/getting-started/create-a-wallet/ to /docs-wallet/start/create-a-wallet # Redirecting to: /docs-wallet/start/first-receive Redirecting to: /docs-wallet/start/first-receive - Redirecting from /docs-wallet/getting-started/first-receive/ to /docs-wallet/start/first-receive # Redirecting to: /docs-wallet/start/first-send Redirecting to: /docs-wallet/start/first-send - Redirecting from /docs-wallet/getting-started/first-send/ to /docs-wallet/start/first-send # Redirecting to: /docs-wallet/start/import-a-wallet Redirecting to: /docs-wallet/start/import-a-wallet - Redirecting from /docs-wallet/getting-started/import-a-wallet/ to /docs-wallet/start/import-a-wallet # Redirecting to: /docs-wallet/start/install Redirecting to: /docs-wallet/start/install - Redirecting from /docs-wallet/getting-started/install/ to /docs-wallet/start/install # Frequently asked questions | Universe Wallet Direct answers to the questions people actually ask, including the ones with uncomfortable answers. - Universe Wallet - Help # Frequently asked questions ## Can Universe recover my wallet if I lose the phrase? Section titled “Can Universe recover my wallet if I lose the phrase?” No. Not for anyone, under any circumstances. There is no account, no reset email, and no support override. Anyone offering to do it is arranging a second theft. ## Can Universe reverse a transaction? Section titled “Can Universe reverse a transaction?” No. Nobody can, including miners and the recipient. A confirmed Bitcoin transaction is final. ## Does Universe hold my keys? Section titled “Does Universe hold my keys?” No. They are generated on your device, encrypted with your password, and never leave the extension. ## Why is my available balance lower than my total? Section titled “Why is my available balance lower than my total?” Coins carrying assets, or coins the wallet could not check, are held back from ordinary payments. See Protected outputs . ## Why does a screen say the operation is not available? Section titled “Why does a screen say the operation is not available?” Your build does not carry evidence for that operation. It is not an outage, a permission, or a setting. See Why an action is unavailable . ## How many protocols are supported? Section titled “How many protocols are supported?” The registry holds 42. Universe Wallet 1.7.5.8 authorizes 0 of them. See What this release authorizes . ## Can I speed up a stuck transaction? Section titled “Can I speed up a stuck transaction?” Not from inside Universe Wallet. There is no fee bump, no speed up, and no child-pays-for-parent. You can mark a transaction replaceable when you create it, and the wallet does not give you a way to build the replacement. See Read your activity . ## Can I sign a message of my own? Section titled “Can I sign a message of my own?” No. Message signing appears only as an approval, in response to a request from a connected site. There is no compose-and-sign screen. ## Can I connect a Ledger or Trezor? Section titled “Can I connect a Ledger or Trezor?” No. They appear in the hardware list, disabled, marked coming soon. Keystone is the working integration. See Hardware wallets . ## Which version am I running? Section titled “Which version am I running?” Settings, then About. Read Which version you are running before you compare it to anything on this site, because the published store build predates most of what is documented here. ## Does connecting a site let it spend my coins? Section titled “Does connecting a site let it spend my coins?” No. Connecting lets a site see one address on one network and ask you for signatures. Every signature is approved separately. See Connection permissions . ## I cancelled a listing. Is it really cancelled? Section titled “I cancelled a listing. Is it really cancelled?” Removing a listing removes it from that marketplace. It does not revoke your signature. Anyone holding a copy can still complete it while the coin is unspent. The only certain revocation is to spend the coin yourself. See What a signature authorizes . ## Is my activity private? Section titled “Is my activity private?” No. Chain data is public by nature, and no wallet setting changes that. See Privacy . ## Can I use this on my phone? Section titled “Can I use this on my phone?” No. Browser extensions do not run on mobile Chrome or Safari. ## Does it work in Firefox? Section titled “Does it work in Firefox?” Not as a published extension. Build targets exist in the source tree; no listing exists. ## Why are there no screenshots on this site? Section titled “Why are there no screenshots on this site?” Because there are no real ones to use. The product’s capture harness currently runs the wallet offline, so every screen it captures settles into an empty or error state. Presenting a mock as a real capture would be a false claim, so this site uses hand-authored diagrams and describes interfaces in words instead. See Diagram conventions . ## Will support ever ask for my recovery phrase? Section titled “Will support ever ask for my recovery phrase?” No. Nobody legitimate ever will, in any wallet, for any reason. See Phishing and impostors . Edit page Last updated: Oct 9, 2026 Previous Troubleshooting Next Support and reporting ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/PUBLIC-CAPABILITY-SUMMARY.json Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Support and reporting | Universe Wallet Where to ask a question, where to report a security issue, what to include, and the one thing nobody will ever ask you for. - Universe Wallet - Help # Support and reporting Read this before contacting anyone Nobody will ever ask for your recovery phrase. Not through any channel below, not in a reply, not in a direct message, not to verify your identity, not to fix your wallet. Anyone who asks is committing fraud, no matter how the message is signed. See Phishing and impostors . Support never contacts you first. ## Before you ask Section titled “Before you ask” Most questions have an answer already: - Troubleshooting covers the common failures. - Frequently asked questions covers the common questions. - Known limitations covers the things that are missing on purpose. - Why an action is unavailable covers “the screen says it is not available”. ## Documentation problems Section titled “Documentation problems” If a page here is wrong, unclear, or missing something, that is a defect worth reporting. - Open an issue on docs-wallet - Or use the edit link at the bottom of any page to propose the fix directly. An undocumented limitation is treated as a bug in the documentation, not as an acceptable gap. ## Product problems Section titled “Product problems” For behaviour that does not match this documentation, or a screen that is broken: - Open an issue on the wallet repository Include: - your wallet version, from Settings , then About ; - your browser and its version; - the chain and network you were on; - what you expected and what happened; - a transaction id, if there is one. Transaction ids are public and safe to share. Never include your recovery phrase, a private key, a screenshot showing either, or a screenshot of a balance you would rather not publish. ## Security vulnerabilities Section titled “Security vulnerabilities” Report privately, not in a public issue: legal@bitcoinuniverse.io Include enough detail to reproduce, the versions affected, and what an attacker could achieve. Please allow time for a fix before publishing. ## Lost funds Section titled “Lost funds” There is no channel that can recover them. This is not a policy that can be appealed; it is a consequence of self-custody. See If your wallet is compromised for what can still be done, and act quickly if your phrase may have been exposed. Be aware that people who report losses publicly are contacted immediately by recovery scams. Every one of them is fraudulent. ## Where the source lives Section titled “Where the source lives” - Product: bitcoinuniverseio/wallet - This documentation: bitcoinuniverseio/docs-wallet - Every Bitcoin Universe component: docs.bitcoinuniverse.io Edit page Last updated: Oct 9, 2026 Previous Frequently asked questions ## Where this page comes from Owning repository bitcoinuniverseio/docs-wallet Source path . Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Troubleshooting | Universe Wallet The failures people actually hit, what each one means about your funds, and what to do about it. - Universe Wallet - Help # Troubleshooting The reassuring part first Almost nothing in this list means your funds are at risk. Your coins are on the chain, not in the extension, and your keys come back from your recovery phrase. The exceptions are called out explicitly. ## The wallet will not open, or the popup is blank Section titled “The wallet will not open, or the popup is blank” Usually a stalled extension service worker. - Close the popup and reopen it from your pinned toolbar icon. - Open the wallet in a full tab or the side panel instead. - Reload the extension from the browser’s extension page. - Restart the browser. Your funds are fine. This is a browser process problem, not a wallet problem. ## Balance shows zero after a restore Section titled “Balance shows zero after a restore” Almost always the address type or derivation path, not the phrase. - Try each address type: Native SegWit, Taproot, Nested SegWit, Legacy. See Address types . - If you imported from another wallet, use its preset. See Import an existing wallet . - If you used a BIP-39 passphrase, enter it. Without it you have a different wallet entirely. - Check an address you know is yours appears somewhere in the restored wallet. ## Available balance is lower than the total Section titled “Available balance is lower than the total” Working as intended. Some coins are protected and cannot fund a plain payment. Open the locked coins screen to see which, and why. See Protected outputs . If more is protected than usual, an indexer may be lagging or unreachable, and coins that are normally clear are being held back because unknown is treated as unsafe. ## A screen says the operation is not available in this build Section titled “A screen says the operation is not available in this build” Not an outage and not a setting. Your build does not carry evidence for that operation. Nothing local changes it. See Why an action is unavailable . ## A transaction has been pending for hours Section titled “A transaction has been pending for hours” The fee rate was below what blocks are currently clearing. There is no fee bump in this wallet Universe Wallet 1.7.5.8 has no fee bump, no speed up, and no child-pays-for-parent. Your options are to wait, or, if you marked the transaction replaceable when you created it, to build a replacement using separate software. A transaction that is never mined is eventually dropped by nodes and the coins become spendable again, with no fixed timetable. ## Assets do not appear, but the balance does Section titled “Assets do not appear, but the balance does” Asset data comes from indexers, which read the chain and decide what a transaction meant. They can lag behind confirmations. - Pull down on the home screen to force a refresh. - Check whether the protocol is one your build can read at all. See What this release authorizes . - Look for a wallet API unreachable notice, which appears only after a health check failed and retries every minute. ## An image will not load Section titled “An image will not load” A tile reading media unavailable means every source for that item failed. Other tiles keep loading. Originals stay exact on chain. See Media and large portfolios . ## A connected site does not work Section titled “A connected site does not work” - Check it appears under Connected sites . If the site claims you are connected and the wallet does not list it, the page is faking that state. Leave. - Check you are on the network the connection was granted for. A connection covers one address on one network. - Disconnect and reconnect. - Reload the page. ## The approval window did not appear Section titled “The approval window did not appear” The extension service worker may be asleep, or the window opened behind your browser. - Check for another browser window. - Open the extension from your toolbar, then retry the action on the site. ## An approval says Request replaced Section titled “An approval says Request replaced” The request changed after you looked at it, so the wallet refused rather than signing. This is the protection working. Do not retry blindly: refresh the site’s state first, then start the action again, and read the new request carefully. ## You forgot your password Section titled “You forgot your password” Not recoverable, and not fatal. Reinstall the extension and restore from your recovery phrase. See Backup and recovery . ## Coins moved and you did not authorize it Section titled “Coins moved and you did not authorize it” Stop reading this page. Go to If your wallet is compromised . Speed matters more than diagnosis. ## Still stuck Section titled “Still stuck” Support and reporting . Nobody there will ever ask for your recovery phrase. Edit page Last updated: Oct 9, 2026 Previous Machine-readable docs and MCP Next Frequently asked questions ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/ROUTE-INVENTORY.md Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Universe Wallet documentation | Universe Wallet How to hold, receive, send, and protect Bitcoin digital artifacts in Universe Wallet, the self-custody browser wallet for Bitcoin, Dogecoin, Zcash, and Fractal Bitcoin. # A wallet you can read before you sign it Universe Wallet is a self-custody browser extension for Bitcoin, Dogecoin, Zcash, and Fractal Bitcoin. It keeps coins that carry digital artifacts out of ordinary payments, and it puts a plain-language account of what you are about to authorize in front of every signature. Start here Detect my wallet version Guided journeys Wallet 1.7.5.8 · unpublished bitcoin dogecoin zcash 0 of 42 protocols authorize operations in the documented source tree. Every write action fails closed. Enlarge Home with a populated portfolio - Home answered from the synthetic portfolio fixture: real balance anatomy, ownership line, and protected-output summary with real numbers. (dark theme, 400px, wallet 1.7.5.8) Home with a populated portfolio - wallet 1.7.5.8 Close ## Read this before you trust anything else on this site The build published on the Chrome Web Store is 1.0.13, from 15 April 2025 . This documentation is written against the 1.7.5.8 source tree, which has not been submitted or published. If you installed from the store, you are running the older build, and screens described here may not exist in it. In 1.7.5.8 as committed, 0 of 42 protocols authorize any operation. Nothing on this site should be read as a promise that a protocol action will work in your build. The screen in your own wallet is the answer. The full version and release position · Release notes My wallet may be compromised Read the emergency steps now. No download, no sign-in, works offline once saved. ## What do you need to do? - Install the wallet From the real listing, verified - Receive Your address, safely shared - Send or check sending Including when a build cannot send - Review before you sign Read approvals like contracts - Protected outputs Why part of the balance holds back - Connect an application What a connection grants - Developer integration Simulated provider, generated contract - Emergency help Works offline once saved ## Who are you? - New user Installing and first steps - Wallet user Everyday tasks and safety - Developer Integrate with the provider - Emergency Something may be wrong ## Guided journeys Step-by-step walkthroughs with checkpoints, recovery paths, and progress that stays in this browser. Lifecycle Experimental Documented version 1.7.5.8 Published version 1.0.13 Chains Bitcoin, Dogecoin, Zcash, Fractal Custody Yours alone ## What this documentation is for Section titled “What this documentation is for” You are holding your own keys. That means no company can move your money, and equally that no company can give it back. Every page here is written so that believing it cannot cost you anything: where a capability could not be verified in the wallet’s source, this site says it is not available rather than describing how it might work. - ### Install and set up Which browsers work, where the real extension lives, and how to create or import a wallet without losing it a week later. - ### What a signature authorizes The single most valuable page here. Four kinds of approval, and the exact boundary of each one. - ### Protected outputs Why some of your balance will not spend, and why that is the feature rather than the fault. - ### Review before you sign How to read the approval screen top to bottom, and which line to check when you are in a hurry. - ### Backup and recovery Which loss your recovery phrase covers, which it does not, and the one situation with no way back. - ### If something is wrong What to do first when you think your phrase was seen, a signature went wrong, or coins moved without you. ## Where things live Section titled “Where things live” - ### Supported features What is present, what is behind a release gate, and what does not exist at all. - ### Screen Atlas Every verified screenshot of the wallet, filterable and deep-linkable, with its release and provenance. - ### Safe simulator The real wallet interface on fixture data: no keys, no network, nothing that can sign. - ### Transaction Safety Lab Study real approval scenarios - fees, change, protected outputs - without signing anything. - ### Protocol registry All 42 protocols, their chains, their intended operations, and their authorization state. - ### Known limitations Every limit we can state plainly, including the ones that are inconvenient to admit. - ### Provider API For application developers integrating a connect and sign flow with the extension. - ### Troubleshooting The failures people actually hit, and what each one means about your funds. - ### Support and security reporting Where to ask, where to report a vulnerability, and what nobody will ever ask you for. ## Related Section titled “Related” - Product source: bitcoinuniverseio/wallet - Documentation source: bitcoinuniverseio/docs-wallet - Release candidates: wallet releases - Every Bitcoin Universe component: docs.bitcoinuniverse.io - Report a documentation error: docs-wallet issues # Respond to a suspected compromised wallet | Universe Wallet You contained the incident and moved remaining funds to fresh keys in the right order. # Respond to a suspected compromised wallet ← All journeys # Respond to a suspected compromised wallet About 30 minutes Irreversible if wrong Wallet 1.7.5.8 · unpublished Outcome: You contained the incident and moved remaining funds to fresh keys in the right order. Completion looks like: Any remaining funds live under a new phrase that no suspect device or person has seen. If something goes wrong: Speed matters more than neatness. You can clean up after the money is safe. ## All steps - ### Stop using the suspect wallet You are trying to Prevent further exposure. You should see Nothing new is signed or approved. You do Stop. Do not sign anything more, do not 'test' the wallet with small sends to check it. Before you continue, check You accept that anything the suspect device can see may already be known. What can go wrong The 'send a small test amount' reflex from compromised devices funds the attacker. Reversible? Yes. - ### Prepare fresh keys on a clean device You are trying to Create a new wallet where the compromise cannot see it. You should see A new phrase exists on paper, created on a device you trust. You do Install the wallet on a clean device or profile and create a new wallet. Before you continue, check The new phrase never touches the suspect device in any form: no photo, no note, no cloud. What can go wrong Moving funds to keys the suspect device generated (or its clipboard saw) is not an escape. Reversible? No. Read twice. - ### Move funds to the new wallet You are trying to Transfer remaining value to fresh keys. You should see Sends complete from the old wallet to the new address. You do Send everything worth keeping. Artifacts too: a moved inscription leaves the compromised keys. Before you continue, check Balance shows zero (or the amount you chose to abandon) on the old wallet. What can go wrong Leaving 'just the cheap artifacts' leaves a trail and a hook for follow-up scams. Reversible? No. Read twice. Not available here: If your build authorizes no sending, sweeping from it is impossible by design: use another wallet you control that holds the same keys, or accept the exposure and treat all funds as at risk. - ### Retire the old phrase You are trying to Make sure the old keys are never funded again. You should see The old phrase is out of circulation. You do Remove the wallet from the suspect device. Mark the paper phrase as burned. Before you continue, check No service, subscription, or payment card still points at the old address. What can go wrong Reusing a leaked phrase 'one more time' is how round-two losses happen. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Connect to a site and review requested access | Universe Wallet You can connect a site deliberately and read what the connection actually grants. # Connect to a site and review requested access ← All journeys # Connect to a site and review requested access About 8 minutes Check before you act Wallet 1.7.5.8 · unpublished Outcome: You can connect a site deliberately and read what the connection actually grants. Before you start: A site you have decided to trust Completion looks like: The site shows as connected in the wallet, and you can name what it may and may not do. If something goes wrong: Disconnecting ends access instantly. Connections grant identity visibility, never spending on their own. ## All steps - ### Start the connection from the site You are trying to Trigger the wallet's connection approval. You should see The wallet opens an approval naming the site's origin. You do Click the site's Connect button. Before you continue, check Read the origin in the approval. example-site.test-style names or look-alike domains mean close it. What can go wrong Connecting on a phishing page exposes your account identity to attackers, who then tailor the scam. Reversible? Yes. - ### Read the request You are trying to Know what access is asked. You should see The approval states the account access requested. You do Approve or reject. Before you continue, check A connection shows your account to the site. It does not authorize spending; signatures are separate approvals. What can go wrong Approving unknown origins trains you to click through approvals, which is the habit scams harvest. Reversible? Yes. - ### Know the unverified-origin gate You are trying to Recognize the state the wallet shows when it cannot verify a site. You should see A full gate: 'Unable to verify this site', with no approve control. You do Nothing to click. Close it. Before you continue, check The gate appears when the wallet's site check cannot complete. It fails closed on purpose. What can go wrong No third party can legitimately 'unlock' this gate. Instructions claiming to are the scam. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Create a wallet and secure its recovery material | Universe Wallet A new wallet exists, its recovery phrase is backed up offline, and the backup status says so. # Create a wallet and secure its recovery material ← All journeys # Create a wallet and secure its recovery material About 15 minutes Irreversible if wrong Wallet 1.7.5.8 · unpublished Outcome: A new wallet exists, its recovery phrase is backed up offline, and the backup status says so. Before you start: A private space where no camera can see your screen Completion looks like: Settings shows the wallet backed up, and the phrase exists only offline in your keeping. If something goes wrong: Until you send funds in, everything here is re-doable. Lose the phrase after funding and the money is gone; there is no reset. ## All steps - ### Create the device password You are trying to Set the password that unlocks this wallet on this device. You should see Two password fields and a Continue control. You do Enter a strong password twice and continue. Before you continue, check You understand this password unlocks this device only. It is not the recovery phrase and cannot restore funds. What can go wrong A forgotten password with no phrase means reinstalling from scratch. The phrase is the real key. Reversible? No. Read twice. - ### Choose the address type You are trying to Pick the address model for the wallet. You should see A list of address type cards; Continue stays disabled until a scan finishes. You do Keep the default unless you have a specific reason. Continue. Before you continue, check The default covers most users. Changing it later means recovery procedures. What can go wrong Importing into a mismatched address type makes balances appear missing. They are on the other path. Reversible? No. Read twice. - ### Write the recovery phrase offline You are trying to Capture the 12 words where no camera or clipboard can reach them. You should see The phrase is shown once, masked by secure input. You do Write the words on paper in order. Verify by re-entering when asked. Before you continue, check Words exist on paper only. Never photographed, never typed into anything networked, never clipped. What can go wrong A phrase that touched a phone camera, cloud note, or password manager sync is a leaked key waiting to be used. Reversible? No. Read twice. - ### Confirm backup status You are trying to The wallet records that the backup step is done. You should see Home shows the wallet; Settings shows backup status. You do Open Settings and confirm the backup entry reflects your paper copy. Before you continue, check Settings is the source of truth for backup state inside the wallet. What can go wrong Dismissing the backup reminder without writing the phrase is the most common permanent-loss story. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Choose between creating and importing | Universe Wallet You know which onboarding path matches your situation before any key exists. # Choose between creating and importing ← All journeys # Choose between creating and importing About 4 minutes Standard care Wallet 1.7.5.8 · unpublished Outcome: You know which onboarding path matches your situation before any key exists. Before you start: The wallet installed Completion looks like: You can say which path applies to you and why. If something goes wrong: Choosing wrong here costs nothing; neither path creates anything until you complete it. ## All steps - ### Meet the welcome screen You are trying to See the two paths. You should see The welcome screen offers creating a new wallet or importing one. You do Read both options. Do not decide from habit. Before you continue, check You know whether you have ever held recovery material for a Universe-compatible wallet before. What can go wrong Importing a phrase you also use in another active wallet splits custody between devices. Plan for one home per phrase. Reversible? Yes. - ### Decide You are trying to Pick the honest path. You should see Clear next screen for the chosen path. You do New keys: create. Existing keys: import. Before you continue, check Create for a fresh start; import only for phrase you already control and have secured. What can go wrong Restoring from a phrase you never wrote down yourself (for example one someone gave you) hands them your money. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Complete a first developer connection using the simulated provider | Universe Wallet A working integration path: detect, connect, read capabilities, handle rejection - all against the simulated provider, with a downloadable starter. # Complete a first developer connection using the simulated provider ← All journeys # Complete a first developer connection using the simulated provider About 20 minutes Standard care Wallet 1.7.5.8 · unpublished Outcome: A working integration path: detect, connect, read capabilities, handle rejection - all against the simulated provider, with a downloadable starter. Before you start: Basic JavaScript Completion looks like: Your code detects the provider, handles connection and rejection, and renders unavailable states from capabilities. If something goes wrong: Simulation only; no wallet is touched, nothing to recover. ## All steps - ### Detect the provider You are trying to Find the wallet's injected namespace. You should see Provider aliases are known: universe, tapwallet, and variants. You do Check for window.universe in the Integration Studio doctor or your code. Before you continue, check Detection says nothing about connection. It only found a candidate provider. What can go wrong Assuming detection implies consent leads to connecting without asking. Reversible? Yes. - ### Simulate connect and rejection You are trying to See both outcomes. You should see The studio's fake provider answers requestAccounts with a simulated account, or a rejection. You do Run requestAccounts in the success and rejection scenarios. Before you continue, check Rejection is a normal state your UI must render, not an exception to swallow. What can go wrong Auto-retrying connection prompts train users to approve blindly. Reversible? Yes. - ### Read capabilities and render unavailable states You are trying to Gate every feature on what the wallet reports. You should see getCapabilities reports this release authorizes no protocol operations. You do Call getCapabilities in the simulation and render the unavailable branch. Before you continue, check Your UI shows the unavailable state as a first-class outcome, not a disabled button. What can go wrong Promising a send the wallet refuses is a broken product and a support fire. Reversible? Yes. - ### Download the starter and keep the loop You are trying to Leave with runnable code. You should see A minimal starter reflecting the contract. You do Download it from the studio and wire it into your app. Before you continue, check The starter runs without any wallet installed. What can go wrong Testing only against a real wallet hides the refusal paths your users will meet. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Save the emergency handbook for offline use | Universe Wallet The emergency pages work with no connectivity, and you know how old the cached guidance is. # Save the emergency handbook for offline use ← All journeys # Save the emergency handbook for offline use About 3 minutes Standard care Wallet 1.7.5.8 · unpublished Outcome: The emergency pages work with no connectivity, and you know how old the cached guidance is. Before you start: One visit to this site with connectivity Completion looks like: The offline banner shows the snapshot date and the emergency pages open with no network. If something goes wrong: Saving offline changes nothing; it caches public pages only. ## All steps - ### Save the emergency guide You are trying to Cache the emergency bundle. You should see A confirmation states what was saved and when. You do Press 'Save emergency guide offline' on the emergency page. Before you continue, check The page shows the documentation snapshot version and cached date. What can go wrong A cached page without a visible date invites stale guidance to pose as current. Reversible? Yes. - ### Verify it opens with no network You are trying to Prove it works before you need it. You should see The pages open in airplane mode with their offline banner. You do Disconnect and reload the emergency page. Before you continue, check The offline banner names the snapshot age. What can go wrong Never test this during an actual emergency. Rehearse now. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Identify the installed wallet and the right documentation release | Universe Wallet You know exactly which build you are running and which parts of this site describe it. # Identify the installed wallet and the right documentation release ← All journeys # Identify the installed wallet and the right documentation release About 5 minutes Standard care Wallet 1.7.5.8 · unpublished Outcome: You know exactly which build you are running and which parts of this site describe it. Completion looks like: You can state your wallet version and know whether this site's pages describe it. If something goes wrong: Nothing in this journey changes your wallet. Closing the page at any point loses nothing. ## All steps - ### Open the wallet and its settings You are trying to Reach the wallet's About or Settings area, where the version is shown. You should see The wallet opens. Settings lists backup status, security, and About entries. You do Click the wallet icon, then open Settings. Before you continue, check You can see the settings list. If the wallet asks for a password, that is the unlock screen, not settings; unlock first. What can go wrong If no wallet icon exists in the browser, the extension is not installed. That is a different journey. Reversible? Yes. - ### Read the version number You are trying to Find the exact version string. You should see A version like 1.0.13 or 1.7.5.8 is displayed. You do Open About (or the version row) and note the number. Before you continue, check You wrote down the exact version, not a date or a build channel. What can go wrong Some builds show the version only in the extension's detail page (browser extensions page). Both numbers are the same. Reversible? Yes. Branch: Version 1.0.13 is the published store build from April 2025. Screens on this site may not exist in it. - ### Or use Detect my wallet You are trying to Let this site read the version for you without you touching settings. You should see The header control reports the detected version, or says none was found. You do Click 'Detect my wallet' in this site's header. Only the version is read. Before you continue, check The control names exactly what was detected and never asks for accounts or addresses. What can go wrong An unknown version is labeled unknown. This site never guesses the nearest release. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Import a wallet safely | Universe Wallet Existing keys are restored into this wallet without the phrase touching anything networked. # Import a wallet safely ← All journeys # Import a wallet safely About 10 minutes Irreversible if wrong Wallet 1.7.5.8 · unpublished Outcome: Existing keys are restored into this wallet without the phrase touching anything networked. Before you start: Your recovery phrase or private key, already written down Completion looks like: The restored wallet shows the expected account and balances (or an empty account for a fresh phrase). If something goes wrong: Import copies; it does not move. The original phrase keeps working and must stay protected. ## All steps - ### Choose the import source You are trying to Select where the keys come from. You should see A list of sources as selectable cards. You do Pick the source matching your phrase (for example a 12-word Universe-compatible wallet). Before you continue, check The source card names the wallet family the phrase belongs to. What can go wrong Wrong source means empty balances. Nothing is lost; redo with the right source. Reversible? Yes. - ### Enter the phrase You are trying to Restore keys from your offline copy. You should see A grid of twelve masked inputs. You do Type words from paper. Keep secure input on. Before you continue, check The words came from paper, not from a file, a photo, or a message someone sent you. What can go wrong A phrase someone gave you 'to import' is their lever on your money. Import only phrases you generated. Reversible? No. Read twice. - ### Verify what was restored You are trying to Confirm the account and address type match your old wallet. You should see Home shows the restored account. You do Check the receive address against the old wallet's address where possible. Before you continue, check Address type mismatch is the usual cause of 'my funds are gone' after import. They are on another derivation path. What can go wrong If balances look missing, stop sending. Recheck the address type before anything else. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Guided journeys | Universe Wallet Step-by-step Universe Wallet walkthroughs with checkpoints, recovery paths, and progress that stays in your browser. # Guided journeys # Guided journeys Every journey is a sequence of steps that tells you what you are trying to achieve, what you should see, what to do, what to check, what can go wrong, and whether the step is reversible. Progress is stored only in this browser. Journey data was verified against the release shown on each card. All New user Wallet user Developer Emergency - ### Identify the installed wallet and the right documentation release You know exactly which build you are running and which parts of this site describe it. About 5 minutes · 3 steps Standard care Wallet 1.7.5.8 - ### Install and verify the authentic extension The wallet is installed from a real source and you know how to check it. About 10 minutes · 3 steps Check before you act Wallet 1.7.5.8 - ### Choose between creating and importing You know which onboarding path matches your situation before any key exists. About 4 minutes · 2 steps Standard care Wallet 1.7.5.8 - ### Create a wallet and secure its recovery material A new wallet exists, its recovery phrase is backed up offline, and the backup status says so. About 15 minutes · 4 steps Irreversible if wrong Wallet 1.7.5.8 - ### Import a wallet safely Existing keys are restored into this wallet without the phrase touching anything networked. About 10 minutes · 3 steps Irreversible if wrong Wallet 1.7.5.8 - ### Receive funds for the first time You requested your first payment to an address you verified in your own wallet. About 8 minutes · 3 steps Check before you act Wallet 1.7.5.8 - ### Send funds safely You know how a safe send flows, and whether your build can send at all. About 12 minutes · 4 steps Irreversible if wrong Wallet 1.7.5.8 - ### Understand available, unavailable, and protected balance You can explain why the wallet may show more wealth than spendable funds. About 6 minutes · 2 steps Standard care Wallet 1.7.5.8 - ### Connect to a site and review requested access You can connect a site deliberately and read what the connection actually grants. About 8 minutes · 3 steps Check before you act Wallet 1.7.5.8 - ### Review a transaction or PSBT before signing You can read a transaction review or PSBT screen and sign only what you verified. About 10 minutes · 3 steps Irreversible if wrong Wallet 1.7.5.8 - ### Switch chain or network safely You can move the wallet between chains and test networks without losing track of where money applies. About 6 minutes · 2 steps Check before you act Wallet 1.7.5.8 - ### Inspect transaction history and confirmation state You can read your activity list and know what 'confirmed' means before you rely on a payment. About 5 minutes · 2 steps Standard care Wallet 1.7.5.8 - ### Respond to a suspected compromised wallet You contained the incident and moved remaining funds to fresh keys in the right order. About 30 minutes · 4 steps Irreversible if wrong Wallet 1.7.5.8 - ### Complete a first developer connection using the simulated provider A working integration path: detect, connect, read capabilities, handle rejection - all against the simulated provider, with a downloadable starter. About 20 minutes · 4 steps Standard care Wallet 1.7.5.8 - ### Save the emergency handbook for offline use The emergency pages work with no connectivity, and you know how old the cached guidance is. About 3 minutes · 2 steps Standard care Wallet 1.7.5.8 - ### Recognize fake support and phishing You can name the moves impostors use and the rule that defeats all of them. About 7 minutes · 2 steps Check before you act Wallet 1.7.5.8 Previous Send for the first time Next Safe simulator ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Inspect transaction history and confirmation state | Universe Wallet You can read your activity list and know what 'confirmed' means before you rely on a payment. # Inspect transaction history and confirmation state ← All journeys # Inspect transaction history and confirmation state About 5 minutes Standard care Wallet 1.7.5.8 · unpublished Outcome: You can read your activity list and know what 'confirmed' means before you rely on a payment. Completion looks like: You can find a transaction's confirmation count and state what it implies. If something goes wrong: Reading only. ## All steps - ### Open activity You are trying to See the list. You should see Transactions with direction, amount, and state. Offline builds show an explicit load failure with retry. You do Open Activity. Before you continue, check An offline error with a retry control is the honest state; an always-empty list would be a lie. What can go wrong Loading failures resolve when connectivity returns. Retry, do not re-import. Reversible? Yes. - ### Read confirmation state You are trying to Know how settled a payment is. You should see Each transaction shows its confirmations (or pending). You do Open a transaction and read its state. Before you continue, check Pending means reversible by the sender; confirmed means it is in the chain and settling. What can go wrong Shipping goods for a pending payment is trusting an unconfirmed promise. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Install and verify the authentic extension | Universe Wallet The wallet is installed from a real source and you know how to check it. # Install and verify the authentic extension ← All journeys # Install and verify the authentic extension About 10 minutes Check before you act Wallet 1.7.5.8 · unpublished Outcome: The wallet is installed from a real source and you know how to check it. Before you start: A Chrome-family browser Completion looks like: The extension is installed from the Chrome Web Store listing and its version is known. If something goes wrong: An extension can be removed in the browser's extensions page at any time. Installation changes nothing on chain. ## All steps - ### Open the official store listing You are trying to Install from the publisher's listing, not a copy. You should see The Chrome Web Store opens on the Universe Wallet listing. You do Use the install link from this site's install page or the official site. Check the publisher name. Before you continue, check The publisher and item identifier match the official site. Fake wallets live on near-identical URLs. What can go wrong A listing with a different publisher, or any direct ZIP from chat or search ads, is the classic phishing pattern. Reversible? Yes. - ### Add the extension You are trying to Complete the browser install. You should see The browser asks to confirm adding the extension. You do Confirm. Pin the icon if you want it visible. Before you continue, check Only the permissions the browser shows should appear. Nothing here should ask for your recovery phrase. What can go wrong No real wallet ever asks for existing recovery words during install. A page that does is an impostor. Reversible? Yes. - ### Verify what you installed You are trying to Know the version you actually have. You should see The wallet opens on its welcome or unlock screen. You do Open settings and read the version, or use Detect my wallet here. Before you continue, check You know the version and which parts of this site describe it. What can go wrong If the wallet fails to open, remove it and reinstall from the listing; do not hunt for the missing wallet on search engines. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Recognize fake support and phishing | Universe Wallet You can name the moves impostors use and the rule that defeats all of them. # Recognize fake support and phishing ← All journeys # Recognize fake support and phishing About 7 minutes Check before you act Wallet 1.7.5.8 · unpublished Outcome: You can name the moves impostors use and the rule that defeats all of them. Completion looks like: You can state the rule: nobody legitimate ever needs your recovery words. If something goes wrong: Reading only. ## All steps - ### Learn the standard moves You are trying to Recognize the script. You should see This page's examples. You do Read the phishing examples: fake support, urgent upgrades, 'validation' requests, look-alike extensions. Before you continue, check All of them end the same way: they want the words, a signature, or a screen share. What can go wrong Urgency is the tell. Real infrastructure problems are announced calmly, not delivered as urgent private messages. Reversible? Yes. - ### Hold the one rule You are trying to One sentence beats every script. You should see Certainty. You do Say it out loud: nobody legitimate ever needs my recovery words, my seed, my screen, or a 'test' signature. Before you continue, check You would refuse a support agent asking for any of those, regardless of urgency or authority. What can go wrong Every exception you allow becomes the scam that works on you. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Receive funds for the first time | Universe Wallet You requested your first payment to an address you verified in your own wallet. # Receive funds for the first time ← All journeys # Receive funds for the first time About 8 minutes Check before you act Wallet 1.7.5.8 · unpublished Outcome: You requested your first payment to an address you verified in your own wallet. Before you start: A wallet created or imported Completion looks like: The payment appears in activity with its confirmation state. If something goes wrong: Receiving is reversible by simply sending onward. Nothing broadcast here spends your funds. ## All steps - ### Open Receive You are trying to Get your receiving address. You should see The receive screen reports it is ready to receive. You do Open Receive from home. Before you continue, check The network shown in the header matches the network the payer expects. Testnet coins and mainnet coins are not interchangeable. What can go wrong Sending mainnet funds to a testnet address loses them. Read the network label. Reversible? Yes. - ### Share the address You are trying to Give the payer your address or QR. You should see An address string and a QR code. You do Copy, or show the QR, or request via a payment name if configured. Before you continue, check Paste-back check: paste the address where you will send it to yourself and compare the first and last 6 characters. What can go wrong Clipboard malware swaps addresses. The paste-back check defeats the common ones. Reversible? Yes. - ### Watch it arrive You are trying to See the payment and its confirmation state. You should see Activity lists the incoming payment; confirmations count up. You do Open Activity. Nothing else to do. Before you continue, check A payment is spendable per the wallet's confirmation policy; large payments deserve more confirmations before you ship goods. What can go wrong If nothing appears, verify the address the payer actually used. A wrong network or old address is the usual cause. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Review a transaction or PSBT before signing | Universe Wallet You can read a transaction review or PSBT screen and sign only what you verified. # Review a transaction or PSBT before signing ← All journeys # Review a transaction or PSBT before signing About 10 minutes Irreversible if wrong Wallet 1.7.5.8 · unpublished Outcome: You can read a transaction review or PSBT screen and sign only what you verified. Completion looks like: You can name what a signature commits to before any approval. If something goes wrong: Refusing is always available and always safe. No signature, no consequence. ## All steps - ### Know your build's signing availability You are trying to Know whether this release signs at all. You should see This source tree authorizes no signing operation; provider calls refuse before any approval. You do Check the capability status for your release. Before you continue, check A refusal is the gate, not an error to work around. What can go wrong Workarounds 'to unlock signing' are always scams. Reversible? Yes. Not available here: No signing operation is authorized in this source tree, so the approval-walk steps are educational until a release ships them. - ### Read the transaction anatomy You are trying to Inputs, outputs, fee, change: know what each means. You should see The review shows money in, money out, the fee, and change returning to you. You do Study the anatomy in the Safety Lab before you meet it live. Before you continue, check You can say which outputs are yours and which leave, for any transaction shown. What can go wrong The largest output not going to you is the classic theft shape. Reversible? Yes. - ### Sign or decline You are trying to Commit only to what you read. You should see Approval signs exactly the displayed transaction. You do Approve if every line checks; decline otherwise. Before you continue, check Declining costs nothing, ever. What can go wrong Signing unreadable data (length warnings) commits you to something you never saw. Reversible? No. Read twice. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Send funds safely | Universe Wallet You know how a safe send flows, and whether your build can send at all. # Send funds safely ← All journeys # Send funds safely About 12 minutes Irreversible if wrong Wallet 1.7.5.8 · unpublished Outcome: You know how a safe send flows, and whether your build can send at all. Before you start: Funds to send · A verified recipient address Completion looks like: Either the send completed with a transaction id, or your build showed the unavailable state because its release authorizes no sending. If something goes wrong: Before approval, a send is fully reversible: close the screen. After broadcast, nothing can pull a transaction back. ## All steps - ### Check that this build can send You are trying to Know the send availability for your release. You should see Builds whose release authorizes no sending show a plain unavailable panel: 'This build cannot send'. You do Open the send screen and read what it actually offers. Before you continue, check An unavailable state is the wallet protecting you. It is not a bug and not a network outage. What can go wrong Nothing to fear here: an unauthorized build cannot send, cannot be talked into sending, and loses nothing. Reversible? Yes. Not available here: This source tree authorizes no sending operation. The journey stops at the unavailable state for this release; the remaining steps describe the authorized flow for when a release ships it. - ### Compose the payment You are trying to Address, amount, fee. You should see The send form with a fee selector. You do Paste the address, set the amount, choose a fee. Before you continue, check Paste-back the address. Compare fee rate to the wallet's recommendation. What can go wrong A fee far above recommendation is a signal to stop and reread every field. Reversible? Yes. - ### Read the review screen like a contract You are trying to Approve exactly what you decided. You should see The transaction review: recipient, amount, fee, change. You do Read every output. The change output must return to your wallet. Before you continue, check Every output accounted for: payment + change + fee = total. What can go wrong Approving a screen you did not read is how every send scam works. No exception. Reversible? No. Read twice. - ### Approve and track You are trying to Broadcast and watch for the transaction id. You should see A confirmation, then the transaction id in activity. You do Approve. Open activity to watch confirmations. Before you continue, check The txid in your activity is the receipt. Confirmations mean settlement. What can go wrong After broadcast there is no undo. A stuck transaction is bumped or dropped by its fee, not by support. Reversible? No. Read twice. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Switch chain or network safely | Universe Wallet You can move the wallet between chains and test networks without losing track of where money applies. # Switch chain or network safely ← All journeys # Switch chain or network safely About 6 minutes Check before you act Wallet 1.7.5.8 · unpublished Outcome: You can move the wallet between chains and test networks without losing track of where money applies. Completion looks like: You switched the active chain deliberately and can switch back. If something goes wrong: Switching back restores the previous view. No funds move when you switch. ## All steps - ### Read the current chain You are trying to Know where you are before moving. You should see The header names the active chain and network. You do Check the header. Before you continue, check Mainnet is real money. Test networks are for practice. What can go wrong Doing mainnet actions on reflex after practicing on testnet is the common accident. Reversible? Yes. - ### Approve a switch request You are trying to Move deliberately when a site or you requests a chain change. You should see The approval names both the current and the target chain. You do Approve only if the target chain makes sense for what you are doing. Before you continue, check After switching, every balance view is per-chain; the old chain's funds did not vanish. What can go wrong Sites requesting switches to obscure chains are setting up a look-alike-token trick. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Understand available, unavailable, and protected balance | Universe Wallet You can explain why the wallet may show more wealth than spendable funds. # Understand available, unavailable, and protected balance ← All journeys # Understand available, unavailable, and protected balance About 6 minutes Standard care Wallet 1.7.5.8 · unpublished Outcome: You can explain why the wallet may show more wealth than spendable funds. Completion looks like: You can read the balance anatomy on home and protected outputs without surprise. If something goes wrong: Reading only; nothing to recover. ## All steps - ### Read the home balance anatomy You are trying to See total, available, and held-back amounts with the ownership line. You should see Home splits the balance when parts are not spendable. You do Compare total and available. The difference is explained below the numbers. Before you continue, check Unconfirmed incoming payments and protected outputs both reduce available funds. What can go wrong Treating the total as spendable leads to stuck payments, not losses. Reversible? Yes. - ### Open protected outputs You are trying to See what the wallet holds back and why. You should see The protected outputs screen lists held outputs with reasons. You do Open it from settings or home. Before you continue, check Protected outputs carry artifacts (inscriptions, rare sats) that plain spending would destroy or move. What can go wrong Forcing a spend that consumes a protected output can send your art with your payment. Reversible? Yes. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Capability evidence | Universe Wallet The rule that decides whether an operation ships, what counts as evidence, and how to check a claim yourself instead of taking anyone's word. - Universe Wallet - Reference # Capability evidence Most wallets describe support by listing what the code can do. Universe Wallet does not, because a list of what the code can do is a list of things that might work, presented as things that do. ## The rule Section titled “The rule” Code existing is not support. A route existing is not availability. A parser existing is not wallet support. An operation is authorized only when the exact build carries current, verified evidence for the complete path behind it. Six links, all of which must carry evidence bound to the exact source commit of the build. One missing link means the operation is not authorized, and the screen says so. ## What is checked Section titled “What is checked” The release matrix carries one row for every protocol, network, and operation combination, with UI, provider, API, signer, indexer, health, evidence, and release-state classifications. In the imported 1.7.5.8 source snapshot, 0 of 42 protocols have an authorized operation. This is a source baseline, not a claim about a newly published extension. The local payment-instruction parser and receiving-request builder can complete their local work without moving funds. Parsing an instruction or creating a payment request does not authorize a payment feature or establish that a payer settled it. Remote product operations still require their own available executor and release evidence. Authorization is produced for an immutable workflow run, not copied by hand into a document. The generated readiness record contains the exact source commit, the workflow run id, individual gate results, the protocol matrix checksum, and the exact extension artifact checksum. A go decision is possible only when every gate succeeds, the artifact is checksum-bound, and every intended protocol operation is evidence-backed. Zero functional coverage is always a no-go. ## What this means when you read a claim Section titled “What this means when you read a claim” Any statement that Universe Wallet supports a protocol is checkable, and the way to check it is not to ask the person who said it. - Open the screen in your own wallet. - If the operation is not authorized in your build, the screen says so and names what is missing. - That screen is authoritative for you. This documentation is not, and neither is a store listing, a social post, or a support reply. ## Why the committed baseline is empty Section titled “Why the committed baseline is empty” Deliberately. Authorization is attached at release time to one exact build. If the baseline carried authorizations, a build could inherit a claim it never earned, which is precisely the failure the system exists to prevent. So gated-blocked in the wallet’s own route inventory means “not authorized in the committed baseline”, not “permanently unreachable”. ## The one campaign that has completed Section titled “The one campaign that has completed” A qualification campaign scoped to Zerdinals and ZRunes completed on 30 August 2026 against one candidate commit. Every release gate passed and an authorization covering thirteen operations across those two protocols was produced. The matrix regenerated from it authorizes 26 of its 1,595 rows and nothing outside that scope. That artifact has not been published. See Which version you are running . ## Related Section titled “Related” - What this release authorizes - Why an action is unavailable - The protocol registry Edit page Last updated: Oct 9, 2026 Previous Known limitations Next Release notes ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/RELEASE-READINESS-POLICY.md, docs/PROTOCOL-RELEASE-MATRIX.md Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-06 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Diagram conventions | Universe Wallet The rules every diagram on this site follows, so that a contributor can add one that matches and a reader knows what the drawing is claiming. - Universe Wallet - Reference # Diagram conventions Every diagram here is hand-authored inline SVG, written the same way a paragraph is written. There is no diagramming tool in the loop, and no generated image. ## Rules Section titled “Rules” One idea per diagram. If a second idea needs saying, it gets a second diagram. Colour carries meaning, never decoration. The page is near-neutral. Exactly one chromatic accent exists, and it is reserved for warnings, irreversible actions, and blocked states. If a diagram uses it anywhere else, colour stops meaning anything and a reader stops noticing it where it matters. Colour is never the only signal. A held-back coin is drawn with a hatch pattern and labelled Protected. A dangerous path is drawn in the accent and says so in words. Remove the colour and every diagram still reads. This is WCAG 1.4.1, and it is also just better drawing. Theme-aware by construction. Diagrams are inline SVG using the site’s CSS custom properties, so they follow the theme toggle exactly, including for a reader who chose light while their operating system is dark. They are not images with a baked-in palette. No markers for arrowheads. A <marker> cannot reliably inherit the referencing path’s colour across a theme switch. Arrowheads are explicit paths with their own class. Accessible. Every diagram carries role="img" and aria-labelledby pointing at a <title> and a <desc> . The description says what the diagram shows, not what it looks like, so a reader who cannot see it gets the whole point rather than a shape inventory. Legible on a phone. A diagram scrolls inside its own focusable frame on a narrow screen rather than shrinking until its labels are unreadable. The frame is keyboard reachable. Synthetic values only. Every address, balance, transaction id, outpoint, and site name is invented. Nothing in any diagram comes from a real wallet. No screenshots. This documentation contains none. The product’s own capture harness currently runs the wallet offline, so every screen it captures settles into an empty or error state, and presenting a mock as a real capture would be a false claim in image form. Diagrams and written descriptions are the honest substitute. See Known limitations . No em dashes, no emoji. The same copy rules as the prose, enforced by npm run check:copy . ## The diagrams Section titled “The diagrams” Diagram Explains Appears on Address lanes One phrase, four address types, and why there is no asset address Payment and asset addresses Protected outputs Why an asset-bearing coin never funds a plain payment Protected outputs Signature scope Four kinds of approval and the boundary of each What a signature authorizes Transaction anatomy Inputs, outputs, fee, and change, with arithmetic that adds up Inputs, outputs, fees, change Connection permissions What a site is granted, what it never is, and how access ends Connection permissions Backup and recovery Which loss the phrase covers, and the one it does not Backup and recovery Review anatomy The order the approval screen is built in Review a transaction Release evidence Why an action appears only when evidence covers the path Capability evidence ## Adding one Section titled “Adding one” Add a component under src/components/diagrams/ , use the dg- classes defined in src/styles/theme.css , wrap it in the Diagram component with a title and a caption, and run npm run check:diagrams , which fails on a diagram missing a title or a description. Edit page Last updated: Oct 9, 2026 Previous Glossary Next Integrating with the wallet ## Where this page comes from Owning repository bitcoinuniverseio/docs-wallet Source path src/components/diagrams Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Glossary | Universe Wallet The words this documentation uses, defined precisely, including the ones that mean something different here than elsewhere. - Universe Wallet - Reference # Glossary Address. A destination that can receive coins. One recovery phrase produces many. See Address types . Approval. The screen the wallet puts in front of you before it signs anything. See Review a transaction . Authorized. In this documentation, an operation the exact build you are running carries evidence for. Not the same as implemented. See Capability evidence . Available balance. The part of your total balance that can fund an ordinary payment. Lower than the total when coins are protected. BIP-39. The standard that turns a list of words into a wallet. The reason a phrase from one wallet works in another. Change. An output that returns the remainder of a spent coin to an address you own. A real payment to yourself, not a leftover. Confidence mark. EXACT, ESTIMATED, or UNKNOWN, attached to each interpreted fact on an approval. See Confidence marks . Confirmation. Inclusion of your transaction in a block. Each subsequent block adds one. Connection. Permission for a site to see one address on one network and to ask you for signatures. Never permission to spend. See Connection permissions . Derivation path. The recipe that turns a phrase into a specific set of keys, written like m/84'/0'/0'/0 . Change it and you get a different, equally valid wallet. Dust. An output too small to be worth spending, because spending it would cost more than it holds. Gate. A condition a screen sits behind. A protocol gate opens only when the release authorized that operation. See Why an action is unavailable . Idle window. How long a connection survives without use. Resets on every use. 24 hours, 7 days, 30 days as the default, or until you disconnect. Input. A coin being spent by a transaction. Consumed whole. Inscription. Data written to the chain and treated as attached to one specific satoshi. Lives on one output. Mempool. The waiting area for broadcast transactions that are not yet in a block. Output. A newly created coin. The recipient’s payment and your change are both outputs. Protected. A coin the wallet will not select for an ordinary payment, because it carries an asset, a rare-satoshi candidate, a lock you set, or because the check could not complete. See Protected outputs . PSBT. Partially signed Bitcoin transaction. A draft someone else built that can collect signatures over time. See Review a PSBT . RBF, replace by fee. A network convention allowing an unconfirmed transaction to be replaced by a higher-fee version. Universe Wallet can mark a transaction as replaceable and does not provide a way to build the replacement . Recovery phrase. The words that are your wallet. Not a hint, not a reset code. See Backup and recovery . Sat, satoshi. The smallest unit of bitcoin. One hundred million to a bitcoin. Sat per vB. The fee rate. Satoshis paid per virtual byte of transaction size. Sighash. The part of a signature that says how much of a transaction it commits to. The difference between an approval that cannot change and one anyone can finish. See What a signature authorizes . Testnet, signet. Networks with worthless coins, for practice. Their addresses are not interchangeable with mainnet. Total balance. Everything you hold, including protected coins. Transaction id, txid. The public identifier of a transaction. Safe to share, and verifiable by anyone. UTXO, unspent transaction output. A coin you own that has not yet been spent. What “your balance” is actually made of. See Inputs, outputs, fees, change . Virtual byte, vB. The unit transaction size is measured in for fee purposes. Watch-only. A wallet holding public keys only, which can see everything and sign nothing. See Watch-only wallets . Edit page Last updated: Oct 9, 2026 Previous Release notes Next Diagram conventions ## Where this page comes from Owning repository bitcoinuniverseio/docs-wallet Source path . Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Known limitations | Universe Wallet Every limit of Universe Wallet 1.7.5.8 that could be established from source, including the ones that are inconvenient to admit. - Universe Wallet - Reference # Known limitations An undocumented limitation is treated as a bug in the documentation. If you find one missing, report it through support . ## Release position Section titled “Release position” - The published build is 1.0.13, from April 2025. This documentation describes the 1.7.5.8 source tree, which has not been submitted or published. See Which version you are running . - No protocol operation is authorized in the committed baseline. 0 of 42. Authorization is attached at release time from evidence, and the baseline carries none on purpose. - Ordinary Bitcoin sending is behind a release gate , exactly like a protocol operation. Whether it works in your build was decided by that build. ## Transactions Section titled “Transactions” - There is no fee bump, no speed up, and no child-pays-for-parent. You can mark a transaction replaceable at creation, and the wallet gives you no way to build the replacement. A payment sent at too low a rate can only be waited out or replaced using separate software. - There is no standalone coin control screen. Manual coin selection exists inside the PSBT approval flow, where the request allows it. It is not offered on the ordinary send screen. - The transaction inspector does not decode PSBTs. It looks up an existing transaction by id. A PSBT is reviewed on its approval screen. ## Signing Section titled “Signing” - You cannot compose and sign your own message. Message signing appears only as an approval, in response to a request from a connected site. - Raw data signing is off by default and requires a typed confirmation to enable, by design. ## Keys and devices Section titled “Keys and devices” - Ledger and Trezor cannot be connected. They appear in the hardware list, disabled, marked coming soon. Keystone is the one working integration. - The hardware wallet feature is marked experimental in the product. Verify addresses on the device and start small. - Watch-only import is behind developer mode , and takes an extended public key by QR. There is no flow for watching a single pasted address. - New wallets are 12 words. Longer phrases from other wallets import fine. ## Networks and protocols Section titled “Networks and protocols” - Babylon and Cosmos are not selectable. The registry carries a Babylon entry and the source tree carries Babylon screens, whose design obligation is recorded as not intended, meaning only the unavailable state ships. - Firefox is not published. Build targets exist in the source tree. No listing exists. - Safari and mobile browsers are not supported , and cannot be, because browser extensions do not run there. ## Data and display Section titled “Data and display” - Asset data depends on indexers , which read the chain and decide what a transaction meant. They can lag behind confirmations, and a protocol the wallet does not index cannot be classified or protected. - Fiat display depends on a current Universe price source. When no current price is available, amounts show without a fiat figure rather than with a stale or third-party number. - The language picker offers four languages , English, Chinese, Japanese, and Spanish, while seven locale files ship inside the artifact. ## Custody and settings Section titled “Custody and settings” - Settings do not travel with the phrase. Contacts, labels, locked coins, limits, and connected sites are device-local. After a restore, re-create them. - A wallet cannot make chain data private. Addresses and transactions are public by nature. See Privacy . - Protection is a Universe Wallet behaviour, not a property of your keys. Import the same phrase into another wallet and every coin becomes ordinary money again. ## Things this documentation could not verify Section titled “Things this documentation could not verify” Stated here rather than described elsewhere, because an unverifiable claim in a wallet manual is a liability. - No screenshots of the product exist in this documentation. The product’s own capture harness currently runs the wallet offline, so every screen it captures settles into an empty or error state. Rather than present a mock as a real capture, this site uses hand-authored diagrams and describes interfaces in words. - The behaviour of the published 1.0.13 build could not be verified. Its source is not the tree this documentation was written against. Where this site and your wallet disagree, your wallet is correct. ## Related Section titled “Related” - Supported features - Troubleshooting Edit page Last updated: Oct 9, 2026 Previous Supported features Next Capability evidence ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/ROUTE-INVENTORY.json, docs/PUBLIC-CAPABILITY-SUMMARY.json, docs/STORE-LISTING.md Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Release notes | Universe Wallet What changed between the wallet builds this documentation can verify, and what has and has not reached users. - Universe Wallet - Reference # Release notes Only one build has ever reached users The Chrome Web Store item has served 1.0.13 since 15 April 2025. Every version below exists as a candidate in the source tree and in the release list, and none of them has been published. See Which version you are running . ## What is published Section titled “What is published” Version Date Where 1.0.13 15 April 2025 Chrome Web Store item fjalkkkbjffhgdoheannkodafhemfdba This documentation was not written against 1.0.13 and cannot describe it accurately. Its source is not the tree used here. ## What exists as candidates Section titled “What exists as candidates” Version State 1.7.5.8 Current source tree. 0 of 42 protocols authorized in the committed baseline. Not submitted. 1.7.5.6 Production readiness record exists, bound to one commit and one workflow run. 1.7.5.5, 1.7.5.4 Production release records and protocol matrices exist for both. Candidate builds are published as pre-releases on the wallet releases page , named by their exact commit. A pre-release is a candidate that has been built, not a build that has been authorized. ## The one qualification that completed Section titled “The one qualification that completed” On 30 August 2026, a campaign scoped to Zerdinals and ZRunes completed against a single candidate commit. Every release gate passed, and an authorization covering thirteen operations across those two protocols was produced. The regenerated matrix authorizes 26 of its 1,595 rows and nothing outside that scope. Submission remains blocked because the Chrome Web Store publishing credential is not available to the repository. ## What changed in 1.7.5.8 that is visible to a user Section titled “What changed in that is visible to a user” Verifiable from the source tree and its own records: - Risk rows in the approval popover now open with a chip reading Warning or Critical . Before 1.7.5.8 the severity was carried only by colour, which failed the rule that colour must never be the only signal. - The route inventory records 113 routes across 47 areas, with 15 approval variants, laying out at popup, side panel, and tab widths. ## How to read a release claim Section titled “How to read a release claim” A version number tells you which code was built. It does not tell you which operations that build authorizes. Those are separate facts, and the second one is the one that affects you. See Capability evidence . ## Related Section titled “Related” - Supported features - Known limitations Edit page Last updated: Oct 9, 2026 Previous Capability evidence Next Glossary ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/PRODUCTION-RELEASE-1.7.5.4.md, docs/PRODUCTION-RELEASE-1.7.5.5.md, docs/PRODUCTION-READINESS-1.7.5.6.md Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Supported features | Universe Wallet What is present with no gate, what is present behind a release gate, and what does not exist at all in Universe Wallet 1.7.5.8. - Universe Wallet - Reference # Supported features Three columns matter here, and mixing them up is how documentation misleads people. - Present means the screen exists with no protocol gate. It is in every build. - Gated means the screen exists behind a protocol gate. Whether it works depends on what your build authorized. In the 1.7.5.8 baseline, nothing is authorized. - Not available means it is not in this build at all. Not hidden, not disabled: absent. ## Platform Section titled “Platform” Item State Browser Chrome 88 or later, Manifest V3. Other Chromium browsers run the same package. Firefox Not available. Build targets exist; no listing is published. Safari and mobile Not available. Views Popup, side panel, and full-tab. All 112 routes lay out at all three widths. Languages in the picker English, Chinese, Japanese, Spanish. Seven locale files ship in the artifact. ## Keys and accounts Section titled “Keys and accounts” Capability State Create wallet Present. 12-word BIP-39 phrase with a confirmation check. Import phrase Present. Presets for Unisat, Sparrow, Xverse, Ordinals Wallet, and others. Optional BIP-39 passphrase and custom derivation path. Import private key Present. WIF and hex. Address types Present. Native SegWit, Nested SegWit, Taproot, Legacy, plus two BIP-44 compatibility variants. Multiple wallets and accounts Present, with renaming. Keystone hardware Present. Air-gapped QR and USB. Marked experimental in the product. Ledger, Trezor Not available. Listed, disabled, shown as coming soon. Watch-only, cold wallet Present, behind developer mode. Extended public key by QR. No paste-an-address flow. ## Transactions Section titled “Transactions” Capability State Send Gated on bitcoin/send and bitcoin/broadcast . Batch send Gated on bitcoin/send . Consolidation Gated on bitcoin/send . Fee control Present. Live presets and a custom sat/vB rate. Mark transaction replaceable Present. Off by default, stated on the review screen. Fee bump, speed up, RBF replacement, CPFP Not available. No flow exists to replace or accelerate a broadcast transaction. Manual coin selection Present inside the PSBT approval flow. No standalone coin control screen. Locked coins list Present, no gate. Coin health Present, no gate. Asset protection Present. Asset-bearing outputs never fund plain sends. Payment requests Present. Amount and note in the QR and a copyable link. Transaction review Present. Impact summary with EXACT, ESTIMATED, and UNKNOWN marks, inputs, outputs, fee, and raw transaction. Transaction inspector Present. Looks up an existing transaction by id. It does not decode a PSBT. Spending limits and whitelist Present, off by default. The two rows worth re-reading There is no fee bump and no child-pays-for-parent anywhere in this build. And ordinary sending is behind a release gate , like every protocol operation. Neither of these is what people assume. ## Connected applications Section titled “Connected applications” Capability State Connection scope Present. One selected account per site, per network. Per-request approval Present. Every signature is approved separately. Expiry Present. Idle windows of 24 hours, 7 days, 30 days as default, or until disconnected. Connection audit and revoke Present. Local risk scoring, one-step revoke. Message signing, site initiated Present, as an approval. Text with scam-language scanning. Message signing, user initiated Not available. No screen for composing your own message. Raw data signing Present, off by default, typed confirmation to enable. PSBT signing Present, as an approval. Single and multiple. Chain and network switch requests Present, as approvals. Phishing filtering Present. Local blocking rules shipped in the extension. ## Protocols Section titled “Protocols” 42 protocols across Bitcoin, Dogecoin, Zcash, Fractal, and a Cosmos entry. This release authorizes 0 of them. That is the size of the registry, not a list of what your build can do. See The protocol registry and What this release authorizes . Babylon and Cosmos are not selectable in the network picker and their routes carry a design obligation of not intended. Treat them as unavailable. ## Security Section titled “Security” Capability State Auto-lock Present. 30 seconds to 4 hours, default 30 minutes. Immediate lock Present. Password change Present. Security dashboard Present, no gate. Recovery tracking, login history, session log, phishing URL checker. Request integrity Present. A request that changed after you saw it is blocked as Request replaced. ## Related Section titled “Related” - Known limitations - Why an action is unavailable Edit page Last updated: Oct 9, 2026 Previous Privacy Next Known limitations ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/ROUTE-INVENTORY.json, docs/PUBLIC-CAPABILITY-SUMMARY.json Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # If your wallet is compromised | Universe Wallet What to do first, in order, when you think your phrase was seen, a signature went wrong, or coins moved without you. - Universe Wallet - Safety # If your wallet is compromised This page is written to be read quickly, by someone who is not calm. Start at the situation that matches yours. Before anything else Do not enter your recovery phrase into any site, tool, or person offering to help. Every recovery service is a second theft. There is no legitimate one, anywhere, for any wallet. ## Your recovery phrase may have been seen Section titled “Your recovery phrase may have been seen” This is the most serious case, because access cannot be taken back. A phrase cannot be made secret again. Changing your password does nothing. Locking the wallet does nothing. Uninstalling does nothing. The only fix is to move everything to keys that person has never seen. - Create a brand new wallet, from a new phrase. On a device you believe is clean. Write the new phrase down on paper. - Move your plain currency first. It is the easiest to sweep and the most likely to be taken. - Move your assets next , using the flow built for each asset type. If those flows are not available in your build, you cannot move assets from inside this wallet, and you should still move the currency. See Why an action is unavailable . - Do not send anything back to the old wallet , ever, including change from an unrelated transaction. - Assume anything left behind will be taken. Prioritise by value, not by convenience. If your holdings are large and the exposure is recent, moving currency in a single high-fee transaction is usually worth it. An attacker who is watching will race you. ## You approved something and now regret it Section titled “You approved something and now regret it” - Open Connected sites and disconnect the site. This stops further requests. It does not undo what you already signed. - Check Activity for what actually happened. - Work out what the signature was. A payment is done. A message signature moved nothing. A partial signature may still be outstanding and completable by someone else. See What a signature authorizes . - If a partial signature is outstanding , the only certain revocation is to spend the committed coin yourself, into a transaction you control, so the offer can no longer be completed. ## Coins moved without you Section titled “Coins moved without you” - Check whether it was really unauthorized. A change output returning to your own address looks like an outgoing transaction to a stranger. Check whether the destination is one of yours. - If it genuinely was not you, your keys are compromised. Follow the phrase-exposed procedure above immediately. Do not investigate first. - Record the transaction ids before you do anything else. They are the only evidence, and they are public. ## You installed something that was not the real wallet Section titled “You installed something that was not the real wallet” - Remove it. - If you entered your phrase into it, treat the phrase as fully exposed and follow the first procedure above. - If you never entered a phrase into it, no key material was ever there and you are fine. ## What nobody can do for you Section titled “What nobody can do for you” - Reverse a confirmed transaction. - Freeze funds at another address. - Recover a lost phrase. - Identify who took the coins in a way that gets them back. The second wave People who lose funds publicly are targeted immediately by recovery scams. If you post about a loss, expect messages from accounts impersonating support, offering blockchain forensics, or claiming to know a validator who can reverse it. All of them are the same scam. Post the transaction id if you want, and never post an address you still use, and never speak to anyone who contacts you first. ## Afterwards Section titled “Afterwards” - Review Security model and decide what you would do differently. - Consider hardware signing for long-term holdings. - Keep experimenting money in a separate wallet from savings. ## Reporting Section titled “Reporting” If you believe the loss came from a flaw in the product rather than from an exposed phrase, report it to legal@bitcoinuniverse.io . See Support and reporting . Edit page Last updated: Oct 9, 2026 Previous Phishing and impostors Next Privacy ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/STORE-LISTING.md Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Phishing and impostors | Universe Wallet The small number of attacks that account for almost all losses, the one rule that defeats most of them, and what the wallet does and does not filter. - Universe Wallet - Safety # Phishing and impostors ## The one rule Section titled “The one rule” Nobody legitimate ever needs your recovery phrase. Not support. Not a verification step. Not a wallet upgrade. Not an airdrop claim. Not a migration tool. Not a security check. Not the person helping you recover funds. There is no exception, in any wallet, ever. If you follow only this rule, you avoid most of the ways people lose everything. ## The attacks that actually work Section titled “The attacks that actually work” ### The counterfeit extension Section titled “The counterfeit extension” A store listing that copies the name, icon, and description. It asks you to import your phrase and takes everything the moment you do. Defence: install only from the store listing with item id fjalkkkbjffhgdoheannkodafhemfdba . Names can be copied. Ids cannot. See Install . ### Support that contacts you first Section titled “Support that contacts you first” Someone appears in a reply, a direct message, or a chat channel, offering to help with a problem you mentioned. They are friendly, they are competent, and eventually they need your phrase or a “sync code”. Defence: real support never contacts you first and never needs your phrase. Go to Support yourself. ### The look-alike site Section titled “The look-alike site” A site one character away from the real one, or a sponsored search result above it. Everything works until the signature request, which does something other than what the page says. Defence: bookmark the sites you use and reach them from your bookmarks. Read the origin line the wallet shows, which comes from the browser and cannot be faked by the page. ### The unreadable signature Section titled “The unreadable signature” A request that is raw data rather than readable text, or a transaction whose effect you cannot explain. Sometimes framed as “just verifying your wallet”. Defence: if you cannot say in one sentence what the request does, reject it. See What a signature authorizes . ### The address swap Section titled “The address swap” Malware that replaces an address in your clipboard between copying and pasting. The ends often look plausible. Defence: compare the first four and last four characters after pasting, every time. ### The urgent deadline Section titled “The urgent deadline” A mint closing, a claim expiring, a compromise you must fix in the next ten minutes. Urgency exists to stop you reading. Defence: treat urgency itself as the warning. Nothing legitimate is destroyed by taking five minutes to check. ## What the wallet does Section titled “What the wallet does” - Blocks known phishing domains through rules that ship inside the extension, applied locally rather than by sending your browsing anywhere. - Screens signature request text for scam-language patterns and warns you. - Shows the origin the browser reports, not a name the page chose. - Provides a phishing URL checker in the security dashboard. ## What the wallet cannot do Section titled “What the wallet cannot do” - Recognise a site that is new, or convincing, or targeted at you specifically. - Tell whether the deal you are signing is a good one. - Stop you approving something after it warned you. Filtering catches the known. Your reading catches the rest. ## If you already did Section titled “If you already did” Go to If your wallet is compromised . Speed matters more than diagnosis. ## Related Section titled “Related” - Security model - Manage connections Edit page Last updated: Oct 9, 2026 Previous Security model Next If your wallet is compromised ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Phishing Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Privacy | Universe Wallet What leaves your device by design, what never does, what a connected site can learn, and the limit no wallet can pass. - Universe Wallet - Safety # Privacy ## Never leaves your device Section titled “Never leaves your device” - Your recovery phrase and private keys. Generated locally, stored encrypted with your password. No Universe system ever receives them. - Your password. - Device-local settings: contacts, address labels, locked coins, spending limits, and connected-site records. ## Leaves your device, by design Section titled “Leaves your device, by design” - Your addresses , to Universe-operated APIs and indexers, because balance, asset, and activity data is answered per address. This is how every light wallet works. Universe answers these reads from its own infrastructure rather than from third-party data providers. - Signed transactions you broadcast , to the network, where they are public permanently. - Requests for media and prices , to Universe-operated services. ## The limit no wallet can pass Section titled “The limit no wallet can pass” Bitcoin, Dogecoin, and transparent Zcash are public ledgers. Anyone who learns one of your addresses can see everything that address has ever done, and can often infer which other addresses belong to you from how coins were spent together. A wallet cannot make chain activity private No setting in Universe Wallet changes this, and any wallet that claims otherwise is describing something the chain does not do. The mitigations below reduce linkage. They do not create privacy. ## Practical mitigations Section titled “Practical mitigations” - Use a fresh receiving address per payment. Reuse links every payment to one identity. - Keep addresses off social media. One public post ties an address to a person permanently. - Separate wallets by purpose. Long-term holdings in one, experimenting in another. Coins spent together are assumed to share an owner. - Be careful with consolidation. Combining many coins in one transaction tells observers they all belonged to you. Sometimes that is fine. Decide deliberately. - Fiat display. Price requests are made to Universe-operated services. When no current price is available, amounts are shown without a fiat figure rather than with a stale or third-party number. ## What a connected site can learn Section titled “What a connected site can learn” A connected site sees the one address you shared with it, and what you sign for it. Nothing else. It cannot see your other accounts, your other networks, or your balances at addresses you did not share. An unconnected site cannot read anything from the wallet at all. Phishing filtering runs locally, through blocking rules that ship inside the extension, rather than by sending your browsing to a service. ## The authoritative statement Section titled “The authoritative statement” The privacy policy is the complete, current statement of data handling, and it applies where this summary and the policy differ. ## Related Section titled “Related” - Connection permissions - Security model Edit page Last updated: Oct 9, 2026 Previous If your wallet is compromised Next Supported features ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/constant/private-bitcoin-infrastructure.ts Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Security model | Universe Wallet Where your keys live, what protects them, what Universe can and cannot do, and which decisions stay yours no matter what the product does. - Universe Wallet - Safety # Security model ## Where your keys live Section titled “Where your keys live” Your recovery phrase and private keys are generated inside the extension, encrypted with your password, and stored only on your device. They are never sent to Universe or to anyone else. Signing happens inside the extension, or on your hardware device for hardware accounts. ## What Universe can do Section titled “What Universe can do” - Serve chain data, asset indexes, and media from Universe-operated infrastructure. - Block known phishing sites before they load, and screen signature requests for scam language. - Ship releases in which each protocol action is enabled only with current, verified, end-to-end evidence. ## What Universe cannot do Section titled “What Universe cannot do” - Move, freeze, or recover your funds. - Reverse a confirmed transaction. Nobody can. - Restore a lost recovery phrase. There is no account, no reset email, and no support override. Anyone claiming to be Universe support and asking for your phrase is committing fraud There is no scenario, no upgrade, no verification, and no recovery procedure that requires your recovery phrase to be given to anyone. See Phishing and impostors . ## The defences in the product Section titled “The defences in the product” Password and auto-lock. The wallet locks itself after your chosen idle time, from 30 seconds to 4 hours. The default is 30 minutes, and the lock-time screen recommends 5 minutes. Lock Immediately sits at the bottom of Settings. Approval on everything. No connected site can spend or sign without a request you read and accept. See Connection permissions . Asset-aware spending. Coins carrying assets never fund ordinary payments. See Protected outputs . Request integrity. An approval is bound to the exact request that opened it. Approval authority is computed once per request identity and re-checked synchronously at every signing entry point. A request that changed after you saw it is blocked as Request replaced , rather than signed. Optional hard limits. Whitelists and spending caps, available in the security dashboard and enforced by the send flow. Off by default. Raw-data signing off by default. Enabling it requires a typed confirmation. See Sign a message . Evidence-gated releases. An operation reaches you only when the exact build carries current qualification evidence for the complete path. See Capability evidence . ## What the model does not cover Section titled “What the model does not cover” Be clear about the boundary, because a security model that implies more than it delivers is worse than none. - A compromised computer. Malware with access to your browser profile and your keystrokes can reach an unlocked wallet. Hardware signing raises this bar considerably. See Hardware wallets . - Your recovery phrase on paper. Nothing in software protects a piece of paper. - A signature you gave deliberately. The wallet can make a request readable. It cannot decide for you whether the deal is a good one. - An outstanding partial signature. Once given, it can be completed by anyone holding it while the coin is unspent. See What a signature authorizes . - Another wallet using the same phrase. Protections here are Universe Wallet behaviours, not properties of your keys. ## The decisions that stay yours Section titled “The decisions that stay yours” The product cannot protect the phrase written on your paper, the address you paste, or the request you approve without reading. Its job is to make each of those decisions clear at the moment you take it. The words in the review are chosen so that you can explain what will happen before you sign. If you cannot explain what a request does, that is the signal to reject it. ## Related Section titled “Related” - If your wallet is compromised - Privacy - Security dashboard Edit page Last updated: Oct 9, 2026 Previous Zcash market listings Next Phishing and impostors ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/service/keyring, docs/WALLET-SECURITY-AUDIT-2026-08-03.md Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Transaction and Approval Safety Lab | Universe Wallet Study real transaction and approval scenarios - fees, change, protected outputs, sighash - without signing anything. # Transaction and Approval Safety Lab # Transaction and Approval Safety Lab Every scenario here is a fixture generated from the wallet's own approval view models over synthetic data. Nothing in this laboratory signs, broadcasts, or contacts anything: it exists so that the first time you meet an unusual approval, it is not the first time you have seen its shape. ## Every scenario, in plain text The same content without JavaScript, for screen readers, search engines, and printing. ### When the change does not come back to your wallet The wallet's summary: “This sends BTC” (review) - 1 input needs your signature. - 2 outputs go outside this wallet; 0 return to you. Inputs: yours (10000 sats); Outputs: leaves your wallet (8000 sats); leaves your wallet (1500 sats); Fee: 500 sats at 2 sat/vB. No bump capability. #### What to check - The second output goes to an address that is not yours. - Change must return to your wallet. A stranger holding your change can collect it. ### When the wallet cannot summarize a request safely The wallet's summary: “Cannot summarize safely” (danger) - The wallet does not have enough decoded PSBT data to make a short summary. Inputs: Outputs: leaves your wallet (8000 sats); change to you (1500 sats); Fee: 500 sats at 2 sat/vB. No bump capability. #### What to check - When decoded data is missing, the wallet refuses to summarize instead of guessing. - A request the wallet cannot read is a request you should not sign. ### A payment with several recipients The wallet's summary: “This sends BTC” (review) - 1 input needs your signature. - 3 outputs go outside this wallet; 0 return to you. Inputs: yours (10000 sats); Outputs: leaves your wallet (4000 sats); leaves your wallet (3000 sats); change to you (2500 sats); Fee: 500 sats at 2 sat/vB. No bump capability. #### What to check - A transaction can pay many recipients at once; read every output. - Your change is an output too. Anything that is not yours is a payment. ### An ordinary send The wallet's summary: “This sends BTC” (review) - 1 input needs your signature. - 2 outputs go outside this wallet; 0 return to you. Inputs: yours (10000 sats); Outputs: leaves your wallet (8000 sats); change to you (1500 sats); Fee: 500 sats at 2 sat/vB. No bump capability. #### What to check - One output leaves the wallet, one output returns to it as change. - The fee is the difference between what goes in and what comes out. - Signing only this input at SIGHASH_ALL commits to the whole transaction. ### A rare-sat transfer keeps its protected output first The wallet's summary: “This moves protected Rare Sats” (review) - 1 input needs your signature. - 1 output goes outside this wallet; 0 return to you. - Protected Rare Sats move together in their complete UTXO. Separate cardinal BTC pays the network fee. - Protected UTXO: cccccccccccc…cccccccc:2. - Protected Rare-Sat composition: The sat you are sending rides on the first input and must lead the outputs unchanged.. Inputs: yours (10000 sats); Outputs: leaves your wallet (10000 sats); Fee: 500 sats at 2 sat/vB. No bump capability. #### What to check - Protected assets keep their position: the protected output leads. - If a request reorders or splits the protected output, the asset can be lost. ### A PSBT that spends inputs you do not own The wallet's summary: “This signs a Bitcoin transaction” (ok) - 1 input needs your signature. - 1 output goes outside this wallet; 0 return to you. Inputs: not yours (5000 sats); yours (10000 sats); Outputs: leaves your wallet (14000 sats); Fee: 1000 sats at 2 sat/vB. No bump capability. #### What to check - A PSBT can bundle inputs from many owners. - Only inputs marked as yours are signed; everything else is someone else’s money in the same transaction. ### What a looser signature commits to The wallet's summary: “This signs a Bitcoin transaction” (review) - 1 input needs your signature. - 2 outputs go outside this wallet; 0 return to you. Inputs: yours (10000 sats, SIGHASH_SINGLE - commits this input to one output only); Outputs: leaves your wallet (8000 sats); change to you (1500 sats); Fee: 500 sats at 2 sat/vB. No bump capability. #### What to check - SIGHASH_SINGLE commits your input to only one output, leaving other outputs free to change. - Marketplaces use this for listings. Read which output is yours before signing one. ### An output you did not expect The wallet's summary: “This sends BTC” (review) - 1 input needs your signature. - 2 outputs go outside this wallet; 0 return to you. Inputs: yours (10000 sats); Outputs: leaves your wallet (1000 sats); leaves your wallet (8500 sats); Fee: 500 sats at 2 sat/vB. No bump capability. #### What to check - The largest output of this transaction does not go to the requested recipient. - Read outputs from largest to smallest and account for every one. ### An unusually high fee The wallet's summary: “This sends BTC” (review) - 1 input needs your signature. - 2 outputs go outside this wallet; 0 return to you. Inputs: yours (10000 sats); Outputs: leaves your wallet (8000 sats); change to you (1500 sats); Fee: 17000 sats at 850 sat/vB - far above the recommended rate. No bump capability. #### What to check - The fee is what the transaction pays the network, not what the site receives. - A fee rate far above the recommended rate is a signal to stop and reread. Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey Previous Safe simulator Next Screen Atlas ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Redirecting to: /docs-wallet/start/back-up Redirecting to: /docs-wallet/start/back-up - Redirecting from /docs-wallet/security-and-recovery/backup/ to /docs-wallet/start/back-up # Redirecting to: /docs-wallet/safety/compromised-wallet Redirecting to: /docs-wallet/safety/compromised-wallet - Redirecting from /docs-wallet/security-and-recovery/compromised-wallet/ to /docs-wallet/safety/compromised-wallet # Redirecting to: /docs-wallet/safety/privacy Redirecting to: /docs-wallet/safety/privacy - Redirecting from /docs-wallet/security-and-recovery/privacy/ to /docs-wallet/safety/privacy # Redirecting to: /docs-wallet/concepts/backup-and-recovery Redirecting to: /docs-wallet/concepts/backup-and-recovery - Redirecting from /docs-wallet/security-and-recovery/restore/ to /docs-wallet/concepts/backup-and-recovery # Redirecting to: /docs-wallet/safety/security-model Redirecting to: /docs-wallet/safety/security-model - Redirecting from /docs-wallet/security-and-recovery/security-model/ to /docs-wallet/safety/security-model # Redirecting to: /docs-wallet/tasks/watch-only Redirecting to: /docs-wallet/tasks/watch-only - Redirecting from /docs-wallet/security-and-recovery/watch-only/ to /docs-wallet/tasks/watch-only # Back up your recovery phrase | Universe Wallet How to record the phrase so it survives fire, theft, moving house, and your own memory, and how to prove the backup actually works. - Universe Wallet - Start here # Back up your recovery phrase Intended reader: anyone whose wallet holds, or will hold, anything they would mind losing. Goal: a physical record of the phrase that you can find in five years. Prerequisites: the wallet, your password, pen and paper, a private room. Safety: this is the highest-risk routine action in the whole product. Everything else can be retried. ## The rule Section titled “The rule” Your recovery phrase is the wallet. Not a hint, not a reset code. Whoever has the words has the coins. What the phrase carries: every account, every network, every address type, on any device and in any BIP-39 compatible wallet. What it does not carry: your password, your connected sites, your labels, contacts, frozen coins, and spending limits. Those are device settings and have to be set up again after a restore. ## Where to write it Section titled “Where to write it” Do Do not Pen on paper, or stamped metal Photograph it Two copies, in two separate places Store it in cloud notes, email, or chat Numbered, in order Type it into any website, ever Somewhere a house fire or a burglary would not reach both copies Store it in a password manager you do not control the sync of Somewhere someone you trust could find it if you could not Split it across services and hope Order is part of the secret. Twelve correct words in the wrong order is not your wallet. ## Steps Section titled “Steps” - Open Settings , then Export recovery phrase . - Enter your password. - Write the words on paper, numbered, in order. - Close the screen before you do anything else. - Put the paper where you decided it goes, now, not later. ## How to verify the backup works Section titled “How to verify the backup works” A backup you have never tested is a hope, not a backup. - Note the first receiving address of your wallet. - In a separate browser profile, install the extension and restore from the paper copy alone. Do not look at the screen version. - Confirm the same first address appears. - Remove that test wallet from the second profile. If the address matches, your paper copy is correct and complete. If it does not, fix it while you can. ## Expected result Section titled “Expected result” You can reconstruct the wallet from paper alone, with no device, no password, and no help. ## Common failures Section titled “Common failures” What happens What it means The restored wallet shows a different address Usually a different address type, not a wrong phrase. Compare all four. See Address types . A word is illegible on the paper Rewrite the whole phrase from the wallet now, while you still can unlock it. You used a BIP-39 passphrase and did not record it The phrase alone is not enough. Record the passphrase separately, in a different place. ## Recovery path Section titled “Recovery path” While you can still unlock the wallet, every backup problem is fixable: open the export screen and write it again. Once you cannot unlock it and the paper is wrong, there is no path. That asymmetry is the whole reason to do this today. ## Related Section titled “Related” - Backup and recovery - If your wallet is compromised Edit page Last updated: Oct 9, 2026 Previous Import an existing wallet Next Receive for the first time ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Settings/ExportMnemonicsScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Create a wallet | Universe Wallet Generate a new 12-word wallet, choose a password, pick an address type, and finish the backup check before any money is involved. - Universe Wallet - Start here # Create a wallet Intended reader: someone setting up their first Universe Wallet. Goal: a funded-ready wallet whose recovery phrase is written down on paper. Prerequisites: the extension installed. Pen and paper. Ten quiet minutes. Chain and network: all chains. Defaults to Bitcoin mainnet. Safety: the phrase you are about to see is the wallet. Nobody is keeping a copy. Do this where nobody can see your screen Not on a shared machine, not on a call, not while screen recording, not in a coffee shop with your back to the room. A phrase seen once is a phrase gone forever. ## Steps Section titled “Steps” - Open the extension and choose to create a new wallet. - Set a password. This encrypts the vault on this device. It is not recoverable and it is not your backup. Use something long that you will still know in a year. - Read the recovery phrase. The wallet generates a 12-word BIP-39 phrase. Write the words on paper, in order, numbered. Do not photograph it. Do not type it anywhere. - Pass the confirmation check. The wallet asks you to put selected words back in place. This exists so that a phrase you never actually wrote down cannot silently become the only copy. - Choose an address type. Native SegWit is the default and is right for most people. If you are going to hold inscriptions, read Payment and asset addresses first, because Taproot is where artifacts conventionally live. - Finish. The wallet opens on an empty account. ## Expected result Section titled “Expected result” - A wallet with one account, no balance, and an address you can receive to. - A paper record of 12 words, in order, stored somewhere you would still find after a house move. ## How to verify Section titled “How to verify” Before you put real money in, prove the backup works: - Note your first receiving address. - Lock the wallet, or use a second browser profile. - Restore from the phrase you wrote down. - Confirm the same first address appears. If a different address appears, either a word is wrong, the order is wrong, or the address type differs. Fix that now, while the wallet is empty. See Backup and recovery . ## Common failures Section titled “Common failures” What happens What it means What to do The confirmation check rejects your words The written copy does not match Start over rather than guessing. An empty wallet costs nothing to redo. You wrote the words but not the order BIP-39 order is part of the secret Redo the creation. Order matters. A restore shows a different address Wrong address type, not a wrong phrase, in most cases Switch address type and compare. See Address types . You closed the window before writing anything down Nothing is lost yet, because nothing is funded Delete the wallet and create a new one. ## Recovery path Section titled “Recovery path” While the wallet is empty, every mistake is free. That is the only time this is true, so use it. Once funds arrive, the phrase on paper is the only path back. ## Related Section titled “Related” - Back up your recovery phrase - Backup and recovery - Locking and passwords Edit page Last updated: Oct 9, 2026 Previous Install Next Import an existing wallet ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Account/CreateHDWalletScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Receive for the first time | Universe Wallet Get an address, check it in more than one place, and use a small test amount before anything that matters. - Universe Wallet - Start here # Receive for the first time Intended reader: someone receiving into Universe Wallet for the first time. Goal: funds arriving at an address you control, confirmed on chain. Prerequisites: a wallet whose recovery phrase is already written down. Chain and network: any supported chain. Check the network before you share an address. Safety: an address sent to the wrong chain or network is money gone. Verify twice. ## Steps Section titled “Steps” - Open the wallet and confirm the account and network shown at the top are the ones you mean. See Chains and networks . - Open Receive . - Copy the address, or show the QR code. - Send a small test amount first, from wherever the funds are coming from. - Wait for it to appear, then send the rest. ## Verify the address before you use it Section titled “Verify the address before you use it” Address confusion is the failure mode here, and it is silent. - Check the first four and last four characters against what the sender sees, out loud if possible. Clipboard-replacement malware changes the middle. - Check the prefix matches the network. A mainnet Bitcoin address starts bc1q , bc1p , 3 , or 1 . Test network addresses look different. Sending mainnet coins to a testnet address, or the reverse, does not bounce back. - Check the chain. A Bitcoin address is not a Dogecoin address. Nothing will warn the sender. ## Expected result Section titled “Expected result” The amount appears in your activity as pending, then confirms. Your balance goes up by the amount sent, and the sender pays the fee. ## How to verify Section titled “How to verify” - The transaction appears under Activity with an increasing confirmation count. - The amount matches exactly. If it is lower, the sender paid the fee out of the amount, which is their choice, not an error in your wallet. ## Common failures Section titled “Common failures” What you see What it means What to do Nothing arrives, but the sender has a transaction id The transaction exists and is unconfirmed, or went to a different address Look up the transaction id. Check which address it actually paid. Funds arrive but show as unavailable The coin was classified as asset-bearing, or is not yet confirmed See Protected outputs . The balance updates but assets do not Asset data comes from indexers and can lag behind the chain Wait, then see Troubleshooting . You sent to the wrong network The coins went to an address on a chain this wallet is not watching If you hold the keys for that chain in this phrase, you may be able to reach them. If not, they are gone. ## Recovery path Section titled “Recovery path” Receiving cannot lose funds that are already yours. The only irreversible mistake at this stage is publishing an address that is not actually yours, which is why the verification step above exists. ## Related Section titled “Related” - Receive , including payment requests with an amount - Payment and asset addresses Edit page Last updated: Oct 9, 2026 Previous Back up your recovery phrase Next Send for the first time ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Wallet/ReceiveScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Send for the first time | Universe Wallet Your first outgoing payment, done in the order that makes a mistake survivable, with the two facts about sending that surprise people most. - Universe Wallet - Start here # Send for the first time Intended reader: someone making their first outgoing payment from Universe Wallet. Goal: an amount arriving at someone else’s address, with no asset spent by accident. Prerequisites: a funded wallet, a backed-up phrase, and the recipient’s address. Chain and network: Bitcoin mainnet in this example. Safety: this is irreversible. Nothing on this page can undo a confirmed transaction. Sending is behind a release gate The send and broadcast screens sit behind the bitcoin/send and bitcoin/broadcast gates. Whether they work in your build was decided when that build was released, not by this documentation. If the screen tells you the operation is not available in your build, it is not available, and no setting changes that. See Why an action is unavailable . ## Two facts first Section titled “Two facts first” - Coins are spent whole. Paying 0.02 BTC from a 0.03 BTC coin does not leave that coin partly spent. The whole coin is consumed and the remainder comes back to you as a change output. See Inputs, outputs, fees, change . - The fee follows size, not amount. Sending 10 BTC costs the same as sending 0.001 BTC if the transaction is the same size in bytes. ## Steps Section titled “Steps” - Send a test amount first. Small enough that losing it would be annoying rather than serious. - Open Send , and confirm the account and network at the top of the screen. - Paste the recipient address. Compare the first four and last four characters against the source. - Enter the amount. - Choose a fee. See Choose a fee . - Read the review screen. Do not skim it. See Review a transaction . - Approve, or reject. Rejecting costs nothing. - Wait for the test amount to arrive at the other end and be confirmed. - Only then send the real amount. ## Expected result Section titled “Expected result” The transaction appears in Activity as pending, then gains confirmations. Your available balance drops by the amount plus the fee. A change output returns to an address you own. ## How to verify Section titled “How to verify” - The recipient confirms arrival of the test amount. - Your activity entry shows the fee you chose, not a larger one. - Your total balance dropped by amount plus fee, and no asset you hold has moved. ## Common failures Section titled “Common failures” What you see What it means What to do Not enough available balance, though the total looks fine Some coins are protected and cannot fund a plain payment See Protected outputs . The transaction stays pending for a long time The fee rate was below what the network is currently clearing Wait. See the warning below about fee bumping. The change output is missing on the review The remainder is being paid entirely as fee Reject. Do not approve a transaction whose change line you cannot account for. The screen says the operation is not available in this build The release did not authorize it Nothing you can change. See Why an action is unavailable . There is no way to speed up a stuck transaction from inside the wallet You can mark a transaction as replaceable when you create it, and that flag is off by default. But Universe Wallet 1.7.5.8 has no fee bump, no speed up, and no child-pays-for-parent flow . Marking a transaction replaceable does not give you a way to replace it here. If a payment is stuck, your options are to wait, or to use separate software that can build a replacement. Choose the fee carefully the first time. ## Recovery path Section titled “Recovery path” There is none after confirmation. Before broadcast, rejecting the approval is free and complete. That is why the review screen is the last real safety control you have, and why it is worth the thirty seconds. ## Related Section titled “Related” - Send bitcoin - What a signature authorizes Edit page Last updated: Oct 9, 2026 Previous Receive for the first time Next Guided journeys ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Wallet/TxCreateScreen.tsx, frontend/ui/pages/Wallet/TxConfirmScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Not released Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Import an existing wallet | Universe Wallet Bring a wallet in from a recovery phrase or a private key, including the derivation-path presets for Unisat, Sparrow, Xverse, and Ordinals Wallet. - Universe Wallet - Start here # Import an existing wallet Intended reader: someone moving an existing wallet into Universe Wallet, or adding a second one. Goal: your existing addresses and balances visible, at the same addresses you had before. Prerequisites: the recovery phrase or private key, and knowledge of which wallet it came from. Safety: typing a phrase is the moment you are most exposed. Confirm you are in the real extension first. Check where you are typing Open the wallet from your own pinned toolbar icon. Never from a link, a pop-up window a page opened, or a page that looks like the wallet. A page cannot see what you type into the extension. A fake extension can see everything. ## What you can import Section titled “What you can import” Source Supported 12 or 24-word BIP-39 recovery phrase Yes BIP-39 passphrase, sometimes called a 25th word Yes, entered alongside the phrase Custom derivation path Yes Private key, WIF or hex Yes, as a single-key wallet An address only, with no key Not through this flow. See Watch-only wallets . ## Derivation presets Section titled “Derivation presets” The same phrase produces different addresses under different derivation paths, which is why an imported wallet can look empty when nothing is wrong. Universe Wallet offers presets that match how other wallets derive. Preset Address types it offers Unisat Wallet Native SegWit, Nested SegWit, Taproot, Legacy, and two BIP-44 compatibility variants Sparrow Wallet Legacy, Native SegWit, Nested SegWit, Taproot Xverse Wallet Nested SegWit, Taproot Ordinals Wallet Taproot Other wallet All six variants Universe Wallet scans the candidate paths and shows which of them have a balance or history, so you can pick the one that matches your old wallet rather than guessing. ## Steps Section titled “Steps” - Open the extension from your pinned icon. - Choose to import a wallet. - Enter the recovery phrase, in order. Add the BIP-39 passphrase if your old wallet used one. - Choose the preset for the wallet it came from, or set a custom derivation path. - Compare the addresses shown against an address you already know is yours. - Select the matching address type and finish. ## Expected result Section titled “Expected result” At least one address matches an address you used before, and the balance and history you expect appear against it. ## How to verify Section titled “How to verify” Take one address you have used in the past, and find it in the imported wallet. That single match proves the phrase, the passphrase, the path, and the address type are all correct together. A balance alone does not prove it, because a wrong path can still show an empty but valid wallet. ## Common failures Section titled “Common failures” What you see Most likely cause What to do Wallet imports but shows zero balance Wrong derivation path or address type Try the preset for your old wallet, then the other address types. One word is not accepted It is not in the BIP-39 word list Check spelling. Many words differ only in the last letters. Addresses are close but not the same A BIP-39 passphrase was used and is missing Enter the passphrase. Without it, this is a different wallet entirely. Balance appears but assets do not Asset data comes from indexers, which can lag Wait, then check Troubleshooting . ## Recovery path Section titled “Recovery path” Importing is non-destructive to the source wallet. Your phrase still works everywhere it worked before. If the import looks wrong, remove the imported wallet from Universe Wallet and try a different path or address type. Nothing about a failed import can move your coins. After importing, that phrase now lives in two places Every additional place a phrase exists is another way to lose it. If your old wallet was on a device you no longer control, treat the phrase as exposed and follow If your wallet is compromised . ## Related Section titled “Related” - Address types - Backup and recovery Edit page Last updated: Oct 9, 2026 Previous Create a wallet Next Back up your recovery phrase ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/constant/index.ts Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Install | Universe Wallet Where the real extension is, which browsers can run it, which permissions it asks for, and how to check that what you installed is what you meant to install. - Universe Wallet - Start here # Install Intended reader: anyone installing Universe Wallet for the first time. Goal: a working extension that came from the real listing. Prerequisites: a Chromium browser, Chrome 88 or later. Safety: installing a counterfeit wallet is the most common way people lose everything. Do not skip the verification step. ## The only install route Section titled “The only install route” The Chrome Web Store listing is Universe Bitcoin Wallet , item id fjalkkkbjffhgdoheannkodafhemfdba . Check that id in the address bar before you install. A counterfeit listing can copy the name, the icon, the screenshots, and the description. It cannot copy the id. There is no other official distribution No archive from a chat message. No file from a support agent. No “beta build” behind a link in a reply. No mirror site. If someone sends you a wallet to load manually, they are trying to take your coins. ## Browser support Section titled “Browser support” Browser Support Chrome 88 or later Yes. This is the target. The packaged extension declares Manifest V3 with a minimum Chrome version of 88. Edge, Brave, Opera, other Chromium browsers The same package runs on Chromium at that version or later. There is no separate store listing for them. Firefox Build targets exist in the source tree, but no Firefox listing is published. Treat Firefox as unavailable. Safari Not supported. Mobile browsers Not supported. Browser extensions do not run on mobile Chrome or mobile Safari. ## Permissions it asks for Section titled “Permissions it asks for” Every one of these is in the shipped manifest, and each has a narrow reason. Permission Why it is needed storage , unlimitedStorage Holds the encrypted vault, your settings, and cached asset data on your device. activeTab Lets a page you are on request a connection, only after you click the extension. declarativeNetRequest Applies the phishing policy that ships inside the extension. sidePanel Opens the wallet beside the page instead of as a popup. alarms Wakes the background worker so idle site connections expire on time. nativeMessaging , optional Requested only if you set up the Zcash companion. Not granted otherwise. Access to all sites A wallet cannot know in advance which site will request a connection. Nothing is read from a page until you approve that site. ## Steps Section titled “Steps” - Open the store listing and confirm the item id matches fjalkkkbjffhgdoheannkodafhemfdba . - Add the extension. - Pin it to the toolbar, so you always open the wallet from your own browser chrome rather than from something a page drew. - Open the wallet, go to Settings , then About , and note the version number. ## Expected result Section titled “Expected result” The extension opens to a welcome screen offering to create a new wallet or import an existing one. It holds no funds and no accounts yet. ## How to verify Section titled “How to verify” - The item id in the store URL matches the one above. - The version under Settings , then About , is one you can find in this documentation or in the release list . See Which version you are running for why that matters more than usual here. - The extension icon in your toolbar is the one you pinned, and it is where you open the wallet from. ## Common failures Section titled “Common failures” What you see What it means What to do The listing name matches but the id does not A counterfeit listing Do not install it. Report the listing to the store. The browser says the extension needs a newer version Your browser is older than Chrome 88 Update the browser. A site offers to install the wallet for you Phishing Close the tab and install from the store listing yourself. The extension installs but the popup is blank Usually a stalled service worker See Troubleshooting . ## Recovery path Section titled “Recovery path” Nothing at this stage can cost you money: the wallet holds no keys yet. If you suspect you installed something counterfeit, remove it, and do not enter any recovery phrase into it. If you already did, treat it as a compromise and follow If your wallet is compromised immediately. ## Next Section titled “Next” Create a wallet , or import an existing one . Edit page Last updated: Oct 9, 2026 Previous Which version you are running Next Create a wallet ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/dist/chrome/manifest.json, docs/STORE-LISTING.md Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Holding your own keys | Universe Wallet What self-custody actually transfers to you, the four irreversible facts it creates, and the habits that keep it survivable. - Universe Wallet - Start here # Holding your own keys Self-custody means the keys that authorize spending exist only on your device, protected by a password only you know, derived from a phrase only you hold. Nobody is holding a copy for you. Read that sentence twice, because everything below follows from it. ## The four facts Section titled “The four facts” ### 1. There is no password reset Section titled “1. There is no password reset” Your password unlocks one installation of the extension on one device. It is not an account credential. There is no email link, no identity check, no support override. If you forget it, you reinstall and restore from your recovery phrase. ### 2. The recovery phrase is the wallet Section titled “2. The recovery phrase is the wallet” Those words are not a hint or a backup code. They mathematically are every key in the wallet. Anyone who reads them owns everything they control, immediately and permanently, from anywhere. ### 3. A confirmed transaction is final Section titled “3. A confirmed transaction is final” Once a Bitcoin transaction confirms, no one can reverse it: not you, not Universe, not the miner, not the exchange on the other end. A wrong address is not a mistake you can appeal. ### 4. Nobody legitimate ever needs your phrase Section titled “4. Nobody legitimate ever needs your phrase” Not support, not a verification step, not a wallet upgrade, not a giveaway, not an airdrop claim, not a migration tool, not the person who says they are helping you recover it. There is no exception, and there never will be. See Phishing and impostors . ## The habits that make this survivable Section titled “The habits that make this survivable” - Write the phrase on paper before you fund the wallet. Not in a screenshot, not in a note app, not in a password manager sync you do not control, not in a message to yourself. - Fund it with a small amount first and move that amount out again, so you have practised the whole loop before it matters. - Read the approval screen every time, even when you are sure. The one you skim is the one that was different. - Keep a second wallet for connecting to applications you are trying for the first time, and keep your long-term holdings out of it. ## What Universe can and cannot do for you Section titled “What Universe can and cannot do for you” Universe can Universe cannot Serve the balances and asset data the wallet displays See or store your recovery phrase, keys, or password Ship a build that refuses to spend an asset-bearing coin by accident Move, freeze, or return your funds Publish which operations a release authorized Reverse a transaction you signed Answer documentation and product questions Recover a lost phrase, for anyone, ever Next: Which version you are running . Edit page Last updated: Oct 9, 2026 Previous What Universe Wallet is Next Which version you are running ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/service/keyring Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Which version you are running | Universe Wallet The published Chrome Web Store build is 1.0.13 from April 2025. This documentation describes the 1.7.5.8 source tree, which has not been published. Here is exactly what that means for you. - Universe Wallet - Start here # Which version you are running There are two version numbers in play, and confusing them is the easiest way to be misled by this site. This page exists so that you cannot be. ## The two numbers Section titled “The two numbers” Published to users Described here Version 1.0.13 1.7.5.8 Date 15 April 2025 Not published Where Chrome Web Store item fjalkkkbjffhgdoheannkodafhemfdba The bitcoinuniverseio/wallet source tree Zcash support Predates it entirely Present in source Protocol operations authorized Not verifiable from this source tree 0 of 42 What this means for you If you installed Universe Wallet from the Chrome Web Store, you are running 1.0.13. Screens described on this site may not exist in your build, may be laid out differently, or may behave differently. Where this documentation and your wallet disagree, your wallet is correct . Never take an action because a page here says a screen should be there. ## Why 1.7.5.8 is not published Section titled “Why 1.7.5.8 is not published” Two independent blockers were recorded in the product’s release ledger. One is closed, one is not. - No authorized artifact existed. This closed on 30 August 2026. A qualification campaign scoped to Zerdinals and ZRunes completed against one candidate commit, every release gate passed, and an authorization was produced covering thirteen operations across those two protocols and nothing else. - The Chrome Web Store publishing credential is not available to the repository. This still blocks submission. Nothing can be submitted regardless of readiness. So an artifact that could be published exists, and it has not been published. Until it is, the wallet people actually have installed is the April 2025 build. ## Why the committed source authorizes nothing Section titled “Why the committed source authorizes nothing” The number above says 0 of 42, and that is not an outage or an oversight. Authorization is not written into the source. It is attached at release time to one exact build, from externally verified evidence covering the wallet, the API, the indexer, the network, confirmation, and reconciliation. The baseline committed in the repository therefore authorizes nothing on purpose, so that no build can inherit a claim it did not earn. The consequence for reading this site: a page describing a protocol action is describing a screen that exists, not a screen that will work for you. See What this release authorizes and Why an action is unavailable . ## How to check your own build Section titled “How to check your own build” - Open the extension. - Go to Settings , then About . - Read the version shown there. That number, and the screens you can actually reach, are the authoritative answer for you. ## What this site does with that Section titled “What this site does with that” Every page carries a footer stating the release it was checked against and the date it was checked. Anything that could not be verified in the 1.7.5.8 source is stated as unavailable rather than described. The things that fell into that category are listed on Known limitations . Edit page Last updated: Oct 9, 2026 Previous Holding your own keys Next Install ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path docs/STORE-LISTING.md, docs/PUBLIC-CAPABILITY-SUMMARY.json Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # What Universe Wallet is | Universe Wallet A self-custody browser extension for Bitcoin, Dogecoin, Zcash, and Fractal Bitcoin, built so that coins carrying digital artifacts never fund an ordinary payment. - Universe Wallet - Start here # What Universe Wallet is Universe Wallet is a browser extension that holds Bitcoin and Bitcoin-adjacent chains, and that treats a coin carrying a digital artifact differently from a coin carrying only money. ## What it does Section titled “What it does” - Holds keys for Bitcoin, Dogecoin, Zcash, and Fractal Bitcoin , each with their test networks. - Generates keys on your device, encrypts them with a password you choose, and keeps them there. - Classifies every coin before spending, so an inscription or a token balance is not handed to a miner as change. - Shows what leaves, what returns, and at what fee before you approve any signature, with a confidence mark on every interpreted fact. - Grants a connected site one address on one network, for a window that expires. ## What it is not Section titled “What it is not” - Not a custodian. Universe cannot move your funds, cannot reverse a transaction, and cannot restore a recovery phrase you lost. That is the trade you made by holding your own keys. - Not an exchange or a broker. There is no buy button that takes your card, and nothing here is investment advice. - Not a way to make chain activity private. Bitcoin addresses and amounts are public. See Privacy . - Not a guarantee that a protocol works. The wallet ships a protocol action only when the exact build carries evidence for the whole path behind it. See What this release authorizes . ## Who it is for Section titled “Who it is for” Someone who owns digital artifacts on Bitcoin and wants to stop worrying that a routine payment will quietly spend one of them. If you only ever hold plain bitcoin, a simpler wallet will serve you as well, and this documentation will still be useful for the parts about reading a transaction. ## What to read next Section titled “What to read next” - Holding your own keys , if you have not done this before. - Which version you are running , which decides how much of this site applies to you. - Install . Edit page Last updated: Oct 9, 2026 Next Holding your own keys ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path README.md, docs/STORE-LISTING.md Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Developer Integration Studio | Universe Wallet Explore the generated provider contract, simulate every method, run the Compatibility Doctor, and download a working starter. # Developer Integration Studio # Developer Integration Studio Everything here is generated from the wallet's real provider surface - 45 methods, 6 events, namespaces tapwallet, tap_wallet, TapWallet, tapWallet, Tap_Wallet, universe, universewallet, UniverseWallet, bitcoinuniverse, bitcoinUniverse . The default playground runs a fake provider built from the contract: it reproduces shapes, events, and documented errors without contacting any wallet or network. This release authorizes 0 of 42 protocols. The simulation reproduces those refusals faithfully: methods whose protocol operation is unauthorized answer with the same error the real wallet gives, so your unavailable states get built against the truth. ","optional":false}],"category":"internal-ecosystem","effect":"mutation","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":false,"protocol":null,"operation":null,"semanticIntent":null,"releaseStatus":"available-without-protocol-authorization","releaseEvidence":null},{"id":"pushPsbt","requestMethod":"pushPsbt","aliases":[],"parameters":[{"name":"psbtHex","type":"string","optional":false}],"category":"broadcast","effect":"broadcast","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"bitcoin","operation":"broadcast","semanticIntent":"bitcoin-or-declared-protocol","releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"pushTx","requestMethod":"pushTx","aliases":[],"parameters":[{"name":"rawtx","type":"string","optional":false}],"category":"broadcast","effect":"broadcast","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":false,"protocol":"bitcoin","operation":"broadcast","semanticIntent":"bitcoin-or-declared-protocol","releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"requestAccounts","requestMethod":"requestAccounts","aliases":[],"parameters":[],"category":"connection-mutation","effect":"mutation","public":false,"accountSensitive":true,"requiresPermission":false,"requiresUnlock":false,"requiresApproval":true,"protocol":null,"operation":null,"semanticIntent":null,"releaseStatus":"available-without-protocol-authorization","releaseEvidence":null},{"id":"requestArc20Mint","requestMethod":"requestMint","aliases":["requestMint"],"parameters":[{"name":"options","type":"Omit | Record ","optional":false}],"category":"protocol-mutation","effect":"mutation","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"arc-20","operation":"mint","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"requestMint","requestMethod":"requestMint","aliases":[],"parameters":[{"name":"options","type":"Partial | Record ","optional":false}],"category":"protocol-mutation","effect":"mutation","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"arc-20","operation":"mint","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"sendBitcoin","requestMethod":"sendBitcoin","aliases":[],"parameters":[{"name":"toAddress","type":"string","optional":false},{"name":"satoshis","type":"number","optional":false},{"name":"options","type":"{ feeRate: number; memo?: string; memos?: string[] }","optional":true}],"category":"generic-bitcoin-transaction","effect":"broadcast","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"bitcoin","operation":"send","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"sendInscription","requestMethod":"sendInscription","aliases":[],"parameters":[{"name":"toAddress","type":"string","optional":false},{"name":"inscriptionId","type":"string","optional":false},{"name":"options","type":"{ feeRate: number }","optional":true}],"category":"protocol-mutation","effect":"broadcast","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"ordinals","operation":"transfer","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"sendRunes","requestMethod":"sendRunes","aliases":[],"parameters":[{"name":"toAddress","type":"string","optional":false},{"name":"runeid","type":"string","optional":false},{"name":"amount","type":"string","optional":false},{"name":"options","type":"{ feeRate: number }","optional":true}],"category":"protocol-mutation","effect":"broadcast","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"runes","operation":"transfer","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"sendZcashPayment","requestMethod":"sendZcashPayment","aliases":[],"parameters":[{"name":"request","type":"unknown","optional":false}],"category":"zcash","effect":"broadcast","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"zcash","operation":"payment.send","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signAndBroadcastPsbt","requestMethod":"signAndPushPsbt","aliases":["signAndPushPsbt"],"parameters":[{"name":"psbtHex","type":"string","optional":false},{"name":"options","type":"any","optional":true}],"category":"generic-bitcoin-transaction","effect":"broadcast","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"bitcoin","operation":"broadcast","semanticIntent":"bitcoin-or-declared-protocol","releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signAndPushPsbt","requestMethod":"signAndPushPsbt","aliases":[],"parameters":[{"name":"psbtHex","type":"string","optional":false},{"name":"options","type":"any","optional":true}],"category":"generic-bitcoin-transaction","effect":"broadcast","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"bitcoin","operation":"broadcast","semanticIntent":"bitcoin-or-declared-protocol","releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signData","requestMethod":"signData","aliases":[],"parameters":[{"name":"data","type":"string","optional":false},{"name":"type","type":"string","optional":false}],"category":"raw-signing","effect":"sign","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"bitcoin","operation":"sign","semanticIntent":"bitcoin-or-declared-protocol","releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signDogecoinMarketplaceAction","requestMethod":"signDogecoinMarketplaceAction","aliases":[],"parameters":[{"name":"preparedAction","type":"unknown","optional":false}],"category":"marketplace","effect":"sign","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"dogecoin-marketplace","operation":"marketplace","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signDogecoinMessage","requestMethod":"signDogecoinMessage","aliases":[],"parameters":[{"name":"message","type":"string","optional":false}],"category":"dogecoin","effect":"sign","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"dogecoin","operation":"sign","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signMessage","requestMethod":"signMessage","aliases":[],"parameters":[{"name":"text","type":"string","optional":false},{"name":"type","type":"string","optional":false}],"category":"raw-signing","effect":"sign","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"bitcoin","operation":"sign","semanticIntent":"bitcoin-or-declared-protocol","releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signPsbt","requestMethod":"signPsbt","aliases":[],"parameters":[{"name":"psbtHex","type":"string","optional":false},{"name":"options","type":"any","optional":true}],"category":"generic-bitcoin-transaction","effect":"sign","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"bitcoin","operation":"sign","semanticIntent":"bitcoin-or-declared-protocol","releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signPsbts","requestMethod":"multiSignPsbt","aliases":[],"parameters":[{"name":"psbtHexs","type":"string[]","optional":false},{"name":"options","type":"any[]","optional":true}],"category":"generic-bitcoin-transaction","effect":"sign","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"bitcoin","operation":"sign","semanticIntent":"bitcoin-or-declared-protocol","releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signZcashMarketListing","requestMethod":"signZcashMarketListing","aliases":[],"parameters":[{"name":"request","type":"unknown","optional":false}],"category":"zcash","effect":"sign","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"zerdinals","operation":"market-list","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signZcashMarketSettlement","requestMethod":"signZcashMarketSettlement","aliases":[],"parameters":[{"name":"request","type":"unknown","optional":false}],"category":"zcash","effect":"sign","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"zerdinals","operation":"market-settle","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"signZcashTransaction","requestMethod":"signZcashTransaction","aliases":[],"parameters":[{"name":"request","type":"unknown","optional":false}],"category":"zcash","effect":"sign","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":"zerdinals","operation":"sign","semanticIntent":null,"releaseStatus":"not-authorized-in-this-release","releaseEvidence":null},{"id":"switchChain","requestMethod":"switchChain","aliases":[],"parameters":[{"name":"chain","type":"string","optional":false}],"category":"network-mutation","effect":"mutation","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":null,"operation":null,"semanticIntent":null,"releaseStatus":"available-without-protocol-authorization","releaseEvidence":null},{"id":"switchNetwork","requestMethod":"switchNetwork","aliases":[],"parameters":[{"name":"network","type":"string","optional":false}],"category":"network-mutation","effect":"mutation","public":false,"accountSensitive":true,"requiresPermission":true,"requiresUnlock":true,"requiresApproval":true,"protocol":null,"operation":null,"semanticIntent":null,"releaseStatus":"available-without-protocol-authorization","releaseEvidence":null},{"id":"verifyMessageOfBIP322Simple","requestMethod":"verifyMessageOfBIP322Simple","aliases":[],"parameters":[{"name":"address","type":"string","optional":false},{"name":"message","type":"string","optional":false},{"name":"signature","type":"string","optional":false},{"name":"network","type":"number","optional":true}],"category":"public-read","effect":"read","public":true,"accountSensitive":false,"requiresPermission":false,"requiresUnlock":false,"requiresApproval":false,"protocol":null,"operation":null,"semanticIntent":null,"releaseStatus":"available-without-protocol-authorization","releaseEvidence":null}]" data-overlay="{"requestAccounts":{"explanation":"Opens the connection approval. If the user approves, the site receives the account identifier it may show; if they reject, the promise rejects.","safetyNote":"This is the one call that may interrupt the user with a window. Call it only from a direct, labeled user action such as a Connect button, and always handle rejection as a normal outcome, not an error state.","example":"try {\n const accounts = await provider.requestAccounts();\n render(accounts[0]);\n} catch {\n render('Connection declined. Nothing was shared.');\n}","relatedGuide":"/docs-wallet/tasks/connect-an-application","simulatedScenarios":["success","rejection","locked"]},"disconnect":{"explanation":"Ends the site's connection. After it resolves, account methods refuse until the user connects again.","safetyNote":"Offer a visible Disconnect control. A connection a user cannot see or end is a trust failure.","example":"await provider.disconnect();","relatedGuide":"/docs-wallet/tasks/manage-connections","simulatedScenarios":["success"]},"getAccounts":{"explanation":"Returns the connected account identifier, or an empty result when the site is not connected.","safetyNote":"An empty result is a normal state, not an error. Never request accounts again automatically; show a Connect button.","example":"const accounts = await provider.getAccounts();\nif (!accounts.length) showConnectButton();","relatedGuide":"/docs-wallet/tasks/connect-an-application","simulatedScenarios":["success","disconnected"]},"getEcosystemState":{"explanation":"Reads the wallet session state that first-party ecosystem surfaces use. Third-party sites have no reason to call it.","safetyNote":"The response is account-adjacent. Treat it as sensitive and never log it.","example":"// First-party surfaces only.\nconst session = await provider.getEcosystemState();","relatedGuide":null,"simulatedScenarios":["unauthorized"]},"publishEcosystemEvent":{"explanation":"Publishes an internal ecosystem event between first-party surfaces.","safetyNote":"Not a third-party API. Calls from ordinary sites are refused.","example":"// First-party surfaces only.\nawait provider.publishEcosystemEvent(event);","relatedGuide":null,"simulatedScenarios":["unauthorized"]},"getNetwork":{"explanation":"Returns the active network for the Bitcoin chain, such as MAINNET or TESTNET.","safetyNote":"Read-only and safe. Always display the network beside any balance or address you render.","example":"const network = await provider.getNetwork();","relatedGuide":"/docs-wallet/concepts/chains-and-networks","simulatedScenarios":["success"]},"switchNetwork":{"explanation":"Asks the wallet to change the Bitcoin network. The user sees a confirmation.","safetyNote":"Never switch networks on the user's behalf without a labeled action and a clear explanation of what changes.","example":"await provider.switchNetwork('TESTNET');","relatedGuide":"/docs-wallet/tasks/switch-chain-and-network","simulatedScenarios":["success","rejection"]},"getChain":{"explanation":"Returns the active chain identifier.","safetyNote":"Read-only. Re-read it after any chainChanged event instead of caching it forever.","example":"const chain = await provider.getChain();","relatedGuide":"/docs-wallet/concepts/chains-and-networks","simulatedScenarios":["success"]},"switchChain":{"explanation":"Opens the chain-switch approval the user must confirm. The request names both the current and the target chain.","safetyNote":"A chain switch changes where every subsequent signature applies. Say which chain your feature needs and why before requesting.","example":"await provider.switchChain('BITCOIN_TESTNET');","relatedGuide":"/docs-wallet/tasks/switch-chain-and-network","simulatedScenarios":["success","rejection"]},"getPublicKey":{"explanation":"Returns the public key of the connected account.","safetyNote":"A public key is not a secret, but it is account-identifying. Publish it only where the user expects their identity to appear.","example":"const pubkey = await provider.getPublicKey();","relatedGuide":"/docs-wallet/concepts/addresses","simulatedScenarios":["success","locked"]},"getBalance":{"explanation":"Returns the connected account's confirmed balance in satoshis.","safetyNote":"Balances go stale. Prefer getBalanceV2, which separates available from unavailable funds.","example":"const { confirmed } = await provider.getBalance();","relatedGuide":"/docs-wallet/concepts/inputs-outputs-fees","simulatedScenarios":["success"]},"getBalanceV2":{"explanation":"Returns the balance split into total, available, unavailable, and pending-confirm parts. The unavailable part includes outputs the wallet protects.","safetyNote":"Always render the split, not just the total. A user who sees 1,000,000 sats total but can only spend 800,000 deserves to know why before they blame your app.","example":"const balance = await provider.getBalanceV2();\nrender(balance.totalBalance, balance.availableBalance, balance.unavailableBalance);","relatedGuide":"/docs-wallet/concepts/protected-outputs","simulatedScenarios":["success"]},"getInscriptions":{"explanation":"Lists the connected account's inscriptions with paging.","safetyNote":"Inscription content is third-party media. Load it lazily and sandbox it like any untrusted image.","example":"const { list, total } = await provider.getInscriptions(0, 20);","relatedGuide":"/docs-wallet/assets/what-a-digital-artifact-is","simulatedScenarios":["success"]},"getBitcoinUtxos":{"explanation":"Lists unspent outputs for the connected account, including which carry inscriptions or runes.","safetyNote":"UTXO selection decides which artifacts move. If your app spends specific outputs, show the user exactly which ones.","example":"const { list } = await provider.getBitcoinUtxos(0, 20);","relatedGuide":"/docs-wallet/tasks/coin-control","simulatedScenarios":["success","locked"]},"verifyMessageOfBIP322Simple":{"explanation":"Checks a BIP-322 signature against a message and address without any wallet involvement.","safetyNote":"Verification is pure and public: it never touches the user's wallet. A valid proof says the key holder signed; it says nothing about why.","example":"const ok = await provider.verifyMessageOfBIP322Simple({\n address,\n message,\n signature,\n});","relatedGuide":"/docs-wallet/tasks/sign-a-message","simulatedScenarios":["success"]},"isAtomicalsEnabled":{"explanation":"Reports whether the Atomicals view is enabled in this build.","safetyNote":"The answer is build-specific and can differ between releases. Feature-detect instead of assuming.","example":"const enabled = await provider.isAtomicalsEnabled();","relatedGuide":"/docs-wallet/assets/support-state","simulatedScenarios":["success"]},"getCapabilities":{"explanation":"Returns what this wallet build can do right now: which protocol operations are authorized and which are not. This is the method to call before offering any feature.","safetyNote":"An operation the wallet reports as unauthorized stays unauthorized no matter what your UI promises. Gate every send, sign, or mint control behind this answer, and render unavailable states as first-class UI.","example":"const capabilities = await provider.getCapabilities();\nif (!capabilities.anyProtocolSupported) {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/reference/supported-features","simulatedScenarios":["success"]},"getFeatures":{"explanation":"Returns feature flags for this wallet build.","safetyNote":"Flags describe this build, not the protocol landscape. Never ship a feature that assumes a flag is true everywhere.","example":"const features = await provider.getFeatures();","relatedGuide":"/docs-wallet/reference/supported-features","simulatedScenarios":["success"]},"getVersion":{"explanation":"Returns the wallet's version string. Use it to show users which build they are running and to verify the one you documented against.","safetyNote":"Version detection is read-only and safe, but it identifies the wallet. Call it from a labeled action and show exactly what was detected.","example":"const version = await provider.getVersion();","relatedGuide":"/docs-wallet/start/versions","simulatedScenarios":["success"]},"getDogecoinMarketplaceAccount":{"explanation":"Returns the Dogecoin marketplace account view for the connected user.","safetyNote":"Account reads are per-chain. A Bitcoin connection says nothing about Dogecoin access.","example":"const account = await provider.getDogecoinMarketplaceAccount();","relatedGuide":"/docs-wallet/assets/dogecoin-marketplace","simulatedScenarios":["unauthorized"]},"getDogecoinMarketplaceFundingInputs":{"explanation":"Returns outputs the marketplace can use as funding inputs, subject to a minimum value.","safetyNote":"Funding inputs are still the user's money. Show which outputs a listing would spend before any signature.","example":"const inputs = await provider.getDogecoinMarketplaceFundingInputs('100000000', 20);","relatedGuide":"/docs-wallet/assets/dogecoin-marketplace","simulatedScenarios":["unauthorized"]},"sendBitcoin":{"explanation":"Requests a Bitcoin transfer. In a build whose release authorizes sending, this opens the full transaction review; the wallet signs and broadcasts only after the user approves.","safetyNote":"This release authorizes no sending operation, so the call refuses with a protocol-authorization error. Render that refusal as the unavailable state it is; never hide the button behind retries.","example":"try {\n const txid = await provider.sendBitcoin(toAddress, satoshis, { feeRate });\n} catch (error) {\n // Protocol operation is not authorized: bitcoin.send in this build.\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/tasks/send","simulatedScenarios":["unauthorized"]},"sendInscription":{"explanation":"Requests an inscription transfer. The wallet reviews the protected-asset movement before any signature.","safetyNote":"Unauthorized in this release. A refused inscription transfer moved nothing; say so plainly.","example":"try {\n await provider.sendInscription(toAddress, inscriptionId, { feeRate });\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/tasks/send","simulatedScenarios":["unauthorized"]},"sendRunes":{"explanation":"Requests a runes transfer between addresses.","safetyNote":"Unauthorized in this release. The refusal is the fail-closed gate working.","example":"try {\n await provider.sendRunes(toAddress, runeid, amount, { feeRate });\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/tasks/send","simulatedScenarios":["unauthorized"]},"signMessage":{"explanation":"Requests a signature over readable text. The approval shows the exact message a key would commit to.","safetyNote":"Unauthorized in this release: the provider refuses before any approval appears. When a future release authorizes it, read the message on the approval screen as if it were a public statement under your name, because it is.","example":"try {\n const signature = await provider.signMessage('Hello', 'utf8');\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/tasks/sign-a-message","simulatedScenarios":["unauthorized"]},"signData":{"explanation":"Requests a signature over raw bytes. The approval states the byte length because the content may not be readable.","safetyNote":"Unauthorized in this release. Signing unreadable data is how users sign things they never agreed to; the length warning on the approval is the tell.","example":"try {\n const signature = await provider.signData(hexData, 'hex');\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/concepts/what-a-signature-authorizes","simulatedScenarios":["unauthorized"]},"multiSignMessage":{"explanation":"Requests signatures over several messages in one approval flow.","safetyNote":"Unauthorized in this release. Bulk signing multiplies the review burden; each message still needs its own read.","example":"try {\n const signatures = await provider.multiSignMessage(messages);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/tasks/sign-a-message","simulatedScenarios":["unauthorized"]},"signPsbt":{"explanation":"Requests signatures on a PSBT. The approval renders the decoded transaction: inputs, outputs, fee, and which inputs are yours.","safetyNote":"Unauthorized in this release. When authorized, the review screen is the whole safety model; nothing signs before it is read.","example":"try {\n const { psbt, txids } = await provider.signPsbt(psbtHex, { autoFinalized: true });\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/tasks/review-a-psbt","simulatedScenarios":["unauthorized"]},"signPsbts":{"explanation":"Requests signatures on several PSBTs through the same review path (a batch form of multiSignPsbt).","safetyNote":"Unauthorized in this release. Batch reviews are where 'I checked the first one' lives. Every transaction in the batch gets its own read.","example":"try {\n const results = await provider.signPsbts(psbtHexs);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/tasks/review-a-psbt","simulatedScenarios":["unauthorized"]},"signAndPushPsbt":{"explanation":"Reviews, signs, and broadcasts a PSBT in one approval when the release authorizes it.","safetyNote":"Unauthorized in this release. Approval here means broadcasting: after it, the transaction is public and paying fees.","example":"try {\n const txid = await provider.signAndPushPsbt(psbtHex, { autoFinalized: true });\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/tasks/review-a-psbt","simulatedScenarios":["unauthorized"]},"signAndBroadcastPsbt":{"explanation":"Alias of signAndPushPsbt kept for ecosystem compatibility.","safetyNote":"Unauthorized in this release. Prefer the explicit name in new code; aliases hide the broadcast from readers.","example":"try {\n const txid = await provider.signAndBroadcastPsbt(psbtHex, { autoFinalized: true });\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/tasks/review-a-psbt","simulatedScenarios":["unauthorized"]},"pushTx":{"explanation":"Broadcasts a raw signed transaction to the network.","safetyNote":"Unauthorized in this release. Broadcasting is the point of no return: once a transaction is public, fees are spent and mempools keep copies.","example":"try {\n const txid = await provider.pushTx(rawTxHex);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/concepts/inputs-outputs-fees","simulatedScenarios":["unauthorized"]},"pushPsbt":{"explanation":"Broadcasts an already-signed PSBT.","safetyNote":"Unauthorized in this release. A signed PSBT broadcast without review can spend outputs its signer never intended to combine.","example":"try {\n const txid = await provider.pushPsbt(signedPsbtHex);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/tasks/review-a-psbt","simulatedScenarios":["unauthorized"]},"inscribeTransfer":{"explanation":"Requests a BRC-20 transfer inscription.","safetyNote":"Unauthorized in this release; the refusal reflects the protocol authorization, not a network failure.","example":"try {\n await provider.inscribeTransfer(ticker, amount);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/assets/support-state","simulatedScenarios":["unauthorized"]},"requestMint":{"explanation":"Requests an ARC-20 mint operation.","safetyNote":"Unauthorized in this release. Mints spend fees; the gate exists so no build mints on a claim it did not earn.","example":"try {\n await provider.requestMint({ ticker, amount });\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/assets/support-state","simulatedScenarios":["unauthorized"]},"requestArc20Mint":{"explanation":"Alias of requestMint for ARC-20 mints.","safetyNote":"Unauthorized in this release. Same gate, older name.","example":"try {\n await provider.requestArc20Mint({ ticker, amount });\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/assets/support-state","simulatedScenarios":["unauthorized"]},"signDogecoinMessage":{"explanation":"Requests a Dogecoin message signature.","safetyNote":"Unauthorized in this release. Chain-specific signatures commit chain-specific keys; a Bitcoin approval never covers Dogecoin.","example":"try {\n await provider.signDogecoinMessage(message);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/concepts/what-a-signature-authorizes","simulatedScenarios":["unauthorized"]},"signDogecoinMarketplaceAction":{"explanation":"Requests a signature over a prepared marketplace action.","safetyNote":"Unauthorized in this release. Marketplace signatures can authorize listings; the prepared action deserves the same read a transaction gets.","example":"try {\n await provider.signDogecoinMarketplaceAction(preparedAction);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/assets/dogecoin-marketplace","simulatedScenarios":["unauthorized"]},"getZcashAccount":{"explanation":"Returns the Zcash account view for the connected user.","safetyNote":"Zcash support is separate from Bitcoin authorization. Presence of the method is not presence of authorization.","example":"const account = await provider.getZcashAccount();","relatedGuide":"/docs-wallet/concepts/chains-and-networks","simulatedScenarios":["unauthorized"]},"getZcashBalance":{"explanation":"Returns the Zcash balance view.","safetyNote":"Read-only. Display it beside the chain name so balances are never ambiguous.","example":"const balance = await provider.getZcashBalance();","relatedGuide":"/docs-wallet/concepts/chains-and-networks","simulatedScenarios":["unauthorized"]},"sendZcashPayment":{"explanation":"Requests approval to send a Zcash payment.","safetyNote":"Unavailable in this release. Requires wallet permission, an unlocked account, and explicit approval; check the current capability response before offering this action.","example":"try {\n await provider.sendZcashPayment(request);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/concepts/what-a-signature-authorizes","simulatedScenarios":["unauthorized"]},"signZcashTransaction":{"explanation":"Requests a Zcash transaction signature.","safetyNote":"Unauthorized in this release. Zcash signing commits Zcash keys; the Bitcoin authorization snapshot says nothing about it.","example":"try {\n await provider.signZcashTransaction(request);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/concepts/what-a-signature-authorizes","simulatedScenarios":["unauthorized"]},"signZcashMarketListing":{"explanation":"Requests a signature over a Zcash market listing.","safetyNote":"Unauthorized in this release. Listings can bind assets to terms; read the listing like a contract.","example":"try {\n await provider.signZcashMarketListing(request);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/assets/zcash-market-listings","simulatedScenarios":["unauthorized"]},"broadcastZcashTransaction":{"explanation":"Broadcasts a signed Zcash transaction.","safetyNote":"Unauthorized in this release. Broadcasting is irreversible on every chain.","example":"try {\n await provider.broadcastZcashTransaction(request);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/concepts/inputs-outputs-fees","simulatedScenarios":["unauthorized"]},"signZcashMarketSettlement":{"explanation":"Requests a signature for a Zcash market settlement.","safetyNote":"Unavailable in this release. Requires wallet permission, an unlocked account, and explicit approval; check the current capability response before offering this action.","example":"try {\n await provider.signZcashMarketSettlement(request);\n} catch {\n renderUnavailableState();\n}","relatedGuide":"/docs-wallet/concepts/what-a-signature-authorizes","simulatedScenarios":["unauthorized"]}}" data-events="["connect","unlock","lock","disconnect","accountsChanged","networkChanged"]" data-namespaces="["tapwallet","tap_wallet","TapWallet","tapWallet","Tap_Wallet","universe","universewallet","UniverseWallet","bitcoinuniverse","bitcoinUniverse"]" data-wallet-version="1.7.5.8" data-any-protocol-supported="false" class="astro-qndvf3hr"> The studio needs JavaScript to run the simulated provider. The complete method reference with parameters and safety notes is available without JavaScript in the provider API reference . ## Configuring the documentation MCP server Machine-readable documentation, including a read-only MCP server for AI clients, is described on machine-readable documentation . Something wrong on this page? Open a prefilled issue in the documentation repository. What travels: the page path, the release this site describes, and your own words. Nothing about your wallet, transactions, or this browser is included or stored by this site. Page not helpful Stale screenshot Version mismatch Unsafe or unclear wording Broken journey Previous Provider API Next Machine-readable docs and MCP ## Where this page comes from Owning repository bitcoinuniverseio/wallet Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental - Bitcoin Universe documentation portal - Report a documentation error # Redirecting to: /docs-wallet/help/support Redirecting to: /docs-wallet/help/support - Redirecting from /docs-wallet/support/ to /docs-wallet/help/support # Read your activity | Universe Wallet What pending really means, how many confirmations to wait for, and what to do about a transaction that will not confirm. - Universe Wallet - Everyday tasks # Read your activity Intended reader: anyone waiting on a transaction, or checking what happened. Goal: correctly reading the state of your own money. Prerequisites: an unlocked wallet. ## The states Section titled “The states” State Meaning Pending Broadcast, sitting in the mempool, not in a block. It can still be dropped. Confirmed Included in a block. Each new block adds a confirmation. Failed A failure was reported. Check the recorded evidence to distinguish a rejected request from an unknown outcome. A timeout, interrupted page or error message alone does not establish that no funds moved or no fee was paid. For a marketplace purchase, keep the existing execution or request reference and return to that purchase to check its recorded status. Do not start a replacement purchase or clear wallet storage to resolve an uncertain outcome. See Zcash market listings . ## How many confirmations Section titled “How many confirmations” There is no universal answer, only a risk judgement. - One confirmation is enough for a small payment between people who trust each other. - Three confirmations is a common threshold for ordinary amounts. - Six confirmations is the traditional benchmark for something you would mind losing. An unconfirmed transaction is not a payment. If someone tells you they have sent funds and your wallet shows pending, you have a promise, not money. ## When something will not confirm Section titled “When something will not confirm” The fee rate was below what blocks are currently clearing. This wallet has no way to speed up a stuck transaction There is no fee bump, no speed up, and no child-pays-for-parent flow in Universe Wallet 1.7.5.8. If a transaction is stuck, your options are: wait for the mempool to quieten, in which case it may confirm eventually; or, if it was marked replaceable when you created it, build a replacement using separate software that supports replacement. A transaction that is never mined is eventually dropped by nodes and the coins become spendable again, but there is no fixed timetable for that. Marking a transaction replaceable at creation does not give you a control in this wallet for replacing it later. That is why choosing the fee carefully the first time matters more here than in wallets that offer a bump. ## Reading an entry Section titled “Reading an entry” Each entry shows the amount, the direction, the fee, the counterparty address, and the transaction id. The transaction id is the thing you can hand to anyone: it is public, it is verifiable independently, and it does not reveal anything about your wallet beyond what the chain already shows. ## Where asset movements appear Section titled “Where asset movements appear” Asset transfers appear alongside payments, subject to the wallet being able to read them. Asset data comes from indexers, which read the chain and decide what a transaction meant. Indexers can lag behind confirmations, so a confirmed transaction can briefly show a payment without its asset effect. If the wallet cannot read a protocol at all, the payment still appears and the asset effect does not. See What this release authorizes . ## Common failures Section titled “Common failures” What you see What it means What to do Pending for hours Fee below current clearing rate Wait. See the warning above. A transaction you do not recognise Either a change output you misread, or a real problem Check whether the destination is your own address. If not, go to If your wallet is compromised Confirmed but the asset has not moved Indexer lag, or an unsupported protocol Wait, then check Troubleshooting Activity is empty after a restore Wrong address type or derivation path See Address types ## Related Section titled “Related” - Choose a fee - Inputs, outputs, fees, change Edit page Last updated: Oct 9, 2026 Previous Switch chain and network Next Watch-only wallets ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Wallet/HistoryScreen/index.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-17 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Choose a fee | Universe Wallet What the presets mean, how to pick a custom rate, and why the choice matters more here than in most wallets. - Universe Wallet - Everyday tasks # Choose a fee Intended reader: anyone about to send. Goal: a transaction that confirms in the time you need, without overpaying. Prerequisites: a send in progress. Safety: picking too low is not recoverable inside this wallet. Read the warning. ## What you are choosing Section titled “What you are choosing” Not an amount. A rate , in satoshis per virtual byte. The wallet multiplies that rate by the size of the transaction it built to get the fee. See Inputs, outputs, fees, change . Two payments of the same value can carry very different fees, because one spends more coins than the other and is therefore physically larger. ## The presets Section titled “The presets” The wallet offers live presets alongside a custom option. In the source they are labelled Standard, Fast, Instant, and Custom, ordered from cheapest and slowest to most expensive and quickest. Preset Use it when Standard Nothing is waiting on this. Hours are fine. Fast You want it in the next few blocks. Instant It is time-sensitive, or the mempool is busy and you cannot wait. Custom You have a specific rate in mind and know why. Presets are computed from current network conditions, so their sat/vB values move. The number shown at the moment you approve is the one that applies. ## Setting a custom rate Section titled “Setting a custom rate” Enter the rate in sat/vB. The review screen shows the resulting fee amount before you approve, so you can check the arithmetic against your expectation. A rate below what blocks are currently clearing will sit unconfirmed for a long time, possibly indefinitely if the network stays busy. Choose carefully, because there is no fee bump here Universe Wallet 1.7.5.8 has no fee-bump, speed-up, or child-pays-for-parent flow. A transaction sent at too low a rate can only be waited out, or replaced using separate software. This is different from wallets that let you raise the fee afterwards, and it is the single most important thing to know before choosing a rate. ## When the fee looks too high Section titled “When the fee looks too high” Almost always because the transaction has many inputs. Check the input list on the review screen. A payment funded from twenty small coins is large and therefore expensive, regardless of the amount. Options: - Send a different amount, so a smaller set of coins covers it. - Use coin control to select fewer, larger coins where the flow allows it. See Coin control . - Wait for a quieter period, if the payment is not urgent. ## Expected result Section titled “Expected result” The review screen shows the fee as an amount and a rate. After broadcast, the activity entry shows the same fee. ## How to verify Section titled “How to verify” Compare the fee on the review screen with the fee in your activity entry. They should match exactly. If the confirmation is slower than the preset suggested, that is network behaviour, not a wallet error: a preset is an estimate of conditions, not a promise. ## Related Section titled “Related” - Send bitcoin - Review a transaction Edit page Last updated: Oct 9, 2026 Previous Send bitcoin Next Review a transaction ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/constant/index.ts Applicable release Universe Wallet 1.7.5.8 Chain bitcoin Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Coin control | Universe Wallet Where manual coin selection actually exists in this build, what the locked-coins and coin-health screens show, and what is not available. - Universe Wallet - Everyday tasks # Coin control Intended reader: someone who wants to decide which coins fund a transaction. Goal: control over selection, or a clear understanding of where you do not have it. Prerequisites: an unlocked wallet. Safety: selecting the wrong coin is how an artifact gets spent. The protection described in Protected outputs is what stops that on the default path. Where manual selection exists, and where it does not In Universe Wallet 1.7.5.8, manual coin selection is offered inside the PSBT approval flow , where a request lets you choose which of your coins fund it. There is no standalone coin control screen that lets you pick inputs for an ordinary send before you build it. If you were expecting a general purpose coin picker on the send screen, it is not there. ## What is there Section titled “What is there” ### Locked coins Section titled “Locked coins” A screen listing the coins currently held back from ordinary payments, and why each one is held. It has no protocol gate, so it is present regardless of what your build authorizes. This is the screen to open when your available balance is lower than your total and you want to know which coins account for the difference. ### Coin health Section titled “Coin health” An overview of the shape of your coin set: how many coins you hold, how they are distributed, and how much is protected. Useful before a large payment, because a wallet made of many small coins produces large, expensive transactions. ### Manual selection during PSBT approval Section titled “Manual selection during PSBT approval” When a signature request allows it, the approval screen offers a selector for which of your coins fund the transaction. Protected coins are excluded from that selector unless you are in a flow built for moving that asset. ### Consolidation Section titled “Consolidation” A consolidation screen exists, combining many small coins into fewer larger ones. It sits behind the bitcoin/send gate, so its availability depends on your build. ## Why you would consolidate Section titled “Why you would consolidate” Fees follow transaction size, and size follows the number of inputs. A wallet holding fifty small coins pays much more to make a payment than a wallet holding three large ones. Consolidating during a quiet, low-fee period is cheaper than being forced to consolidate during a busy one. Never consolidate blindly Consolidation touches many coins at once, which is exactly the operation that can sweep an asset-bearing output into a payment if protection is not doing its job. Read the input list on the review screen before approving a consolidation, and confirm no protected coin appears in it. ## Locking a coin yourself Section titled “Locking a coin yourself” You can mark a coin as locked, which keeps it out of ordinary payments the same way an asset-bearing coin is kept out. Locks are device settings: they do not travel with your recovery phrase, and a restore will not bring them back. ## Expected result Section titled “Expected result” - You can see which coins are held back and why. - Where a flow offers selection, you choose which coins it uses. - Consolidation, where available, reduces the number of coins you hold. ## Common failures Section titled “Common failures” What you see What it means No coin picker on the send screen Correct for this build. Selection is offered in the PSBT approval flow, not the send flow. A coin you want to spend is not selectable It is protected. See Protected outputs . Consolidation says it is not available in this build The bitcoin/send gate is not authorized in your release ## Related Section titled “Related” - Protected outputs - Inputs, outputs, fees, change - Review a PSBT Edit page Last updated: Oct 9, 2026 Previous Manage connections Next Switch chain and network ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/services/manualUtxoSelectionService.ts, frontend/ui/pages/Utxo Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Connect an application | Universe Wallet Approve a site's connection request, choose the idle window, and check the one line on the screen that a hostile page cannot forge. - Universe Wallet - Everyday tasks # Connect an application Intended reader: anyone using a site that wants to talk to the wallet. Goal: the site able to see one address and ask for signatures, and nothing more. Prerequisites: an unlocked wallet and a site that requested a connection. Safety: connecting cannot move funds. Connecting to an impostor site is still how signature attacks begin. ## Steps Section titled “Steps” - On the site, choose to connect a wallet, and pick Universe Wallet. - The wallet opens an approval window. - Read the origin line. It comes from the browser, not from the page. A page can print any brand it likes in its own body; it cannot change this line. - Confirm the account and network being offered are the ones you want the site to see. - Choose the idle window : 24 hours, 7 days, 30 days, which is the default, or until you disconnect. - Approve, or reject. ## Expected result Section titled “Expected result” The site shows you as connected and can read the address you selected. It appears in your Connected sites list with its granted scope and last-used time. ## How to verify Section titled “How to verify” - The origin in your address bar matches the origin shown by the wallet. - The site displays the address you expected, and no other. - The connection is listed under Connected sites . ## What it can and cannot do afterwards Section titled “What it can and cannot do afterwards” Granted: reading one address on one network, reading the public data at that address, and asking you for signatures. Never granted: your recovery phrase, your private keys, moving a coin without a fresh approval, your other accounts and networks, or the contents of pages you visit. See Connection permissions for the whole boundary. ## Choosing the idle window Section titled “Choosing the idle window” It is an idle timer, not an age limit. Every use restarts it. - 24 hours for a site you are trying once. - 7 days for something you use occasionally. - 30 days , the default, for a site you use regularly. - Until you disconnect only for a site you genuinely rely on and would notice going wrong. Shorter is safer, and the cost of it expiring is one extra approval. ## Common failures Section titled “Common failures” What you see What it means What to do The site says connected, the wallet does not list it The page is faking a connection state Leave. Do not sign anything. The approval window did not appear The extension service worker may be asleep Open the extension from your toolbar, then retry The origin does not match the address bar You are on an impostor page, or in a frame you did not expect Reject and close the tab The site asks you to connect again every visit The idle window is short, or you are in a private window Choose a longer window if you trust it ## Recovery path Section titled “Recovery path” Reject at any time. If you already connected and regret it, open Connected sites and disconnect. Disconnecting stops new requests; it does not undo a signature you already gave. See Manage connections . ## Related Section titled “Related” - Connection permissions - Provider API Edit page Last updated: Oct 9, 2026 Previous Sign a message Next Manage connections ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Approval/components/Connect.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Hardware wallets | Universe Wallet Keystone is the one hardware integration present in this build. Ledger and Trezor are shown as coming soon and cannot be connected. - Universe Wallet - Everyday tasks # Hardware wallets Intended reader: someone who wants keys held on a dedicated device rather than in a browser. Goal: signing on hardware, with the extension used only to build and broadcast. Prerequisites: a Keystone device. Safety: verify every address and every amount on the device screen , not in the browser. ## What is available Section titled “What is available” Device State in this build Keystone Connectable. Air-gapped QR, and USB. Ledger Listed, and disabled. The connect control shows coming soon and cannot be used. Trezor Listed, and disabled, the same way. Any other device Not integrated. Use the watch-only flow and sign elsewhere. The hardware feature is marked experimental in the product itself Verify addresses on the device. Start with a small amount and complete the whole loop, receive, send, and confirm, before you move anything significant onto it. ## Why hardware helps Section titled “Why hardware helps” The private keys stay on a device that has no browser, no extensions, and no web pages. Even a fully compromised computer cannot extract them. What it can still do is show you a transaction that is not what you think it is, which is why the device screen matters more than the browser screen. ## Steps, Keystone Section titled “Steps, Keystone” - Open the wallet and add a hardware wallet. - Choose Keystone. - Connect over USB, or scan the QR sequence the device shows for the air-gapped path. - Select the account and address type. See Address types . - Verify the first address shown in the extension against the device screen. ## Signing Section titled “Signing” - Build the transaction in the extension as usual. - The extension hands it to the device, over USB or as a QR sequence. - Read the transaction on the device screen. Amount, destination, fee. - Approve on the device. - Return the signature to the extension, which broadcasts it. The device screen is the one that counts A compromised computer can show you one destination in the browser and pass a different one to the device. The device screen is outside that computer’s control. If they disagree, the device is right and you should reject. ## Expected result Section titled “Expected result” A wallet whose keys are on the device. The extension can build transactions and show balances, and cannot sign anything on its own. ## Common failures Section titled “Common failures” What you see What it means What to do Ledger or Trezor is disabled, reading Coming soon Not implemented as a connection in this build Use Keystone, or watch-only The device is not detected over USB Browser permission, cable, or firmware Try the air-gapped QR path instead Addresses differ between device and extension Address type or derivation path mismatch Fix before receiving anything The QR sequence will not complete Screen brightness, camera focus, or a partial scan Restart the sequence from the beginning ## Recovery path Section titled “Recovery path” A hardware wallet has its own recovery phrase, held by the device, not by Universe Wallet. Losing the device is survivable if you have that phrase. Losing the phrase is not, exactly as described in Backup and recovery . ## Related Section titled “Related” - Watch-only wallets - Known limitations Edit page Last updated: Oct 9, 2026 Previous Watch-only wallets Next Security dashboard ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Main/ConnectHardwareModal.tsx, frontend/ui/pages/Account/CreateKeystoneWalletScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Inspect a Lightning invoice | Universe Wallet Read invoice details without sending a payment. - Universe Wallet - Everyday tasks # Inspect a Lightning invoice This flow belongs to the unreleased Wallet source candidate. It is not a claim that your installed store release supports Lightning payments. Open Send Lightning , paste a BOLT11 invoice into Invoice to inspect , then choose Inspect invoice . Review the decoded details and choose Save inspection to retain the result in this wallet’s local operation history. Inspection does not contact the invoice recipient or send money. An expired invoice or an unsupported required feature can be inspected, but its result must not be treated as permission to pay. The result explicitly distinguishes inspection from payment submission. A saved node address, connection configuration or app policy also does not prove a live Lightning connection. Payment requires a connected engine and its separate approval and settlement checks. That complete payment journey has not been verified for this candidate. Edit page Last updated: Oct 9, 2026 ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Lightning/LightningInvoiceInspector.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-14 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Locking and passwords | Universe Wallet What the password actually protects, how to set the auto-lock window, and what changing a password does and does not do. - Universe Wallet - Everyday tasks # Locking and passwords Intended reader: everyone. Goal: a wallet that is locked when you are not using it, with a password you will still know. Prerequisites: an unlocked wallet. ## What the password protects Section titled “What the password protects” It encrypts the vault on this device . Someone with access to your unlocked computer cannot open the wallet without it. ## What it does not do Section titled “What it does not do” - It is not your backup . Losing it does not lose your funds, as long as you have the recovery phrase. - It does not protect the recovery phrase anywhere else. Anyone with your phrase does not need your password. - It cannot be reset. There is no account, no email link, no support override. If you forget it, you reinstall and restore from the phrase. See Backup and recovery . ## Auto-lock Section titled “Auto-lock” Settings , then Lock time . The range runs from 30 seconds to 4 hours, with a default of 30 minutes. Your situation Suggested Shared or public computer 30 seconds to 5 minutes Personal laptop you carry 5 to 15 minutes Home machine only you use 30 minutes, the default Large holdings, anywhere Shorter than feels convenient You can also lock immediately from the wallet menu, which is worth doing every time you step away. ## Changing your password Section titled “Changing your password” Settings , then Password . You need the current one. Changing it re-encrypts the vault on this device. It does not change your recovery phrase, your keys, your addresses, or anything on any chain. A password change is not a response to a phrase compromise: if your phrase was exposed, the password is irrelevant, and you need If your wallet is compromised . ## Choosing one Section titled “Choosing one” Long beats complicated. Four or five unrelated words you can picture will outlast a short string of symbols you will forget. Do not reuse a password you use anywhere else, because the compromise of an unrelated service should not reach your wallet. ## Common failures Section titled “Common failures” What you see What it means What to do Password rejected and you are sure it is right Keyboard layout, caps lock, or a similar-looking character Type it into a plain text field first to see it Forgotten entirely Not recoverable Reinstall and restore from the phrase The wallet locks constantly Auto-lock is set very short Raise it, within reason The wallet never seems to lock It locks on the timer, not on tab close Use the immediate lock when you step away ## Related Section titled “Related” - Security dashboard - Backup and recovery Edit page Last updated: Oct 9, 2026 Previous Security dashboard Next What a digital artifact is ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Settings/ChangePasswordScreen.tsx, LockTimePage.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Manage connections | Universe Wallet Identify connected sites by origin and chain, read the displayed connection state, and verify that revocation was saved. - Universe Wallet - Everyday tasks # Manage connections Intended reader: anyone who has connected sites, which is anyone who has used a marketplace. Goal: a connection list you recognise, with nothing on it you cannot account for. Prerequisites: an unlocked wallet. Safety: disconnecting cannot retract a signature or transaction already delivered. ## Steps Section titled “Steps” - Open Connected sites . - Read the exact origin and displayed chain for each entry. A site name or icon is not its identity. - Disconnect anything you do not recognise, or no longer use. - If you use a group revoke action, check the result for each affected site. - Wait for the wallet to confirm that removal was saved. Reload the wallet’s connection list and verify that the unwanted entry is gone. ## What the list tells you Section titled “What the list tells you” - Origin. The exact website origin reported to the wallet. - Chain. The chain shown on the connection card. - Signature status. The card shows Signed or Unsigned . This does not replace reviewing a new signature request. - Connection state. The card shows Active or Stored only for the saved record. - Expiry. Read the expiry text displayed for that connection. Universe Wallet also scores connections for risk locally, on your device, and offers to revoke risky sites in one step. ## Housekeeping worth doing Section titled “Housekeeping worth doing” - Disconnect anything you tried once and never returned to. - Disconnect anything whose origin you do not recognise. - After finishing a trade or a mint, disconnect the site. Reconnecting takes one approval. - Review the list after anything unexpected happens. ## Expected result Section titled “Expected result” After the wallet confirms removal, the origin should be absent from a successfully refreshed list. The disconnected site must request access again. A failed save or read does not establish that access ended. ## What disconnecting does not do Section titled “What disconnecting does not do” A successfully saved disconnect ends the site’s saved wallet access. It does not: - reverse a transaction you approved, - revoke a signature you already gave, including a partial signature someone can still complete, - remove an offer from a marketplace’s order book. See What a signature authorizes for why that distinction matters, especially for listings. If you are here because something went wrong, disconnect first, then go to If your wallet is compromised . ## Common failures Section titled “Common failures” What you see What it means What to do A site you do not recognise You connected and forgot, or a page you visited requested it Disconnect. Then check activity for anything you did not authorize. The connection list cannot be loaded Current permissions could not be read Retry the read. A load error is not an empty permission list. Disconnect or revoke fails Removal has not been confirmed Retry, then reload the wallet list. Treat access as unresolved until the saved result is verified. A site reappears after disconnecting Removal may not have been saved, or a new connection was approved Check the saved result and read any new approval before accepting it. A site still shows you as connected on its own page Its display may be stale Confirm removal in a successfully refreshed wallet list, then reload the site. Keep wallet storage intact while resolving a failed permission read or write. If the failure continues, use support . ## Related Section titled “Related” - Connection permissions - Security dashboard Edit page Last updated: Oct 9, 2026 Previous Connect an application Next Coin control ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Approval/ConnectedSitesScreen.tsx, backend/background/service/permission.ts Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-17 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Receive | Universe Wallet Get an address, create a payment request with an amount and a note, and understand what appears while a payment is still unconfirmed. - Universe Wallet - Everyday tasks # Receive Intended reader: anyone being paid. Goal: funds arriving at an address you control, on the network you meant. Prerequisites: an unlocked wallet with the intended account and network selected. Safety: the risk here is publishing the wrong address, not losing what you already have. ## Steps Section titled “Steps” - Confirm the account and network shown at the top of the wallet. - Open Receive . - Copy the address, or show the QR code for someone to scan. - Optionally set an amount and a note. The wallet encodes those into the QR code and into a copyable link, so the sender’s wallet can pre-fill them. - Share it. ## Verify before sharing Section titled “Verify before sharing” - Compare the first four and last four characters of the address against what the recipient sees. Clipboard-replacement malware changes the middle and leaves the ends plausible. - Check the prefix matches the network . See Payment and asset addresses . - Check the chain . A Bitcoin address is not a Dogecoin address and nothing will stop a sender trying. ## Address reuse Section titled “Address reuse” Reusing one address works and links every payment to it publicly. Using a fresh address per payment is better for privacy and makes no difference to safety. See Privacy . ## Which address to publish Section titled “Which address to publish” You are receiving Use Plain bitcoin Your default receiving address, Native SegWit unless you changed it An inscription or ordinal Your Taproot address, unless the sender specifies otherwise From a service that rejects bc1 Your Nested SegWit address, starting with 3 ## Expected result Section titled “Expected result” The payment appears under Activity as pending, then confirms. Your balance rises by the amount sent. The sender pays the fee unless they chose to take it out of the amount. ## Common failures Section titled “Common failures” What you see What it means What to do Nothing arrives, sender has a transaction id It went somewhere, possibly not to you Look up the id and check which address it paid It arrives but the balance is unavailable Unconfirmed, or classified as asset-bearing See Protected outputs Balance updates, assets do not Asset data comes from indexers and can lag Wait, then see Troubleshooting Amount is less than agreed The sender took the fee out of the amount Not a wallet problem. Ask the sender. ## Recovery path Section titled “Recovery path” Nothing about receiving can lose funds you already hold. If you published an address that was not yours, the funds went to whoever owns it, and there is no recall. ## Related Section titled “Related” - Receive for the first time - Read your activity Edit page Last updated: Oct 9, 2026 Previous Confidence marks Next Send bitcoin ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Wallet/ReceiveScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Review a PSBT | Universe Wallet How to read a partially signed transaction someone else built, which sighash flags change what you are agreeing to, and when to refuse outright. - Universe Wallet - Everyday tasks # Review a PSBT Intended reader: anyone approving a signature request that came from a site rather than from the send screen. Goal: knowing what the finished transaction can become, not just what it looks like now. Prerequisites: a pending PSBT approval. Safety: a PSBT is a transaction that someone else wrote. Everything on it was chosen by them. ## What a PSBT is Section titled “What a PSBT is” A partially signed Bitcoin transaction is a draft that can carry some signatures and be completed later. Marketplaces and applications use them because a trade needs inputs from two people who are never online at the same moment. The important consequence: you are signing something you did not construct . The inputs, the outputs, the fee, and the flags were all chosen by whoever sent it. ## What the wallet shows you Section titled “What the wallet shows you” What you are about to sign Origin app.example Your input 7c9b…:0 (protected, inscription) Leaves your wallet 1 inscription Comes back to you 0.04000000 BTC Signature scope SIGHASH_SINGLE | ANYONECANPAY Fee Paid by the other party The screen lists every input and output, marks which inputs are yours, marks which of your inputs are protected, and computes the net effect on your wallet. A manual input selector is available inside this flow when the request allows you to choose which of your coins fund it. ## The line that decides everything Section titled “The line that decides everything” Signature scope. This is the sighash setting, and it determines what your signature commits to. Scope You are agreeing to SIGHASH_ALL The whole transaction, exactly as shown. Nothing can change without invalidating your signature. SIGHASH_SINGLE | ANYONECANPAY Only your input and one matching output. Everyone else can still change their part. SIGHASH_NONE Your input, and no output at all. Whoever completes it decides where the money goes. A partial signature is an open offer, and it does not expire If the scope is not the whole transaction, anyone holding your signed fragment can complete it, on their own terms, at any time, for as long as that coin stays unspent. Removing a listing from a marketplace does not revoke it. The only real cancellation is to spend the coin yourself into a transaction you control. ## Steps Section titled “Steps” - Read the origin at the top. Confirm it is the site you are actually using. - Read what leaves and what comes back . Compare against the price you were quoted. - Read the signature scope . If it is not the whole transaction, decide whether you are willing to leave an open offer standing. - Check whether any of your protected coins are being spent, and whether that is what you meant. - Check the fee and who pays it. - Check for anything marked UNKNOWN . - Approve, or reject. ## Refuse outright when Section titled “Refuse outright when” - The scope is SIGHASH_NONE . There is almost no legitimate reason for a wallet to be asked for that. - The amount coming back does not match the price you agreed. - A protected coin is being spent and you did not start an asset sale. - The origin is not the site you are on. - The wallet could not decode part of the request. ## Expected result Section titled “Expected result” The source candidate checks that selected signing inputs belong to the current account and that the returned approval still matches the reviewed transaction. Changing accounts or networks, locking the wallet, or revoking the requesting site can invalidate an unexecuted approval. If that happens, return to the current request and review it again; do not broaden the selected inputs to bypass a refusal. These checks do not establish that every hardware or website integration is available. Approving returns your signature to the requesting site. It does not necessarily broadcast anything: the site may hold your signature until a counterparty completes the transaction. ## How to verify Section titled “How to verify” Check your activity. A PSBT you signed may not appear as a transaction until it is completed and broadcast by the other party. That gap is normal, and it is also why a partial signature deserves more thought than a payment: there may be no immediate evidence of what you agreed to. ## What the transaction inspector is not Section titled “What the transaction inspector is not” Universe Wallet has a transaction inspector that looks up a transaction by its id. It is a lookup tool for transactions that already exist. It does not decode or review a PSBT. The approval screen is the place where a PSBT is reviewed. ## Related Section titled “Related” - What a signature authorizes - Coin control - Protected outputs Edit page Last updated: Oct 9, 2026 Previous Review a transaction Next Sign a message ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path backend/shared/utils/psbt-safety.ts, frontend/ui/pages/Approval/components/SignPsbt.tsx, backend/background/controller/provider/product-provider-boundary.ts Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-06 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Review a transaction | Universe Wallet How to read the approval screen in the order it is built, the four lines that matter most, and the ones that should make you reject. - Universe Wallet - Everyday tasks # Review a transaction Intended reader: anyone about to approve anything. Goal: understanding what you are authorizing before you authorize it. Prerequisites: a pending approval on screen. Safety: this is the last point at which the outcome is still up to you. The approval screen is stacked in a fixed order, and the order is deliberate. Read it from the top. Blocking problems come first, then what actually happens to your money, then the overall status, then non-blocking warnings, then the full detail. Reject sits beside Approve at the same size. ## The four lines that matter most Section titled “The four lines that matter most” Even in a hurry, read these four. What you are about to sign Leaves your wallet 0.03450000 BTC Comes back to you 0.01446152 BTC Network fee 0.00003848 BTC at 18.5 sat/vB Assets touched None - What leaves. Not what you typed. What the transaction actually spends. - What comes back. Your change. If this is missing or much smaller than you expected, the difference went to the fee. - The fee. Stated once, in one place, as an amount and a rate. - Assets touched. If this is not “none” on a payment you intended to be plain money, stop. ## Reading it in full Section titled “Reading it in full” ### Blocking Section titled “Blocking” A check that failed hard. Approve stays disabled and you cannot click through it. This is not advice; it is a refusal. ### Impact Section titled “Impact” What leaves, what returns, the net change, and any assets touched. Every line carries a confidence mark of EXACT , ESTIMATED , or UNKNOWN . See Confidence marks . ### Status Section titled “Status” Ready, Review, or Blocked. It can never read Ready while any fact on the screen is unknown. ### Warnings Section titled “Warnings” Things worth knowing that do not block: address reputation notes, decoded risk rows, advisories. Each risk row is labelled Warning or Critical in words, not only by colour. ### Details Section titled “Details” Network and account, the destination and whether it is external to your wallet, the fee, every input and output, which inputs are protected, and the raw transaction so you can inspect it elsewhere. ## When to reject Section titled “When to reject” Reject, without hesitating, if any of these is true. - The change output is missing and you cannot account for the remainder. - The destination is not the address you expect, character for character at both ends. - An amount is larger than you intended, in any line. - Anything is marked unknown. - The origin shown is not the site you think you are on. - A protected coin is being spent and you did not deliberately start an asset transfer. - You do not understand what the transaction does. Rejecting costs nothing No fee is paid. Nothing is broadcast. Nothing is recorded on chain. You can always ask the site to try again. The only cost of rejecting is a few seconds; the cost of approving wrongly is permanent. ## Expected result Section titled “Expected result” Approving broadcasts the transaction and moves you to a result screen with a transaction id. Rejecting closes the request and tells the requesting site you declined. ## How to verify afterwards Section titled “How to verify afterwards” - The activity entry shows the same amount and the same fee you saw on the review. - Your balance dropped by amount plus fee, and nothing else moved. - Any asset you hold is still listed. ## Related Section titled “Related” - What a signature authorizes - Review a PSBT - Inputs, outputs, fees, change Edit page Last updated: Oct 9, 2026 Previous Choose a fee Next Review a PSBT ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Approval/components Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Security dashboard | Universe Wallet What the security dashboard tracks, what it can tell you, and the limits of what any dashboard can see. - Universe Wallet - Everyday tasks # Security dashboard Intended reader: anyone doing a periodic check of their own setup. Goal: knowing whether your wallet’s posture matches what you intended. Prerequisites: an unlocked wallet. Safety: the dashboard reports. It does not defend. Acting on what it says is the part that matters. ## Where it is Section titled “Where it is” Settings , then Security . The screen has no protocol gate, so it is present regardless of what your build authorizes. ## What it tracks Section titled “What it tracks” - Recovery status. Whether you have confirmed a backup of your recovery phrase. - Login history. When the wallet was unlocked. - Session log. What happened during recent sessions. - Phishing URL checking. A place to check a URL against the wallet’s phishing policy before you visit it. - Connection risk. Local scoring of your connected sites, with a one-step way to revoke risky ones. Everything here is computed on your device. None of it is a report sent anywhere. ## A monthly ten-minute check Section titled “A monthly ten-minute check” - Open the dashboard and read the recovery status. If it does not say your phrase is backed up, go to Back up your recovery phrase . - Read the login history. Anything you cannot account for is worth investigating. - Open Connected sites and remove anything you no longer use. - Check your auto-lock timer is short enough for how you actually work. See Locking and passwords . - Confirm your paper backup is still where you think it is, and still legible. ## What a dashboard cannot see Section titled “What a dashboard cannot see” - Whether your recovery phrase has been copied. A phrase read from paper leaves no trace anywhere. - Whether a signature you gave was a good idea. It can tell you what you signed, not what it meant. - Whether an outstanding partial signature can still be completed by someone. See What a signature authorizes . - Anything happening in another wallet using the same phrase. A clean dashboard is reassuring and it is not proof. Treat it as one input. ## Optional controls worth turning on Section titled “Optional controls worth turning on” Universe Wallet includes optional per-transaction and daily spending caps, and an address whitelist. They are off by default, because most people do not want them and a wallet that demands configuration before it is safe is a badly designed wallet. If your holdings are significant, they are worth the five minutes. ## Related Section titled “Related” - Security model - If your wallet is compromised Edit page Last updated: Oct 9, 2026 Previous Hardware wallets Next Locking and passwords ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Settings/SecurityDashboardScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Send bitcoin | Universe Wallet Make an outgoing payment, understand the replaceable flag, and know what the wallet does not offer if the transaction gets stuck. - Universe Wallet - Everyday tasks # Send bitcoin Intended reader: someone making a payment out of the wallet. Goal: the right amount reaching the right address, with no asset spent by accident. Prerequisites: available balance, the recipient address, an unlocked wallet. Chain and network: shown at the top of the wallet. Check it. Safety: irreversible once confirmed. There is no fee-bump flow to rescue a mistake. Sending is behind a release gate The send and broadcast screens sit behind the bitcoin/send and bitcoin/broadcast gates. Whether they are usable in your build was decided at release time. If the screen states the operation is not available in this build, that is authoritative. See Why an action is unavailable . ## Steps Section titled “Steps” - Open Send . - Confirm the account and network at the top. - Enter the recipient address, or pick one from your address book. - Enter the amount. The wallet spends from the available pool only, never from protected coins. - Choose a fee rate. See Choose a fee . - Optionally mark the transaction replaceable . Read the section below before you rely on it. - Read the review screen in full. See Review a transaction . - Approve, or reject. ## The replaceable flag Section titled “The replaceable flag” Universe Wallet lets you mark a transaction as replaceable when you create it, and the flag is off by default . The review screen states which way it is set. Marking a transaction replaceable does not give you a way to replace it Universe Wallet 1.7.5.8 has no fee bump, no speed up, and no child-pays-for-parent flow . The flag records that the network may accept a replacement; it does not add a control in this wallet for building one. If your payment is stuck, your options are to wait, or to construct a replacement using separate software that supports it. Do not send at a low rate on the assumption that you can raise it later. The flag also has a privacy and counterparty effect: some recipients treat a replaceable unconfirmed transaction as not yet received, and will wait for a confirmation before crediting you. ## Batch sending Section titled “Batch sending” A batch send screen exists, paying several recipients in one transaction. It sits behind the same bitcoin/send gate as an ordinary payment, so its availability depends on your build. Batching is cheaper than separate payments because the fee follows total size rather than the number of recipients. ## Expected result Section titled “Expected result” The transaction appears in Activity as pending, with the fee you chose, then gains confirmations. Your available balance falls by amount plus fee, and a change output returns to an address you own. ## How to verify Section titled “How to verify” - The recipient confirms arrival. - The fee in your activity matches the fee you approved. - Every asset you held is still listed. ## Common failures Section titled “Common failures” What you see What it means What to do Insufficient funds while the total looks sufficient Protected coins cannot fund a plain payment See Protected outputs Fee looks unreasonably large Many small inputs are being consolidated, so the transaction is big Review the input list. Consider sending less, or a different coin selection. No change output on the review The remainder is being paid as fee Reject unless you meant it Stuck pending for hours The rate was below what blocks are currently clearing Wait. See the replaceable section above. Screen says not available in this build The release did not authorize the operation Nothing you can change locally ## Recovery path Section titled “Recovery path” Before approval: reject. It is free and complete. After confirmation: none exists. ## Related Section titled “Related” - Send for the first time - Coin control - Inputs, outputs, fees, change Edit page Last updated: Oct 9, 2026 Previous Receive Next Choose a fee ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Wallet/TxCreateScreen.tsx Applicable release Universe Wallet 1.7.5.8 Chain bitcoin Lifecycle Not released Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Sign a message | Universe Wallet What message signing proves, why the wallet has no screen for composing one yourself, and why raw data signing is off by default. - Universe Wallet - Everyday tasks # Sign a message Intended reader: anyone asked by a site to sign a message. Goal: proving you control an address, without agreeing to something you did not read. Prerequisites: a connected site that requested a signature. Safety: no coin can move from signing a message. That does not make every message safe to sign. Message signing is initiated by a site, not by you Universe Wallet 1.7.5.8 has no screen for composing your own message and signing it . Message signing appears only as an approval, in response to a request from a connected application. If you need to sign an arbitrary message for your own purposes, this wallet does not currently offer that. ## What a message signature proves Section titled “What a message signature proves” That the holder of a private key agreed to a specific piece of text. It is used to prove address ownership without moving funds: sign in to a service, claim membership of a collection, verify you control an address to a counterparty. No fee is paid. Nothing is broadcast. No coin can move as a direct result. ## Why it still deserves attention Section titled “Why it still deserves attention” A message is not always a neutral proof. It can be a statement, an agreement, or a term. What the text says is what you are agreeing to, and the wallet cannot know which sentences carry weight. The wallet scans message text for scam-language patterns and warns you when it finds them, which helps with the obvious cases and cannot help with a well-written one. Read the text yourself. ## The three variants you may see Section titled “The three variants you may see” Request What it is What to do Text signing Human-readable text Read every line before approving Raw data signing A hex blob, not readable text Off by default. See below. Multiple message signing Several messages in one request Each one still counts. Read them all, or reject. Raw data signing is off by default, and enabling it needs a typed confirmation A blob you cannot read is indistinguishable from something you would never agree to. That is exactly why it is disabled until you deliberately turn it on. If a site insists you enable it, that is a reason to leave, not a reason to comply. ## Steps Section titled “Steps” - The site requests a signature and the approval window opens. - Read the origin shown by the wallet. It comes from the browser, not from the page. - Read the message text in full. - Confirm the address being used is the one you intend to prove ownership of. - Approve, or reject. ## Expected result Section titled “Expected result” The signature is returned to the requesting site. Nothing appears in your activity, because nothing happened on the chain. ## Refuse when Section titled “Refuse when” - The message is unreadable, or is raw data you did not expect. - The message contains terms you would not agree to in writing. - The origin is not the site you are on. - The request arrived without you doing anything on the page. ## Related Section titled “Related” - What a signature authorizes - Phishing and impostors Edit page Last updated: Oct 9, 2026 Previous Review a PSBT Next Connect an application ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Approval/components/SignText.tsx, SignData.tsx, MultiSignMessage.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Switch chain and network | Universe Wallet Change which chain and network the wallet is showing, and understand what that does to connected sites and to your addresses. - Universe Wallet - Everyday tasks # Switch chain and network Intended reader: anyone using more than one chain, or testing on a test network. Goal: the wallet showing the chain and network you intend to act on. Prerequisites: an unlocked wallet. Safety: acting on the wrong network is how funds go somewhere unrecoverable. Check before you copy an address. ## Steps Section titled “Steps” - Open Settings , then Network . - The screen lists every network the build knows about, and states how many are selectable. - Choose one. Entries a build has not enabled are marked Coming soon and cannot be selected. - Confirm the network name now shown at the top of the wallet. ## The list Section titled “The list” Ten networks appear: Bitcoin, Bitcoin Testnet, Bitcoin Testnet4 (Beta), Bitcoin Signet, Dogecoin, Dogecoin Testnet, Zcash, Zcash Testnet, Fractal Bitcoin, and Fractal Bitcoin Testnet. See Chains and networks for what each is for. ## What changes Section titled “What changes” - The addresses shown, because formats differ per network. - The balance, assets, and activity, because they are read per network. - Which protocol operations are conceivable, because authorization is recorded per protocol and per network. ## What does not change Section titled “What does not change” - Your recovery phrase. One phrase covers every network. - Anything on any chain. Switching is a view change, not a transaction. - Existing connections. A connection is granted for one address on one network, and switching does not extend it to another. A site that needs the other network has to request it. ## A site can ask you to switch Section titled “A site can ask you to switch” An application can request a chain or network switch, and the wallet shows an approval for it. Read which network is being requested before approving, particularly if you were not expecting the prompt. ## Expected result Section titled “Expected result” The wallet header shows the network you chose, and the balance and assets are those of that network. ## How to verify Section titled “How to verify” - The network name in the wallet header is the one you selected. - The receiving address has the prefix you expect for that network. - The balance matches what you expect for that network, which for a test network is usually zero until you use a faucet. ## Common failures Section titled “Common failures” What you see What it means What to do Balance is zero after switching Correct. That network holds nothing yet. Switch back, or fund it An entry is marked Coming soon The build did not enable that network Nothing you can change locally A connected site stops working Its grant was for the other network Reconnect on the network you are using A switch prompt appeared unexpectedly A page requested it Read the network being requested. Reject if unclear. ## Related Section titled “Related” - Chains and networks - Connection permissions Edit page Last updated: Oct 9, 2026 Previous Coin control Next Read your activity ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Settings/NetworkTypeScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Watch-only wallets | Universe Wallet What the cold-wallet import actually is in this build, where its entry point lives, and what you cannot do with it. - Universe Wallet - Everyday tasks # Watch-only wallets Intended reader: someone who wants to watch an address without holding its keys in the browser. Goal: visibility of balances and assets with no signing capability present. Prerequisites: the extended public key of the wallet you want to watch. Safety: a watch-only wallet cannot spend. That is its entire value. ## What it is Section titled “What it is” A cold wallet import brings in public key material only . The wallet can derive addresses, show balances, show assets, and build unsigned transactions. It holds nothing that can authorize a spend. Two limits worth knowing before you start - The import takes an extended public key , presented by QR from an air-gapped device. There is no flow in this build for typing or pasting a single address to watch. - The entry point is behind developer mode , which you enable by tapping the version number in the About screen repeatedly. It is not on the ordinary setup path. ## What it is for Section titled “What it is for” - Watching cold storage. Keys stay on a device that never touches a browser; the extension shows you what is there. - Preparing transactions offline. Build the transaction in the browser, sign it elsewhere, then broadcast. - Reducing exposure. Nothing in the browser profile can move those funds, so a compromised browser is a privacy problem rather than a loss. ## Steps Section titled “Steps” - Open Settings , then About , and enable developer mode by tapping the version repeatedly. - Add a wallet, and choose the cold wallet option. - Scan the extended public key QR from your signing device. - Confirm the derived addresses match the ones your signing device shows. ## Expected result Section titled “Expected result” A wallet entry that shows balances and assets, and that offers no path to sign a transaction. Any attempt to spend produces an unsigned transaction for you to sign elsewhere. ## How to verify Section titled “How to verify” Compare the first derived address against what your signing device displays. If they differ, the derivation path or account index does not match. Do not receive to an address you have not verified on the signing device itself. ## Common failures Section titled “Common failures” What you see What it means What to do No cold wallet option Developer mode is not enabled Enable it in About Addresses do not match the device Wrong derivation path or account Recheck the path on the signing device Balance is zero but the device shows funds Different address type or path See Address types ## Recovery path Section titled “Recovery path” A watch-only wallet holds nothing to lose. Remove it and re-import at any time. Your funds are governed entirely by the device holding the keys. ## Related Section titled “Related” - Hardware wallets - Security model Edit page Last updated: Oct 9, 2026 Previous Read your activity Next Hardware wallets ## Where this page comes from Owning repository bitcoinuniverseio/wallet Source path frontend/ui/pages/Account/CreateColdWalletScreen.tsx Applicable release Universe Wallet 1.7.5.8 Lifecycle Experimental Last verified 2026-09-01 - Edit this page on GitHub - Bitcoin Universe documentation portal - Report a documentation error # Redirecting to: /docs-wallet/help/troubleshooting Redirecting to: /docs-wallet/help/troubleshooting - Redirecting from /docs-wallet/troubleshooting/ to /docs-wallet/help/troubleshooting # Redirecting to: /docs-wallet/tasks/coin-control Redirecting to: /docs-wallet/tasks/coin-control - Redirecting from /docs-wallet/using-wallet/coin-control/ to /docs-wallet/tasks/coin-control # Redirecting to: /docs-wallet/concepts/connections Redirecting to: /docs-wallet/concepts/connections - Redirecting from /docs-wallet/using-wallet/connections/ to /docs-wallet/concepts/connections # Redirecting to: /docs-wallet/tasks/review-a-transaction Redirecting to: /docs-wallet/tasks/review-a-transaction - Redirecting from /docs-wallet/using-wallet/reviewing-a-transaction/ to /docs-wallet/tasks/review-a-transaction # Redirecting to: /docs-wallet/tasks/sign-a-message Redirecting to: /docs-wallet/tasks/sign-a-message - Redirecting from /docs-wallet/using-wallet/signing-a-message/ to /docs-wallet/tasks/sign-a-message # Redirecting to: /docs-wallet/concepts/chains-and-networks Redirecting to: /docs-wallet/concepts/chains-and-networks - Redirecting from /docs-wallet/wallet-basics/accounts-and-networks/ to /docs-wallet/concepts/chains-and-networks # Redirecting to: /docs-wallet/tasks/activity Redirecting to: /docs-wallet/tasks/activity - Redirecting from /docs-wallet/wallet-basics/activity/ to /docs-wallet/tasks/activity # Redirecting to: /docs-wallet/concepts/inputs-outputs-fees Redirecting to: /docs-wallet/concepts/inputs-outputs-fees - Redirecting from /docs-wallet/wallet-basics/balances/ to /docs-wallet/concepts/inputs-outputs-fees # Redirecting to: /docs-wallet/tasks/choose-a-fee Redirecting to: /docs-wallet/tasks/choose-a-fee - Redirecting from /docs-wallet/wallet-basics/fees/ to /docs-wallet/tasks/choose-a-fee # Redirecting to: /docs-wallet/assets/media-and-performance Redirecting to: /docs-wallet/assets/media-and-performance - Redirecting from /docs-wallet/wallet-basics/performance-and-media/ to /docs-wallet/assets/media-and-performance