# x402drop — Full Product Context > Crypto-native temporary file storage paid in USDC via the x402 HTTP payment protocol. ## Canonical URL https://x402drop.com ## Product Overview x402drop is a Web3-native temporary file storage web application available at https://x402drop.com. It enables users to upload files, pay once in USDC using the x402 HTTP payment protocol on Base or Arbitrum One mainnet, and receive a shareable download link. Anyone with the link can download for free — no account, no email, no subscription required. The product is designed for crypto-native users who want frictionless, trustless, self-custody file sharing without relying on centralized platforms that require credit cards, email registration, or recurring fees. ## Core Value Proposition "Drop. Pay. Share." — Upload files, pick a duration, see a price quote, pay once with your wallet, get a link. Everything else is automated. Files are deleted deterministically when the paid period expires. ## How It Works (Step by Step) 1. **Connect wallet**: Users sign in with a crypto wallet using Sign-In with Ethereum (SIWE). Supported wallets include MetaMask, Coinbase Wallet, WalletConnect-compatible wallets, and more via RainbowKit. 2. **Upload files**: Drag-and-drop or select files to upload. Each "drop" can contain multiple files up to 10 GB total. Files are uploaded directly to Cloudflare R2 via presigned URLs. 3. **Choose duration**: Select how long the files should be stored (hours to days). The system calculates a transparent price based on file size × duration. 4. **See quote**: The exact USDC cost is displayed before payment. Precision is to 6 decimals. Minimum charge is $0.01 USDC per file. 5. **Pay via x402**: Payment is made in USDC through the x402 HTTP payment protocol. The wallet prompts the user to sign a transaction on Base or Arbitrum One (Ethereum L2 networks). 6. **Get share link**: After payment, a unique download URL is generated (e.g., https://x402drop.com/d/abc123). This link can be shared with anyone. 7. **Recipients download free**: Anyone with the link can download files without logging in, connecting a wallet, or paying anything. 8. **Auto-expiry**: When the paid storage period ends, files are automatically deleted from Cloudflare R2 within 15 minutes via a cleanup job. 9. **Optional extension**: Users can extend storage by paying again before or shortly after expiry. A short grace period allows revival of recently expired drops. ## Technical Architecture - **Framework**: Next.js 16 (App Router) with React 19 - **Styling**: Tailwind CSS with Radix UI components - **Storage**: Cloudflare R2 (S3-compatible object storage) - **Database**: Neon (serverless PostgreSQL) with Drizzle ORM - **Payments**: x402 protocol (@x402/core, @x402/evm, @x402/next) - **Wallet integration**: RainbowKit + wagmi + viem - **Authentication**: NextAuth.js with SIWE (Sign-In with Ethereum) - **Upload**: Uppy with S3 multipart via presigned URLs - **Deployment**: Vercel - **Cleanup**: Vercel Cron jobs for expired file removal ## Payment Details - **Currency**: USDC (USD Coin) stablecoin only - **Protocol**: x402 HTTP payment protocol — payments are negotiated via HTTP headers (402 Payment Required responses with payment instructions) - **Networks**: Base (Ethereum L2) and Arbitrum One (Ethereum L2) - **Minimum**: $0.01 USDC per file - **Pricing formula**: file_size × duration × rate - **Quote precision**: 6 decimal places - **No intermediary accounts**: Payments go directly through x402 facilitator to on-chain settlement ## What is x402? x402 is an HTTP payment protocol that uses the 402 Payment Required HTTP status code. When a client makes a request to a paywall-protected resource, the server responds with 402 and payment instructions in the response headers. The client signs a payment transaction and retries the request with payment proof. The server verifies payment and fulfills the request. This enables machine-readable, programmatic payments over HTTP. ## User Surfaces ### Public Surface - **Home page** (https://x402drop.com): File upload flow with drag-and-drop, duration picker, price calculator, and payment initiation. - **Download page** (https://x402drop.com/d/[slug]): Free download landing for share link recipients. Shows file details, expiry info, and download buttons. ### Authenticated Surface (wallet-connected users) - **Dashboard** (https://x402drop.com/dashboard): Manage active drops, view expiry dates, extend storage, see upload history. ### Admin Surface (site operator only) - **Admin panel** (https://x402drop.com/admin): All drops visibility, revenue statistics, file moderation, DMCA management, uploader blocking. ## Target Audience 1. **Web3 users / crypto-natives**: People who routinely use crypto wallets and prefer paying with stablecoins over credit cards for file sharing. 2. **Privacy-conscious users**: People who want to share files without providing email, creating accounts, or trusting centralized platforms with personal data. 3. **Developers**: Those exploring x402 protocol patterns or needing programmatic, account-free file storage payable via HTTP. 4. **File recipients**: Anyone who receives a share link — they need zero setup to download files. ## Differentiation Unlike traditional file sharing services (WeTransfer, Filemail, etc.), x402drop: - Requires no email registration or personal data - Accepts on-chain USDC payments instead of credit cards - Prices storage transparently by file size × duration - Deletes files deterministically when paid period ends - Uses self-custody wallet authentication (no passwords) - Provides publicly verifiable on-chain payment receipts ## Limitations (v1) - USDC only (no other tokens) - Mainnet only (no testnet/staging) - No email or push notifications for expiry warnings - No file encryption at rest - No programmatic API for agent uploads (planned for v2) - Maximum 10 GB per drop ## Content & Indexing Policies - Public product pages (home page, marketing content): open for indexing - AI context files (/ai.txt, /llms.txt, /llms-full.txt): open for AI training - User dashboard, admin panel, API routes: private, not for indexing - Download pages (/d/*): private (user-generated content, noindex) - No personally identifiable information is exposed in public pages ## Links - Website: https://x402drop.com - AI context (short): https://x402drop.com/llms.txt - AI context (full): https://x402drop.com/llms-full.txt - AI discovery: https://x402drop.com/ai.txt - Sitemap: https://x402drop.com/sitemap.xml - Robots: https://x402drop.com/robots.txt