Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

Withdrawing

How to withdraw privately from Shinobi Cash.

Overview

Withdrawing uses a zero-knowledge proof to verify you own a deposit without revealing which one. The recipient can be any address on any supported chain.


Withdrawal Steps

  1. Navigate to Withdraw — Select the Withdraw tab
  2. Select Notes — Choose one or two notes to withdraw from
  3. Enter Amount — Up to the total balance of selected notes
  4. Enter Recipient — Any valid address
  5. Select Destination Chain — Where funds should arrive
  6. Review Fees — Relay fee + solver fee (if crosschain)
  7. Confirm — Proof generates in your browser, then submits

Note Selection

You can select up to 2 notes for a single withdrawal:

ModeDescription
Single noteWithdraw from one note
Merge (2 notes)Combine two notes into one withdrawal

Merging is useful when you have multiple small notes and want to make a larger withdrawal.

When you select 2 notes, the UI shows a "Merge" indicator.


Proof Generation

When you confirm a withdrawal, your browser generates a zero-knowledge proof.

This takes approximately 5-15 seconds. Keep the browser tab active during this time.

The proof verifies:

  • You know the secret for a valid commitment
  • The commitment is in the pool and approved by an ASP
  • The nullifier hasn't been spent

No Wallet Gas Required

Shinobi Cash uses ERC-4337 Account Abstraction for withdrawals:

  • You don't need gas in your wallet
  • A paymaster sponsors the transaction
  • Gas cost is deducted from your withdrawal (relay fee)

This means you can withdraw to a fresh address without funding it first.


Same-Chain Withdrawal

When withdrawing on the pool chain:

  1. Proof validates in the pool contract
  2. Funds transfer directly to recipient
  3. Paymaster sponsors gas

Fees: Relay fee only


Crosschain Withdrawal

When withdrawing to an origin chain:

  1. Proof validates on pool chain
  2. Intent created with escrowed funds
  3. Solver fills on destination chain
  4. Recipient receives funds

Fees: Relay fee + solver fee


Change Notes

A change note is always created with your remaining balance:

Amount
Selected notes1.0
Withdrawal0.3
Change note0.7 (minus fees)

If you withdraw the full amount, the change note has zero balance.


Withdrawal States

StatusMeaning
PreparingGenerating zero-knowledge proof
SubmittingTransaction being sent via bundler
ConfirmingWaiting for block confirmation
ConfirmedComplete; notes will sync shortly

For crosschain withdrawals, there's an additional wait for the solver to fill.


Fees

FeeWhenPurpose
Relay FeeAlwaysCovers gas (dynamic)
Solver FeeCrosschain onlyCompensates solver

Tips


Troubleshooting

Proof generation is slow

  • Keep the browser tab active and focused
  • Close other resource-heavy tabs
  • Normal time: 5-15 seconds

Transaction failed

  • Check the note is still available (not spent elsewhere)
  • Verify recipient address is valid
  • Ensure ASP approval is complete

Crosschain withdrawal stuck

  • Solvers usually fill within minutes
  • If expired, funds return as a refund commitment
  • Refund can be withdrawn normally

Important


Learn More