decodepsbt (28.0.0 RPC) blockchain dumptxoutset getbestblockhash getblock getblockchaininfo getblockcount getblockfilter getblockfrompeer getblockhash getblockheader getblockstats getchainstates getchaintips getchaintxstats getdeploymentinfo getdifficulty getmempoolancestors getmempooldescendants getmempoolentry getmempoolinfo getrawmempool gettxout gettxoutproof gettxoutsetinfo gettxspendingprevout importmempool loadtxoutset preciousblock pruneblockchain savemempool scanblocks scantxoutset verifychain verifytxoutproof control getmemoryinfo getrpcinfo help logging stop uptime mining getblocktemplate getmininginfo getnetworkhashps getprioritisedtransactions prioritisetransaction submitblock submitheader network addnode clearbanned disconnectnode getaddednodeinfo getaddrmaninfo getconnectioncount getnettotals getnetworkinfo getnodeaddresses getpeerinfo listbanned ping setban setnetworkactive rawtransactions analyzepsbt combinepsbt combinerawtransaction converttopsbt createpsbt createrawtransaction decodepsbt decoderawtransaction decodescript descriptorprocesspsbt finalizepsbt fundrawtransaction getrawtransaction joinpsbts sendrawtransaction signrawtransactionwithkey submitpackage testmempoolaccept utxoupdatepsbt signer enumeratesigners util createmultisig deriveaddresses estimatesmartfee getdescriptorinfo getindexinfo signmessagewithprivkey validateaddress verifymessage wallet abandontransaction abortrescan addmultisigaddress backupwallet bumpfee createwallet createwalletdescriptor dumpprivkey dumpwallet encryptwallet getaddressesbylabel getaddressinfo getbalance getbalances gethdkeys getnewaddress getrawchangeaddress getreceivedbyaddress getreceivedbylabel gettransaction getunconfirmedbalance getwalletinfo importaddress importdescriptors importmulti importprivkey importprunedfunds importpubkey importwallet keypoolrefill listaddressgroupings listdescriptors listlabels listlockunspent listreceivedbyaddress listreceivedbylabel listsinceblock listtransactions listunspent listwalletdir listwallets loadwallet lockunspent migratewallet newkeypool psbtbumpfee removeprunedfunds rescanblockchain restorewallet send sendall sendmany sendtoaddress sethdseed setlabel settxfee setwalletflag signmessage signrawtransactionwithwallet simulaterawtransaction unloadwallet upgradewallet walletcreatefundedpsbt walletdisplayaddress walletlock walletpassphrase walletpassphrasechange walletprocesspsbt zmq getzmqnotifications decodepsbt "psbt" Return a JSON object representing the serialized, base64-encoded partially signed Bitcoin transaction. Arguments: 1. psbt (string, required) The PSBT base64 string Result: { (json object) "tx" : { (json object) The decoded network-serialized unsigned transaction. ... The layout is the same as the output of decoderawtransaction. }, "global_xpubs" : [ (json array) { (json object) "xpub" : "str", (string) The extended public key this path corresponds to "master_fingerprint" : "hex", (string) The fingerprint of the master key "path" : "str" (string) The path }, ... ], "psbt_version" : n, (numeric) The PSBT version number. Not to be confused with the unsigned transaction version "proprietary" : [ (json array) The global proprietary map { (json object) "identifier" : "hex", (string) The hex string for the proprietary identifier "subtype" : n, (numeric) The number for the subtype "key" : "hex", (string) The hex for the key "value" : "hex" (string) The hex for the value }, ... ], "unknown" : { (json object) The unknown global fields "key" : "hex", (string) (key-value pair) An unknown key-value pair ... }, "inputs" : [ (json array) { (json object) "non_witness_utxo" : { (json object, optional) Decoded network transaction for non-witness UTXOs ... }, "witness_utxo" : { (json object, optional) Transaction output for witness UTXOs "amount" : n, (numeric) The value in BTC "scriptPubKey" : { (json object) "asm" : "str", (string) Disassembly of the output script "desc" : "str", (string) Inferred descriptor for the output "hex" : "hex", (string) The raw output script bytes, hex-encoded "type" : "str", (string) The type, eg 'pubkeyhash' "address" : "str" (string, optional) The Bitcoin address (only if a well-defined address exists) } }, "partial_signatures" : { (json object, optional) "pubkey" : "str", (string) The public key and signature that corresponds to it. ... }, "sighash" : "str", (string, optional) The sighash type to be used "redeem_script" : { (json object, optional) "asm" : "str", (string) Disassembly of the redeem script "hex" : "hex", (string) The raw redeem script bytes, hex-encoded "type" : "str" (string) The type, eg 'pubkeyhash' }, "witness_script" : { (json object, optional) "asm" : "str", (string) Disassembly of the witness script "hex" : "hex", (string) The raw witness script bytes, hex-encoded "type" : "str" (string) The type, eg 'pubkeyhash' }, "bip32_derivs" : [ (json array, optional) { (json object) "pubkey" : "str", (string) The public key with the derivation path as the value. "master_fingerprint" : "str", (string) The fingerprint of the master key "path" : "str" (string) The path }, ... ], "final_scriptSig" : { (json object, optional) "asm" : "str", (string) Disassembly of the final signature script "hex" : "hex" (string) The raw final signature script bytes, hex-encoded }, "final_scriptwitness" : [ (json array, optional) "hex", (string) hex-encoded witness data (if any) ... ], "ripemd160_preimages" : { (json object, optional) "hash" : "str", (string) The hash and preimage that corresponds to it. ... }, "sha256_preimages" : { (json object, optional) "hash" : "str", (string) The hash and preimage that corresponds to it. ... }, "hash160_preimages" : { (json object, optional) "hash" : "str", (string) The hash and preimage that corresponds to it. ... }, "hash256_preimages" : { (json object, optional) "hash" : "str", (string) The hash and preimage that corresponds to it. ... }, "taproot_key_path_sig" : "hex", (string, optional) hex-encoded signature for the Taproot key path spend "taproot_script_path_sigs" : [ (json array, optional) { (json object, optional) The signature for the pubkey and leaf hash combination "pubkey" : "str", (string) The x-only pubkey for this signature "leaf_hash" : "str", (string) The leaf hash for this signature "sig" : "str" (string) The signature itself }, ... ], "taproot_scripts" : [ (json array, optional) { (json object) "script" : "hex", (string) A leaf script "leaf_ver" : n, (numeric) The version number for the leaf script "control_blocks" : [ (json array) The control blocks for this script "hex", (string) A hex-encoded control block for this script ... ] }, ... ], "taproot_bip32_derivs" : [ (json array, optional) { (json object) "pubkey" : "str", (string) The x-only public key this path corresponds to "master_fingerprint" : "str", (string) The fingerprint of the master key "path" : "str", (string) The path "leaf_hashes" : [ (json array) The hashes of the leaves this pubkey appears in "hex", (string) The hash of a leaf this pubkey appears in ... ] }, ... ], "taproot_internal_key" : "hex", (string, optional) The hex-encoded Taproot x-only internal key "taproot_merkle_root" : "hex", (string, optional) The hex-encoded Taproot merkle root "unknown" : { (json object, optional) The unknown input fields "key" : "hex", (string) (key-value pair) An unknown key-value pair ... }, "proprietary" : [ (json array, optional) The input proprietary map { (json object) "identifier" : "hex", (string) The hex string for the proprietary identifier "subtype" : n, (numeric) The number for the subtype "key" : "hex", (string) The hex for the key "value" : "hex" (string) The hex for the value }, ... ] }, ... ], "outputs" : [ (json array) { (json object) "redeem_script" : { (json object, optional) "asm" : "str", (string) Disassembly of the redeem script "hex" : "hex", (string) The raw redeem script bytes, hex-encoded "type" : "str" (string) The type, eg 'pubkeyhash' }, "witness_script" : { (json object, optional) "asm" : "str", (string) Disassembly of the witness script "hex" : "hex", (string) The raw witness script bytes, hex-encoded "type" : "str" (string) The type, eg 'pubkeyhash' }, "bip32_derivs" : [ (json array, optional) { (json object) "pubkey" : "str", (string) The public key this path corresponds to "master_fingerprint" : "str", (string) The fingerprint of the master key "path" : "str" (string) The path }, ... ], "taproot_internal_key" : "hex", (string, optional) The hex-encoded Taproot x-only internal key "taproot_tree" : [ (json array, optional) The tuples that make up the Taproot tree, in depth first search order { (json object, optional) A single leaf script in the taproot tree "depth" : n, (numeric) The depth of this element in the tree "leaf_ver" : n, (numeric) The version of this leaf "script" : "str" (string) The hex-encoded script itself }, ... ], "taproot_bip32_derivs" : [ (json array, optional) { (json object) "pubkey" : "str", (string) The x-only public key this path corresponds to "master_fingerprint" : "str", (string) The fingerprint of the master key "path" : "str", (string) The path "leaf_hashes" : [ (json array) The hashes of the leaves this pubkey appears in "hex", (string) The hash of a leaf this pubkey appears in ... ] }, ... ], "unknown" : { (json object, optional) The unknown output fields "key" : "hex", (string) (key-value pair) An unknown key-value pair ... }, "proprietary" : [ (json array, optional) The output proprietary map { (json object) "identifier" : "hex", (string) The hex string for the proprietary identifier "subtype" : n, (numeric) The number for the subtype "key" : "hex", (string) The hex for the key "value" : "hex" (string) The hex for the value }, ... ] }, ... ], "fee" : n (numeric, optional) The transaction fee paid if all UTXOs slots in the PSBT have been filled. } Examples: > bitcoin-cli decodepsbt "psbt"