Unlinkable withdraw,
by design.

Reference HTTPS relayer for the tidex6 shielded pools — on Solana (wUSDC / wUSDT, hidden amounts) and on six EVM chains. We submit your withdraw transaction as the on-chain fee-payer, so your wallet never appears linked to the deposit source and you need no gas to be paid.

What we take: nothing on Solana, and nothing on a sealed-amount note — there the sender already paid the 1% when they deposited, so the recipient gets the full amount. On the older fixed-denomination pools the fee is 1% of the note, taken inside the withdrawal and visible on chain. No surveillance, no key custody: the proof is built in your browser and we never hold a spending key of yours.

Networks served

One relayer, one proof system. Each network has its own pools, its own tree and its own nullifier set — a note belongs to the chain it was deposited on.

Solanamainnet & devnet
Arcmainnet & testnet
ArbitrumSepolia
Robinhood Chaintestnet
BaseSepolia
HyperliquidHyperEVM testnet
WhitechainSepolia
POST
/withdraw/

Submit a Groth16 proof; we sign and forward to Solana — mainnet or devnet, matching your deposit network.

POST
/build-deposit/

Build an unsigned deposit transaction — your wallet signs it locally.

GET
/merkle-path/

Merkle path for a commitment — the browser proves the withdraw itself.

GET
/memo-accounts/

Sealed on-chain envelopes for client-side stealth scanning.

GET
/health/

Liveness probe — is the service accepting traffic?

GET
/stats/

Transparency: hot-wallet balance, processed count, uptime, both relayer addresses.

POST
/evm-withdraw/

The same, on an EVM chain: proof in, we submit and pay the gas, transaction hash out.

GET
/evm-relayer/

Our terms on a chain before you prove: address, fee and denomination. They are public inputs of the proof, so they must be fixed first.

GET
/evm-deposits/

Every deposit of a chain's pools in one answer, kept on disk as it is indexed — the browser needs the whole leaf list to rebuild a merkle path, and public nodes cap log queries.

POST
/build-refund/

Build an unsigned refund transaction — reclaim a deposit the recipient never collected.

POST
/rpc-<network>/

Read-only JSON-RPC proxy, one path per network (/rpc/, /rpc-devnet/, /rpc-arc-mainnet/, …). The browser reads chain state through it, so a page needs no node of its own and no API key in its source.

WS
/rpc-ws/

The same for subscriptions on Solana (/rpc-ws-devnet/ for devnet) — long-lived, no request timeout.

Live status

Relayer pubkey (Solana)
loading…
Relayer address (EVM)
loading…
Hot wallet balance
loading…
Withdraws processed
loading…
Uptime
loading…