# My goal Learn how to send an imported tr(wif) and wpkh() utxo in the same transaction. # What I've tried I imported a WIF utxo containing a v1 segwit utxo. `bitcoin-cli importdescriptors '[{"desc":"tr(wifkey)#checksum", "timestamp":unixts}]'` I didn't know the checksum, but when importing I got an error that told me what the checksum should be, so I used that. The balance showed up after import, I assume it was imported correctly. Learned `createrawtransaction`, `fundrawtransaction`, `signrawtransactionwithwallet` are not acceptable for taproot. This was resulting in "Witness program was passed an empty witness". It seems psbt commands are more appropriate. However, I couldn't figure out how to successfully sign with cli. I kept getting `"complete": false` returned. I then tried bitcoin-qt and attempted to sweep funds to an address as a test. I received this: [![fail signing][1]][1] [1]: https://i.sstatic.net/PZ7pq.png While using bitcoin-cli and running `bitcoin-cli listunspent` I see: ``` [ { "txid": "TX_1", "vout": x, "address": "ADDR_1", "label": "xxx1", "scriptPubKey": "44_LEGNTH_HEX_STRING", "amount": xxxxxx.xxxxxx, "confirmations": xxx, "spendable": true, "solvable": true, "desc": "wpkh([FINGERPRINT/84'/0'/0'/0/0]KEY)#CHECKSUM1", "parent_descs": [ "wpkh(xpub_key/84'/0'/0'/0/*)#CHECKSUM-parent" ], "safe": true }, { "txid": "TX_2", "vout": xx, "address": "ADDR_2", "label": "xxx2", "scriptPubKey": "68_LENGTH_HEX_STRING", "amount": xxxxxx.xxxxxx, "confirmations": xxxx, "spendable": true, "solvable": true, "desc": "tr([FINGERPRINT2]KEY2)#CHECKSUM2", "parent_descs": [ "tr(KEY2)#CHECKSUM2" ], "safe": true } ] ``` Output sanitized # Question - What are the methodical steps starting with an imported WIF/taproot utxo + wpkh utxo and creating a signed tx to send funds?