Documentation

How it works

Launch a token, earn a fee on every trade against it, and take that fee out as shielded ZEC. This page covers the whole path: where the fee comes from, who holds it, how it becomes Zcash, and what is and is not private along the way.

Overview

A launch here is an ordinary pons v2 token: a bonding curve holding the entire supply, tradeable from the first block, graduating into a pool with permanently locked liquidity. What is different is where the fee goes.

Every trade pays 2% to the creator. That fee does not sit in a shared treasury or a contract you have to trust: it accrues to a wallet belonging to that launch alone, is claimed on a schedule, and is paid out in ZEC to an address you control.

  1. 01LaunchName the token and pay the launch fee. The whole supply is minted to a bonding curve, and a fee vault is derived for it in the same transaction.
  2. 02EarnTwo percent of every trade against the token accrues to that vault, in the asset the token trades against.
  3. 03CollectThe keeper claims the vault out of the fee escrow on a schedule, and records what it collected.
  4. 04Take it outCollected fees are converted to ZEC, shielded, and sent to a Zcash address you hold the keys to.

The fee

Creator fee2.00%Charged on every trade and collected into that launch's vault.
Curve fee1.00%Charged on trades against the bonding curve.
Launch fee0.0005 ETHPaid once, when you create the token.
Vault gas0.001 ETHSent to the launch's vault so it can pay for its first claim.
Pool feeNoneThe graduated pool charges no Uniswap fee of its own.

Fees are always charged in the asset the token trades against, never in the token itself, so you are never handed a bill denominated in something you were trying to sell.

The creator fee is the same 2% on every launch. It is not a setting. A per-launch choice only ever produced tokens that were quietly worse to trade than their neighbours.

The fee vault

Every launch derives its own fee vault, and that vault is set as the token's fee recipient in the launch transaction itself. Fees from one token accrue only to that token's vault, so one launch's volume can never fund another's payout.

The address has to be known before the token exists, because the fee recipient can only be set at creation and never afterwards. Each vault is derived deterministically from a single secret we hold, combined with a public value recorded alongside the launch. That public value reveals nothing on its own: only the secret turns it into a key, and the secret never leaves the server.

A vault can hold fees and forward them. That is all. It cannot mint, cannot reach locked liquidity, and cannot touch anyone's balance.

The keeper

Fees do not arrive in the vault by themselves. They accumulate in the pons fee escrow and have to be claimed, and the keeper is the process that claims them: it walks every launch on a fixed schedule, collects whatever has accrued, and records the claim.

Nothing is claimed until it is worth more than the gas to collect it. Below that floor the fees stay in the escrow, which costs nothing and loses nothing.

Before graduation, fees behave differently than most people expect. The escrow is not credited on every trade: the fee sits on the launch's own curve until graduation moves it. So a token can have genuinely earned fees that nothing can collect yet. Those are shown separately rather than counted as zero.

Shielded payouts

Collected fees are converted to ZEC at the rate recorded at conversion time, then moved into Zcash's shielded pool before they are sent on. The recorded rate is what makes a payout checkable: you can reconcile what arrived against what was collected.

fee collected → converted to ZEC → shielded → sent to your address

Only the last step touches an address you gave us, and by then the transfer is already inside the shielded pool. The amount, the sender and the recipient are encrypted on chain from that point on.

Status. Fee collection is live: fees accrue to per-launch vaults today and the keeper claims them. Conversion to ZEC, shielding and payout are not switched on yet, and wallet generation on the claim page is deliberately disabled rather than stubbed with a placeholder address. Until that ships, treat the payout figures as an accounting of what has been collected, not as funds you can withdraw.

Why Zcash

Fees are earned in public. Every trade against your token, every amount and every address is recorded on a chain anyone can read, so a creator's income is a matter of public record and stays that way forever.

A shielded ZEC payout breaks that link. Zcash's shielded pool encrypts the sender, the recipient and the amount, and proves the transaction is valid without revealing any of them. Only somebody holding the viewing key can see what moved.

TradingPublicEvery swap against your token is on chain and readable by anyone.
Fee collectionPublicVault addresses and claim transactions are on chain.
ConversionPublicThe swap to ZEC happens on a public venue at a recorded rate.
PayoutShieldedAmount, sender and recipient are encrypted once inside the pool.
Read that table rather than the headline. Shielding protects the payout, not the trading. Your launches, their volume and their fee take are public and always will be. What is private is what you took out and where it went.

