I have a Bitcoin Core wallet which has a utxo which I spent from, in a transaction where around 1% was sent to an external wallet address, with the ~99% change output remaining in the wallet, sent to a new internal change address selected by core.
The fee used turned out to be too low and I am still waiting for the transaction to be confirmed, and now when I attempt to spend using the balance that is displayed in the wallet (with
getbalance endpoint), I am told there is "Insufficient funds.".
But when I list the wallet utxos with
listunspent, "spendable" has value true for the change output mentioned above - this is what I expected since my understanding is the core wallet by default will use CFPF to still spend an unconfirmed change output (please correct me if this is wrong).
My question is:
Why does the output listed by
listunspent indicate that the output is 'spendable', when if I try to spend the output, it fails with an 'Insufficient funds' error?
Is there another reason for the wallet complaining that there is insufficient funds? Probably relevant is that it was an opt-in RBF tx, and I have already tried bumping the fee (still too low and not confirmed) but now would prefer to use CPFP as I have another transaction that I would like to make from the same unconfirmed change output.