hush.fun
anon@hush:~/docs$ cat how-it-works.md

private payouts,
in real zcash

Every coin on hush trades against ZEC, every trade carries a 1% holder fee, and that fee travels through NEAR Intents to the Zcash chain, where it is paid out as native ZEC to the people holding the coin. Claim to a shielded address and your payout is private by default. No wrapped tokens, no bridge custody, no accounts.

ZEC-paired

Every coin trades against ZEC on Solana, from the first buy to the AMM.

Paid in native ZEC

Holder payouts settle on the Zcash chain itself, not as an IOU on Solana.

Private by default

Claim to a u1… or zs1… address and amounts and memos are encrypted.

01

overview

A coin on hush is a normal Solana token with a bonding curve, launched in one transaction. Three things make it a hush coin, and all three are fixed the moment it is created:

  1. 1It is quoted in ZEC. Buyers pay ZEC on Solana, sellers receive ZEC, and when the curve fills the coin graduates to an AMM pool paired with ZEC.
  2. 2It carries a 1% holder fee. One percent of every buy and every sell, on the curve and after graduation, accrues to a vault that belongs to that coin alone.
  3. 3Its fees become native Zcash. A keeper sends what the vault collects through NEAR Intents to the Zcash chain, splits it across holders in proportion to what they hold, and lets each holder withdraw to any Zcash address.

The result is a coin whose holders earn a real, liquid, private asset simply by holding. There is nothing to stake, nothing to lock and no claim token: hold the coin in any Solana wallet and your share is set aside at every distribution.

02

why hush

› Rewards you can actually use

ZEC is one of the most liquid privacy assets in the market. A payout in ZEC is something you can spend, hold, shield or move anywhere, not a points balance or a second token you have to sell.

› Native, not wrapped

Payouts arrive on the Zcash chain as real ZEC. Nothing is minted on Solana to represent them and no bridge holds the backing. NEAR Intents moves the value and settles it at the destination.

› Private at the destination

Withdraw to a unified or Sapling address and the amount you received is encrypted on chain. What you do with your payout is nobody's business.

› Aligned from the first trade

Because the curve is quoted in ZEC, the fee is ZEC from the start. Paying holders never means selling another asset into the market, and every coin's price moves with Zcash.

› One signature to claim

Claiming is a signed message, not a transaction. No gas, no bridging UI, no account to create. Name an address, sign, done.

› Everything in the open

Vaults, collects, sweeps, snapshots and payouts are all on chain or on the site with their transaction links. Anyone can follow the money from a trade to a holder's payout.

03

the lifecycle

From a trade on Solana to ZEC in a holder's wallet, in six steps.

  1. 01launchThe coin is created on a ZEC-quoted curve with a 1% holder fee and its own vault.
  2. 02tradeEvery buy and sell pays 1% in ZEC into the vault.
  3. 03collectThe keeper collects the vault once 0.002 ZEC has accrued.
  4. 04sweepCollected ZEC is sent through a NEAR Intent and arrives as native ZEC in the coin's pool.
  5. 05distributeAt 0.01 ZEC the pool is split across a snapshot of every holder.
  6. 06claimHolders sign a message and name a Zcash address. An intent delivers it.
  SOLANA                  NEAR INTENTS               ZCASH
 +----------------+      +-------------------+      +-----------------------+
 | buy / sell     |  1%  | zec (solana)      | pool | round: pro-rata split |
 | ZEC <-> $COIN  |----->|   -> native zec   |----->| claim -> u1.. / zs1.. |
 +----------------+ vault+-------------------+      +-----------------------+
04

launching a coin

The launch form takes a name, ticker, image, an optional description and links, and an optional initial buy. Everything happens in one confirmation in your wallet.

  1. 1The image and the metadata document are pinned to IPFS, so the coin's name, art and links live on content-addressed storage rather than a server.
  2. 2The server derives a fresh vault keypair for this coin and builds the create instruction: quote asset ZEC, holder fee 1%, the vault as the coin's fee recipient, your wallet as fee payer. If you set an initial buy, it is added to the same transaction at the opening price.
  3. 3The new mint signs its own creation server-side, your wallet signs as fee payer, and the server broadcasts and waits for confirmation. The coin is live the moment it confirms.

## Paying the initial buy in SOL

You can fund the initial buy with SOL instead of ZEC. The form quotes a SOL → ZEC swap through Jupiter and shows what your SOL becomes. When you launch, your wallet signs two transactions in one prompt: the swap, and the launch. The swap lands first; the launch then buys with the swap's guaranteed minimum output, so the buy can never ask for more ZEC than arrived. Anything the swap delivers above that minimum stays in your wallet.

