Transaction Labeling attaches user metadata to wallet records, such as payment purpose or coin provenance. Label text is not part of the Bitcoin transaction and does not itself prove a counterparty’s identity or ownership.
Renaming a payment changes the application database, not its txid or blockchain history. Restoring keys from a seed therefore does not itself restore user notes. The label format transfers context between wallets, not spending authority. [BIP 329 — Wallet Labels Export Format] [Bitcoin Developer Guide — Transactions]
BIP 329 distinguishes tx, addr, pubkey, input, output, xpub and spscan. For input, ref identifies a transaction and its input index; for output, the creating transaction and output index. The same txid:1 therefore does not identify an input or output without its type. [BIP 329 — Wallet Labels Export Format]
JSON Lines uses UTF-8 with one JSON object per line. type and ref are required; label, origin and spendable are optional. Omitting label or spendable should leave its existing value unchanged on import. Compatible importers should ignore unknown types, which does not guarantee complete data transfer. [BIP 329 — Wallet Labels Export Format]
spendable applies only to output and uses Boolean false, not the string "false". A wallet can thereby exclude a coin from selection. This is not a Timelock or a Bitcoin script prohibition; another wallet with the right keys can spend if the actual conditions permit. [BIP 329 — Wallet Labels Export Format] [Bitcoin Developer Guide — Transactions]
origin contains an abbreviated descriptor with key-origin information but no actual keys, child paths or checksum. It helps distinguish labels for the same transaction from different accounts or wallets. It neither signs the export nor proves a note truthful. [BIP 329 — Wallet Labels Export Format]
Distinguish a personal note, an automatic invoice association and an imported analytical claim. BTCPay uses labels such as invoice and payout and allows custom labels. Coin provenance helps Coin Control, but a name alone cannot prevent unwanted merging; actual input selection matters. [BIP 329 — Wallet Labels Export Format] [BTCPay Server — Wallet]
An export can connect addresses, xpub and payment history to names. Having no type for a private spending key does not make the file harmless. Protect transit and stored backups and check restoration to the correct account; a seed does not back up this contextual layer. [BIP 329 — Wallet Labels Export Format]
On a nonproduction copy, compare type, ref, text and spendable after export and import. Include diacritics, multiple accounts, an unknown type and omitted optional values. Importers may lack record support or truncate text; 255 characters is a suggested default, not a universal guarantee. Successfully loading a file therefore does not itself prove faithful restoration of context. [BIP 329 — Wallet Labels Export Format]
For the clearest picture, read this entry together with Coin Control, UTXO, Bitcoin Privacy, Address Clustering, Seed Phrase, Output Descriptor. The reverse links also lead from Chain Surveillance.