Legal

Privacy

This describes what the code actually does, not a general policy template.

Dritch collects the minimum needed to run a marketplace: an on-chain wallet address, an optional email for trade alerts, and, only when you choose to add them, bank details for settling a specific trade. There is no analytics, no tracking pixel, and no third-party advertising SDK in this codebase. See Cookies & local storage for exactly what's kept in your browser.

What's collected and where it lives

DataWhereWhy
Wallet addressOn-chain (public by nature)Identifies you in escrow and trades.
Handle / usernameOff-chain, in Supabase, behind a signed-session token to change itShown to other traders instead of your raw address. Reassignable, and fully deletable - see Deleting your data below.
Email (optional)Off-chain, server-side, behind a signed-session tokenTrade alerts and account recovery. Never shown to other traders, never written on-chain, never required to trade.
Bank details (optional)Off-chain, encrypted at rest (AES-256-GCM)Shown only to the trader who owes you payment on a specific open trade, and only for the length of that trade; see api/trades/[id]/counterparty-bank.ts.

Nothing here is mandatory beyond a wallet and, if you want to trade, a handle. Claiming one costs no gas: it's a wallet signature, not a transaction. Signup asks for an email up front only as a convenience for trade alerts; leave it blank and create the account anyway; add it later from Portfolio → Payout details if you change your mind.

Storage

Handle, email and bank details are stored in Supabase when this deployment has it configured, behind Row Level Security with no anonymous access - only the server's service-role key can read or write them, gated by the same signed-session check described above. Without Supabase configured, this deployment falls back to an in-memory store that resets on redeploy or cold start; either way, this is disclosed in SECURITY.md, not hidden.

Wallet signatures, not passwords

Reading or changing private details requires a fresh wallet signature: a nonce, signed once, exchanged for a short-lived session token. Nothing is protected by a password, and nothing about your private key ever leaves your wallet.

Swap and the relay wallet

If you use Swap, the token you deposit briefly passes through a wallet Dritch operates before the swapped result is sent back to you. Dritch's server sees the deposit transaction, the swap execution, and the payout, all of which are already public on-chain, but does not collect anything beyond what the blockchain itself records.

Third parties

Swap execution is routed through Circle's swap infrastructure, which in turn uses a third-party DEX aggregator (currently LiFi) to find a route. Bridge transfers use Circle's Cross-Chain Transfer Protocol. Neither of these receives your email or bank details; only the transaction data that's already public on-chain.

Every third-party SDK this codebase actually ships, and what it can reach:

SDKUsed forCan access
wagmi / viemWallet connection, contract reads/writesYour wallet's public address and whatever it asks your wallet to sign, never your private key.
RainbowKit + WalletConnectThe "Connect wallet" modal and mobile-wallet pairingYour public address; WalletConnect's relay sees connection metadata for QR/mobile pairing, standard to the protocol.
@circle-fin/* (App Kit, Swap Kit, Bridge Kit)Swap quotes/execution, CCTP bridgingThe transaction data needed to quote and execute: asset, amount, chain. Never your email or bank details.
Google FontsTypefacesYour IP address, as with any font CDN request; see Cookies.

Nothing else in this codebase's package.json talks to the network at runtime: no analytics SDK, no error-reporting SDK, no ad SDK. Reviewed against the dependency list each time it changes; SECURITY.md carries the fuller technical review.

Children's privacy

Dritch is not directed at, and is not intended for, anyone under 18. Signup asks you to confirm you meet that age before an account is created. Dritch has no way to verify age beyond that affirmation; if you believe a minor has claimed a handle or submitted contact/bank details, email support@dritchapp.xyz and that off-chain data (handle, email, bank details) will be deleted. Any completed trade remains on the public blockchain regardless; see the limitation below.

Deleting your data

From Portfolio → Payout details, you can clear your saved email and bank details at any time; no request needed, no waiting on Dritch. Deleting your whole account also drops your handle. That deletes them from the server entirely, not just from what's shown to you (see DELETE /api/profile).

What deletion cannot reach, because no deletion can reach it: your wallet address and trade history are recorded on a public blockchain. No party, including Dritch, can delete data from a chain after it's confirmed. This is inherent to how Arc (and every blockchain) works, not a Dritch policy choice; if that's not an acceptable trade-off for you, don't trade on the marketplace under a wallet tied to your identity.

To request deletion of anything else Dritch might hold about you outside the self-service option above, email support@dritchapp.xyz.

Fonts and imagery

Typefaces (Space Grotesk, Inter, JetBrains Mono) are served by Google Fonts under the SIL Open Font License. Every icon and logo mark in the app is original SVG artwork drawn for this project; no stock imagery, no unlicensed third-party assets.

Related

Terms · Refunds & disputes · Cookies

Contact

See the Contact page for questions about this policy.

← Back to Dritch