ZUL://DOCSPRIVACY LAYER 2 — SETTLED ON SOLANA
INDEX
SETTLEMENT & BRIDGE — /docs/bridge/deposits

Deposits

A deposit moves value from Solana L1 into ZUL. It is the bridge's simple direction: lock on L1, credit on L2, no proofs required — the L2 trusts finalized L1 events.

Flow

DEPOSIT
1. user      sends SOL (or SPL-ZUL) to the bridge vault PDA
              — a memo carries the L2 recipient pubkey
2. watcher   the node's L1 watcher sees the deposit reach
              finalized commitment (~32 confirmations, ≈1 min)
3. node      injects an L2 mint transaction:
              SOL     → mints wSOL to the recipient's token account
              SPL-ZUL → burned on L1, credited as native ZUL lamports
4. explorer  the credit is an ordinary L2 transaction — visible,
              linkable to its L1 deposit signature

Properties

  • Finality gate — the watcher acts only on finalized L1 state, so an L1 reorg cannot orphan a credit that already happened.
  • Deterministic credit — the mint transaction is derived from the deposit event; replaying the watcher cannot double-credit (deposits are tracked by L1 signature).
  • Public by nature — deposits are not private. Privacy starts when value enters the shielded pool, which is a separate, explicit step on L2.

Asset outcomes

YOU DEPOSIT (L1)YOU RECEIVE (L2)
SOLwSOL — an SPL token minted by the L2 bridge authority
SPL-ZULNative ZUL lamports (the L1 tokens are burned)

Full asset semantics, including why ZUL is native on one side and wrapped on the other, are in Asset mapping.

UI

The /bridge page drives this flow: deposits show as pending until the finality gate passes, then credit on L2 within a slot.