Skip to main content

Withdraw (USDC → GBP / EUR)

Send USDC balance back to the user's own bank. First-time: capture bank details + create the liquidation address; subsequent times: reuse the cached address.

Sequence

Screens

  • apps/mobile/app/withdraw/index.tsx — entry.
  • apps/mobile/app/withdraw/bank-details.tsx — form for GBP or EUR.
  • apps/mobile/app/withdraw/amount.tsx — USD input.
  • apps/mobile/app/withdraw/confirm.tsx — review.
  • apps/mobile/app/withdraw/receipt.tsx — polls status.

Fees & timing

  • Bridge off-ramp: 0.50% on the USDC→fiat conversion.
  • GrinGo: 0% on withdrawals (no spread applied).
  • Timing: FPS is near-instant. SEPA can be same-day/next-day depending on the receiving bank.

Notes on cached addresses

  • The liquidation address is cached per (user, currency) because the user's own bank rarely changes. If they update their bank details for a currency, we should invalidate the cached address — this isn't currently implemented, so changing bank details for a currency means the old address stays orphaned in Bridge.
  • If a user maintains bank details in both GBP and EUR, that's two separate liquidation addresses.