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.