The swap and the launch are separate transactions. If the swap lands and the launch does not, you simply hold the ZEC and can launch again paying in ZEC. Nothing is lost beyond network fees.

## What is fixed at launch

SettingValueCan it change?
Quote assetZEC on SolanaNo: written into the curve
Holder fee1% of every tradeNo: written into the curve
Fee vaultDerived for this coinNo: set as the coin's creator
Name, ticker, imageYour choiceNo: pinned metadata
05

trading in zec

quote asset
hush coins are bought and sold with ZEC on Solana (mint A7bd…XaS), the same asset NEAR Intents moves to and from the Zcash chain. You still need a little SOL for network fees.

Before graduation, every coin trades on its bonding curve: price rises as supply is bought and falls as it is sold, with ZEC as the reserve. When the curve fills, liquidity migrates to an AMM pool paired with ZEC and trading continues there. The 1% holder fee applies in both places.

Get ZEC on Solana by swapping SOL on any Solana aggregator, or bring native ZEC over from the Zcash chain on the bridge. Every coin page links straight to where it trades.

get zec on solana ↗
06

the 1% holder fee

Every buy and every sell pays 1% of its size, in ZEC, into the coin's vault. This is the only fee hush adds, and all of it is routed to holders. The vault is a public account: anyone can read it on Solscan, and every coin page shows what is accruing, what is in transit and what is in the pool.

## Collecting

The keeper checks every coin on a loop. Once a vault holds at least 0.002 ZEC, from the curve and from the AMM after graduation, the keeper collects it. The keeper pays the network fees itself, and it credits only the amount the collect actually added, measured before and after, so a vault's accounting can never drift from what is on chain.

## Worked example

example
24h volume
120 ZEC of buys and sells
Holder fee (1%)
1.2 ZEC into the vault
Sweeps
collected and sent through intents as it accrues
Distributions
the pool pays out every time it passes 0.01 ZEC
A wallet holding 2% of circulating supply
≈ 0.024 ZEC for that day
07

near intents

the rail
NEAR Intents is a chain-abstracted settlement network. Instead of executing a cross-chain transfer step by step, you state the outcome you want: this much of an asset in, delivered as that asset on that chain. A network of solvers competes to fill it, and the winning fill settles on the destination chain.

hush uses intents for both movements of value:

IntentMovementOpened by
SweepZEC on Solana → native ZEC held in the poolThe keeper, after every collect
WithdrawalNative ZEC from the pool → a holder's Zcash addressA holder, by claiming

## How a sweep works

  1. 1The keeper asks the 1Click API for a quote: exact input of the collected ZEC on Solana, native ZEC out, credited to the pool's account inside intents.near.
  2. 2The quote returns a one-time deposit address on Solana. The keeper transfers exactly the quoted ZEC from the coin's vault to it and reports the deposit.
  3. 3Solvers fill the intent, usually within seconds, and the native ZEC lands in the pool. The coin page shows the sweep as settled with the amount received.

## How a withdrawal works

  1. 1When you claim, the server quotes a withdrawal: native ZEC from the pool to your address on the Zcash chain.
  2. 2The pool's ZEC is moved to the quote's deposit account inside intents.near with a signed transfer intent.
  3. 3Solvers deliver it on Zcash. Your claim flips to paid with a link to the Zcash transaction.

## Deadlines and refunds

Every intent is quoted with a 15 minute deadline and a refund path. A sweep that does not fill refunds the ZEC to the coin's vault, where it is swept again on the next pass. A withdrawal that does not fill returns your credit, which shows as refunded and can be claimed again.

near intents documentation ↗
08

bridge: sol → real zec

The bridge uses the same NEAR Intents rail as payouts to move value between Solana and the Zcash chain. Turn SOL into native ZEC and send it straight to a shielded address, cash out ZEC on Solana to real Zcash, or bring Zcash over to Solana to trade hush coins. No account, no bridge custody, no wrapped token minted for you.

RouteYou sendYou receiveYou do
SOL → ZECSOL on SolanaNative ZEC at any Zcash addressSign once
ZEC (Solana) → ZECZEC on SolanaNative ZEC at any Zcash addressSign once
ZEC → ZEC (Solana)Native ZECZEC on Solana, ready to tradeSend from a Zcash wallet