Claiming

Payouts go to a shielded Zcash address you supply, starting u1 or zs1. Transparent addresses starting t1 are refused: a payout to one would be public on arrival, which defeats the point of shielding it.

We never hold your Zcash keys. That is the whole arrangement, and it cuts both ways: nothing here can freeze or claw back a payout, and nothing here can recover one sent to an address you do not control. Check the address before you claim.

Go to the claim page.

Lifecycle

  1. 01CreateYou set a name, ticker, image and links, and pay the launch fee. The entire supply is minted straight to a bonding curve. Nobody, including you, is holding a bag set aside beforehand.
  2. 02Trade the curveAnyone can buy and sell immediately. Price rises as people buy and falls as they sell, and the curve always takes the other side, so there is never a wait for liquidity.
  3. 03GraduateOnce the curve sells out, everything it collected seeds a Uniswap v4 pool and that liquidity is locked permanently.
  4. 04CollectFees keep accruing for the life of the token, and keep being claimed into its vault.

Bonding curve

A bonding curve is a vending machine. It holds the whole supply from the moment of launch and will always sell you tokens and always buy them back. The price is worked out from how much of the supply has been bought so far, not set by anyone, and not negotiated.

This is why a token is tradeable in its first block with nobody providing liquidity. It is also why early buys are cheaper than late ones: the price is a function of how much has already been sold, so the curve climbs as supply leaves it.

A portion of the supply is held back from the curve and reserved for the pool the token graduates into. That reserved amount is what seeds real liquidity at graduation, and it is set by the launch configuration rather than by the creator.

Graduation

When the curve has sold its sellable supply, the launch graduates. Everything the curve collected, together with the reserved supply, seeds a Uniswap v4 pool, and the liquidity position is locked permanently.

Permanently means what it says. There is no timelock that expires, no multisig that can withdraw it and no admin function that can move it. The tokens and the pair asset backing that pool stay there for as long as the chain exists.

Graduating is not a quality signal. It means the curve sold out and nothing more. A token that graduates can still trade down afterwards, like anything else.

Contracts

Everything runs on the pons v2 contracts on Robinhood Chain, chain id 4663. Each launch gets its own token and curve, which you should resolve from the factory rather than hardcoding.

Risks

  • Payouts are not switched on yet. Fees are being collected into per-launch vaults today, but conversion, shielding and transfer are not wired. Until they are, a payout figure is an accounting of what has been collected, not money you can withdraw.
  • Shielding protects the payout, not the trading. Your launches, their volume and their fee take are public on chain and always will be.
  • A wrong address loses the money. We do not hold your Zcash keys, so nothing here can recover ZEC sent to an address you do not control.
  • Fees depend entirely on trading. A token nobody trades earns nothing. There is no yield here, only a share of activity that may never happen.
  • Conversion carries market risk. Fees are earned in one asset and paid in another, so the amount of ZEC you receive depends on the rate at conversion, not the rate when the fee was earned.
  • Anyone can create a token with any name, including one that impersonates a real project. Names are not unique and are not verified. Check the contract address, which is the only identifier that cannot be copied.
  • Graduating is not a quality signal. It only means the curve sold out.
  • Transactions are signed by your own wallet and are irreversible.

FAQ

Are payouts live?

Not yet. Fee collection into per-launch vaults is running, and the keeper claims it. Conversion to ZEC, shielding and transfer are not switched on, and the claim page says so rather than pretending otherwise.

Do you hold my Zcash keys?

No. You supply a shielded address and the payout goes to it. Nothing here can move, freeze or recover what has been sent.

Can I be paid to a transparent address?

No. A t1 address would make the payout public on arrival, which is the thing shielding exists to prevent.

Is my trading private?

No, and it is worth being clear about it. Every trade against your token is public on Robinhood Chain. Only the payout is shielded.

What happens to fees earned before graduation?

They sit on the launch's own curve until graduation moves them into the escrow. They are genuinely earned and are shown separately rather than counted as zero.

Who receives the creator fee?

The fee vault belonging to that launch alone, at an address fixed in the launch transaction.

Can locked liquidity ever be withdrawn?

No. There is no timelock that expires and no function that can move it.

Ready to launch?
The whole thing takes one transaction.
Launch a token