WINZEC wallet - Could not find any non-coinbase UTXOs

Hello! I have mined some ZEC to the WINZEC wallet.
Under the “own addresses” tab, the ZEC is there in a “t1” address.
Problem: My overview tab does not show incoming transactions, and I am unable to send cash!

I have tried the following:
Send cash to a “t” address in same wallet.
Send cash to a “z” address in same wallet.
Send cash to a Trezor wallet.

Every attempt returns the same error message: “Could not find any non-coinbase UTXOs”

I feel like I’m missing something simple, but I don’t know it could be. Please keep in mind that I used to use the Zcash4win wallet with no problems, and Linux solutions would require me to install Linux on a computer, and I REALLY do not want to have to go there.

As you may know, coinbase UTXOs must be sent to a shielded address. This is a consensus rule.

Glancing at WinZEC’s UI, I think you need to ensure that you send the full coinbase reward to a z-addr to avoid any leftover amounts being sent to a “change” t-address. You must also set the wallet dev fee to zero for this to work, because the internal z_sendmany command used only allows sending of coinbase UTXOs to a single z-addr (and no t-addrs).

For example, if your coinbase UTXO was 10.1 ZEC, you would need to send 10.0999 (+ 0.0001 miner fee) (+ 0 wallet dev fee) to the z-addr.

Thanks for the reply!

It was my understanding that The mining pool (Bitfly) was sending the small rewards (0.01 ZEC) through a private address, otherwise, they would not be able to send the funds to my unshielded “t” address. (right?) So following this logic, the funds should be unlocked.

What I’m thinking now is that I need to switch to a different wallet, so I have a new question. Can I recover my funds from the keys in this “wallet.dat” file with the linux zcash wallet? I think I should be able to do this, but maybe not. Hope so.

Ah, sorry. I misunderstood and thought you were solo mining! My advice above only applies to coinbase rewards, i.e. solo mining or if you have your own pool.

Perhaps this is the source of your problem? Your wallet can only send funds that it can see. Check that it is synchronised to the most recent block. I’m not sure how you can see a non-zero amount under a specific t-address and not see any incoming transactions.

Just for fun, here are some images. Overview tab:

Own addresses Tab:

The account that has the 1.18 balance is a “t1” address.

Can you also illustrate the amounts you are attempting to send (amount, mining fee, wallet dev fee)?

The inconsistency here is strange. I’m not sure what is going on; perhaps the UI is not properly synchronised with the underlying zcashd node. Perhaps if you restart it, the UI will display the missing transactions?

Well…honestly the wallet has been like this since day 1 and the machine has been shut down many times. I’m going to try installing winzec to a different machine, and restoring this wallet. Here’s the image:

I didn’t recognize this as a problem until now, so that’s my fault. Hopefully I can find a way to recover the zec.

I’m pretty sure the wallet.dat should be compatible (WinZEC is a UI wrapper on top of zcashd). If that fails, you can also export the private keys manually from the underlying zcashd and re-import on a different node/wallet.

Thanks for talking this out with me! I’ll post again if/when I get this figured out.

Ok…so I got an answer. The address is watch only! Apparently there is a bug associated with BarterDEX that causes old style gui wallets to make t-addresses that are watch only!? I made the address with the ‘new transparent address’ button in WinZEC, but it made a watch-only address. I mined to it. I have no control of the funds.

I’m sad, but it could have been a lot worse if I didn’t try to move that cash today. There should be a PSA about this. I’m going to put this on twitter when I understand better what happened.

Maybe I am misunderstanding what happened but I can’t see how this is possible. WinZEC is just a wrapper for the underlying zcashd and interfaces with it via the RPC commands and there isn’t such a command to do this. Did you import an address generated elsewhere?

Also, as a first start try starting up zcashd with the -rescan option.

So, you’ll need to open a command prompt and go to C:\Program Files\winzec\app and run zcashd.exe -rescan. You can then open WinZEC but it might take a while to do the rescan.

Make sure you are using the latest version of winZEC from https://winzec.com

The previous builds are not Overwinter-compatible.

I downloaded winzec specifically because it was overwinter compatible. I clicked the button for “generate new public address” and this wallet made me a WATCH-ONLY address (!) Which I used for mining. Now I’ve lost 1.2 ZEC and thank god I found the problem before I mined more into that address. I’m going to keep watching it to see if the funds moved out of it, which would mean I was scammed. To be sure, I’m never going to use the winzec wallet again.

I have been talking with some folks on various discord channels about this, and they tell me that this sometimes happens on machines that have BarterDEX installed. I’m still doing some detective work to see if it’s true. I installed KOMODO’s BarterDEX on the machine in question because I was curious. I found it very hard to use, but did not uninstall it.

If there are any curious code wizards out there, here’s the address:
https://zcash.blockexplorer.com/address/t1ar1tA32x7RRPRk1iGN8hg3q8Cc4JAprho

I performed the -rescan to no avail, then used the validateaddress command, which returnded " ismine: false and "iswatchonly: true. Now I know that this is something I need to do with all wallet addresses that I’m going to mine to while I’m on vacation.