## Swapping from Solana

  1. 1Pick a route, enter an amount and paste the Zcash address to receive at. The page shows a live quote from the solver network: what arrives, its dollar value, the guaranteed minimum and the expected time.
  2. 2Press swap. The site fetches a firm quote with a one-time deposit address and builds a single transfer from your wallet to it. Your wallet signs once.
  3. 3The transfer is broadcast and reported to NEAR Intents. Solvers fill the intent and deliver native ZEC on the Zcash chain, usually within a few minutes.
  4. 4The page tracks the intent live: deposit, solvers filling, delivered, with links to the Solana deposit and the Zcash delivery transaction.

## Bringing ZEC to Solana

  1. 1Choose ZEC → ZEC (Solana), enter the amount, where to receive on Solana (your connected wallet by default) and a Zcash address for refunds.
  2. 2The page shows a one-time Zcash deposit address and the exact amount. Send it from any Zcash wallet before the deadline; both have copy buttons.
  3. 3Once the Zcash transaction confirms, solvers deliver ZEC on Solana to your wallet. Use it to trade any hush coin.

## Refunds, deadlines and fees

Every bridge quote carries a 30 minute deadline and a refund address. If solvers cannot fill it in time, the funds go back where they came from: your Solana wallet, or the Zcash refund address you gave. The quote you see already includes the solvers' price and the 1Click service fee; the amount that arrives is shown on the page as soon as it settles.

The bridge remembers an in-flight swap, so you can close the tab or reload and come back to its status. Starting a new swap never cancels one that is already running.
open the bridge →
09

distributions

When a coin's pool reaches 0.01 ZEC, the keeper opens a distribution round. It reads every holder of the coin at a single Solana slot, so the snapshot is one consistent moment rather than a moving average.

  1. 1Every token account for the coin is read at one slot over Helius.
  2. 2Accounts that hold supply but are not holders are excluded: the bonding curve, the AMM pool and the coin's own vault.
  3. 3Each wallet is credited (its balance ÷ circulating supply) × the pool.
  4. 4Shares smaller than 0.00001 ZEC are not written; that dust rolls into the next round, so nothing is lost.
example
Pool
0.50 ZEC
Circulating (excl. curve, pool, vault)
800,000,000 tokens
Your balance at the snapshot slot
16,000,000 tokens (2%)
Your credit for this round
0.01 ZEC
Selling after a snapshot does not forfeit that round. The credit is yours from the moment the round opens, and it stays claimable for as long as you like.

Every round is public: the slot, the holder count, the amount and the coin are listed on the coin page and on the payouts page.

10

claiming

Open the claim page and connect the wallet that holds the coin. The page lists every hush coin in the wallet, every credit you have earned and every payout already sent.

  1. 1Paste a Zcash address. Unified (u1…) or Sapling (zs1…) keeps the payout private; transparent (t1…) works too.
  2. 2Press claim. Your wallet asks you to sign a short message that names your wallet, the asset, the destination address and the time. No transaction is sent and no gas is paid.
  3. 3The server checks the signature, reserves every open credit for that wallet in one claim, checks the address with NEAR Intents, and opens the withdrawal.
  4. 4The claim shows as on its way until the Zcash chain confirms it, then as paid with the transaction link.

Claims open once your unclaimed total reaches 0.0005 ZEC. Credits below that keep accumulating round after round until it does.

11

private payouts

Zcash has two kinds of address. Shielded addresses encrypt the amount, the memo and the recipient on chain; transparent addresses work like Bitcoin and are fully visible. hush pays to either, and recommends a shielded one.

AddressLooks likeOn the Zcash chain
Unifiedu1…Private. Recommended; modern wallets use these by default.
Saplingzs1…Private.
Transparentt1… / t3…Public: anyone can see the amount and address.

## What is public, what is private

› Public

The Solana wallet that held the coin, the credit it earned in each round, and the fact that a claim was opened. These live on Solana and on this site.

› Private (shielded address)

Where the ZEC went and what happened to it next. Once a payout lands on a shielded address it is encrypted like any other shielded Zcash transfer.

The address you claim to is stored so the withdrawal can be opened and retried, and it is never shown to anyone else. For the strongest privacy, use a fresh unified address from a shielded wallet such as Zashi or Ywallet for each claim.

12

security & custody

› Per-coin vaults

Each coin's fees accrue to its own vault. The vault key is derived from the keeper secret and a salt stored with the coin, so no per-coin private key is ever written down, and one coin's fees can never be mixed with another's.

› Exact accounting

The keeper credits only what each collect added, measured on chain before and after, and sweeps only what it credited. It pays every network fee from its own wallet and keeps a gas reserve.

› Signed claims

A claim is a message signed by the holding wallet. It names the destination and a timestamp and expires after 10 minutes, so a captured signature cannot redirect funds or be replayed later.

