How to Send ZEC Privately: Shielded, Exchange, and TEX (2026)
Updated November 4, 2026.
To send ZEC privately, send from a shielded balance to a shielded address. In Vizor that's three steps: open Send, paste a u1 or zs address, and confirm. If the address starts with t or tex, the payment is partly public, and exchanges that use TEX addresses need a wallet that supports them. This guide covers the four cases you're likely to run into: shielded to shielded, ZEC that's still transparent, deposits to an exchange's TEX address, and sends from a Ledger or Keystone.
Quick answer: send ZEC in 3 steps
- Open your wallet and go to Send. In Vizor, sends come from your shielded balance.
- Paste the recipient's address and enter the amount. Check the first and last few characters against what they gave you.
- Click Review, check the recipient and fee, then confirm. In Vizor the button is Confirm & send. On a hardware wallet, approve the transaction on the device too.
Which address are you sending to?
The first characters of the address tell you what the payment will reveal.
| Address starts with | Type | What's public on-chain |
|---|---|---|
u1 |
Unified Address | Usually nothing about the payment. A Unified Address can bundle several receivers, and shielded wallets pay its shielded one. Sender, receiver, amount, and memo stay encrypted. |
zs |
Sapling shielded address | Nothing about the payment. Sapling is an older shielded pool. Amounts, addresses, and memos are encrypted. |
t1 or t3 |
Transparent address | The receiving address and the amount. If you send from a transparent address, your address is public too. It works like Bitcoin. |
tex1 |
TEX (transparent-source-only) address | The amount and the exchange's address, plus a transparent address the funds come from. Used by exchanges such as Binance. |
Transparent addresses work like Bitcoin addresses: anyone can see the sender, the receiver, and the amount. Shielded payments encrypt all three. A TEX address is a transparent address in a different format, defined in ZIP 320. It tells wallets that the exchange only accepts funds from transparent sources.
Step by step: send shielded ZEC in Vizor
Vizor is a self-custody, open-source Zcash wallet for macOS, Windows, Linux, iOS, and Android, and it's shielded by default. Vizor sends from your shielded balance, so a send to a u1 or zs address is shielded from end to end.
- Let the wallet finish syncing. Your spendable balance is only accurate once sync completes.
- Open Send and paste the recipient's address (or a payment request link), or pick one from Contacts. Vizor flags an invalid address before you continue.
- Enter the amount in ZEC or USD, or use Use Max. If the amount plus the fee is more than your shielded balance, Vizor tells you before you review.
- Add a message (optional). The message is the Zcash memo. It's encrypted, and only the recipient can read it. The memo field holds up to 512 bytes. Vizor only offers a message for shielded recipients, because memos only work with shielded addresses.
- Click Review. Check the recipient, the amount, and the Tx fee.
- Click Confirm & send.
The transaction shows up in Activity. The recipient's wallet picks it up once it's mined and synced. If a send needs Sapling, for example to a zs address, Vizor may first ask to download about 50 MB of cryptographic parameters.
Got ZEC on an exchange? Withdraw, then shield
Many people's ZEC starts on an exchange. To get it into a private wallet:
- In Vizor, open Receive. You'll see a shielded Unified Address and a transparent address.
- If the exchange accepts your shielded address, withdraw to it. Your funds arrive shielded.
- If the exchange only supports transparent withdrawals, copy the transparent address instead. Send a small test amount first, then the rest.
- When the funds arrive, shield them in Vizor. Vizor only sends from your shielded balance, so you have to shield transparent funds before you can spend them.
The withdrawal and the amount you shield are public, because they touch a transparent address. After the funds are in your shielded balance, what you do with them isn't. Vizor also rotates your transparent receive address after each deposit, so separate withdrawals don't land on the same public address.
Pick the right network on the exchange. Withdraw native ZEC on the Zcash network, not a wrapped token on another chain. Binance warns that if you choose the wrong network, your funds might be lost.
Sending to an exchange that needs a TEX address
Binance asked for a way to reject deposits that come from shielded addresses and return them to the sender. TEX addresses came out of that request (ZIP 320). They start with tex1. A wallet that supports them won't pay a TEX address directly from a shielded balance.
When you send shielded ZEC to a TEX address, ZIP 320 requires the wallet to use two transactions:
- Unshield the amount to a fresh, one-time transparent address that your wallet controls.
- Send from that one-time address to the exchange's TEX address.
The exchange sees a transparent source it can refund to. It doesn't see your shielded address or your history. The one-time address is never reused.
In Vizor:
- Paste the
tex1address into Send. Vizor recognizes TEX addresses and labels them on the review screen. - You can't add a message. TEX recipients behave like transparent recipients.
- You pay a network fee for each of the two transactions.
- If the exchange sends the deposit back, or the second step expires, Vizor detects and recovers the returned funds.
What's public: the amount, the one-time transparent address, and the exchange's address. Your shielded balance and past payments aren't.
Not every wallet can do this. Ledger's own support page says Ledger Wallet does not currently support sending ZEC to TEX addresses. If your wallet rejects a tex1 address, move the funds to a wallet that supports TEX and send from there.
Sending from a Ledger or Keystone
A hardware wallet adds one step: you approve every send on the device, and your keys never leave it. Vizor supports both.
Ledger (USB or Bluetooth)
- Use the Zcash app 3.10.0 or newer. Vizor requires it for NU7, so update before activation.
- In Vizor, open Send on your Ledger account and fill in the address, amount, and optional message.
- Check the address and amount on the Ledger screen, then approve.
Messages that aren't in English or that span several lines need Zcash app 3.9.4 or later, and the Ledger shows them as a hash. Vizor can't send from a Ledger account to a Sapling (zs) address. Ask the recipient for a Unified Address instead.
Keystone 3 Pro (air-gapped QR)
- Run Keystone's Cypherpunk firmware, version 3.0.2 or later for Ironwood. Before NU7 activates, check Keystone's firmware page for any update.
- In Vizor, fill in the send and review it.
- Scan Vizor's QR code with the Keystone, check and approve on the device, then click Get Signature in Vizor and scan the signed QR code back in.
TEX sends work on Keystone too. Vizor walks you through a two-transaction QR signing flow.
Fees and timing
Fees. Zcash wallets follow ZIP 317. The fee is 5,000 zatoshis per logical action, and every transaction pays for at least two actions. A simple send costs 10,000 zatoshis (0.0001 ZEC). Transactions with more inputs or outputs cost more. A proposed update, ZIP 2009, would cut the rate to 1,000 zatoshis per action, so the minimum would fall to 2,000 zatoshis. It would apply from mainnet block 3,590,000, expected around November 19, 2026. Either way, your wallet shows the exact fee on the review screen before you confirm.
Timing. Zcash targets one block every 75 seconds today. NU7 is expected around November 5, 2026 (UTC), at block 3,543,405, and cuts the target to 25 seconds. In Vizor, funds you receive from someone else become spendable after six confirmations, and change from your own sends after three. Exchanges set their own confirmation requirements, so check the deposit page.
Common mistakes
- Choosing the wrong network. Withdraw on the Zcash network. A wrapped token on another chain isn't native ZEC.
- Reusing a transparent address. Every deposit to the same
taddress links to the others in public. Use a fresh address, or shield funds as soon as they arrive. - Sending before sync finishes. Your balance and the notes you can spend aren't final until sync completes. If a send fails, let sync finish before you retry.
- Skipping the test amount. For a first withdrawal or a new exchange address, send a small amount before the rest.
- Using an outdated wallet around NU7. Update Vizor and your Ledger's Zcash app before activation. Vizor warns that some transaction actions may pause briefly around the upgrade.
For backups and cold storage, see how to store ZEC safely and privately.
FAQ
Is sending ZEC private?
It depends on the addresses. A send from a shielded balance to a shielded address keeps the sender, receiver, amount, and memo encrypted. Any transparent address involved, including a TEX address, puts that side of the payment and the amount on the public chain.
Can I cancel a ZEC transaction?
Not once it is mined. A transaction that never gets mined expires instead of staying stuck. Wallets set the expiry about 50 minutes ahead by default (40 blocks before NU7, 120 blocks after), and the funds become spendable again once it passes.
Why didn't my exchange accept my address?
Some exchanges only support transparent addresses. If you are withdrawing, give the exchange your transparent address and shield the funds after they arrive. If you are depositing to Binance, your deposit address may be a TEX address (starting with tex1), which only wallets that support ZIP 320 can send to.
How do I send ZEC to a Binance TEX address?
Use a wallet that supports TEX addresses, such as Vizor, and paste the tex1 address exactly as Binance shows it. The wallet sends your shielded funds through a one-time transparent address and then on to Binance, so you pay two network fees and cannot attach a memo.
How much does it cost to send ZEC?
Under ZIP 317, the fee is 5,000 zatoshis per logical action with a minimum of two actions, so a simple send costs 10,000 zatoshis (0.0001 ZEC). A proposed update, ZIP 2009, would cut that to 1,000 zatoshis per action from block 3,590,000. Your wallet shows the exact fee before you confirm.
How long does a ZEC transaction take?
Zcash targets one block every 75 seconds today. NU7, expected around November 5, 2026 (UTC), cuts that target to 25 seconds. Vizor makes shielded funds you receive from someone else spendable after six confirmations.
Ready to send ZEC privately? Get Vizor. It's free, open source, and works with Ledger and Keystone. Questions? Visit Vizor support or browse the code on GitHub.