› No double claims

Credits are reserved atomically when a claim opens. Two requests from the same wallet cannot both take the same credit; a failed withdrawal releases it again.

## What is held, and where

BetweenAssetHeld by
Trade → collectZEC on SolanaThe coin's vault (on chain, public)
Collect → sweepZEC on SolanaThe coin's vault
Sweep → claimNative ZECThe pool's account in intents.near
Claim → payoutNative ZECThe NEAR Intents solver network until it lands

The keeper operates the vaults and the pool; that is the trust hush asks for. In return everything it does is visible: every collect, sweep and payout has a transaction on Solana, NEAR or Zcash.

13

parameters

ParameterValueNotes
Quote assetZEC on SolanaEvery curve and AMM pool
Holder fee1% (100 bps)Every buy and sell; all of it goes to holders
Collect at0.002 ZECPer coin vault
Sweep at0.005 ZECMinimum for one intent
Distribute at0.01 ZECPool size that opens a round
Dust floor0.00001 ZECSmaller shares roll forward
Claim at0.0005 ZECMinimum unclaimed total to withdraw
Claim signature10 minValidity of a signed claim message
Intent deadline15 minRefunded if unfilled
Intent slippage1%On sweep, withdrawal and bridge quotes
Bridge deadline30 minUnfilled bridge swaps refund to the sender
SOL → ZEC slippage1%Jupiter quote for a SOL-paid initial buy
14

glossary

Bonding curve
The automatic market a coin trades on at launch. Price follows supply sold; ZEC is the reserve.
Graduation
When the curve fills and liquidity moves to an AMM pool paired with ZEC.
Vault
The coin's own account that receives its 1% holder fee in ZEC.
Keeper
The process that collects vaults, opens sweeps, runs rounds and settles claims.
Pool
Native ZEC held for a coin's holders inside intents.near, between sweep and claim.
Round
One distribution: a holder snapshot at one slot and a pro-rata split of the pool.
Intent
A signed request for an outcome that solvers compete to fill on NEAR Intents.
Deposit address
A one-time address a quote returns; paying it is what starts an intent.
Shielded address
A Zcash address (u1…, zs1…) whose transfers are encrypted on chain.
15

faq

? Do I need to stake or lock anything to earn?

No. Hold the coin in any Solana wallet you control. Every round credits you automatically; you only act when you want to withdraw.

? How do launchers benefit?

A launcher is a holder like everyone else, usually an early and large one, so they earn from every trade their coin attracts, in ZEC, for as long as they hold. And a coin whose holders are paid in real Zcash is a coin people have a reason to hold.

? Why ZEC instead of SOL?

Because the fee is ZEC from the first trade, paying holders never means selling anything into the market, and the payout is an asset with real privacy and real liquidity. It also ties every coin on hush to Zcash.

? Do I need a Zcash wallet?

Only to receive payouts. Zashi and Ywallet both give you a shielded unified address in a minute. Until you claim, your credits simply accumulate.

? Can I claim to an exchange?

Only if the exchange accepts the address type you use; most accept transparent (t1…) addresses. A wallet you control is safer and lets you receive privately.

? What if my share is tiny?

It accumulates. Every round adds to your unclaimed total, and you can withdraw once it reaches 0.0005 ZEC.

? What happens when a coin graduates?

Nothing changes for holders. The AMM pool is paired with ZEC, the 1% holder fee keeps accruing, and collects, sweeps and rounds keep running.

? I sold right after a round. Do I still get paid?

Yes. Your credit is fixed at the snapshot slot. Selling afterwards changes your share of future rounds, not the ones already taken.

? How do I turn SOL into real Zcash?

Open the bridge, pick SOL → ZEC, paste your Zcash address and sign one transfer. Native ZEC arrives on the Zcash chain, usually within a few minutes. Use a u1… or zs1… address and it lands shielded.

? I have ZEC in a Zcash wallet. How do I trade hush coins?

Use the bridge's ZEC → ZEC (Solana) route: send from your Zcash wallet to the deposit address it shows, and ZEC on Solana arrives in your wallet, ready to trade.

? What does NEAR Intents charge?

Solvers price their fill into the quote, and the 1Click service may take a small fee per swap. Every sweep and payout on the site shows the amount that actually arrived.

? Is any of this custodial?

Between collect and claim, value sits in the coin's vault on Solana and then in the pool on intents.near, both operated by the keeper. Nothing is wrapped and no bridge holds reserves; every movement is an on-chain transaction you can inspect.

next

Launch a coin paired with Zcash, or claim what your coins have earned.

launch a coin →claim your zec