# ─── Discord ──────────────────────────────────────────────────────────────── # Bot token from https://discord.com/developers/applications DISCORD_TOKEN= # Your server's ID (right-click server icon → Copy Server ID) GUILD_ID= # ─── Role IDs ─────────────────────────────────────────────────────────────── # Right-click each role in Server Settings → Roles → Copy Role ID # User role is assigned to all subscribers; Lifetime role is also assigned for lifetime purchases ROLE_USER_ID= ROLE_LIFETIME_ID= # ─── Ticket channel IDs ───────────────────────────────────────────────────── # Category where ticket channels are created (right-click category → Copy ID) TICKET_CATEGORY_ID= # Channel where ticket open/close events are logged (right-click channel → Copy ID) TICKET_LOG_CHANNEL_ID= # ─── Stripe ───────────────────────────────────────────────────────────────── # From https://dashboard.stripe.com/apikeys STRIPE_SECRET_KEY=sk_live_... # From https://dashboard.stripe.com/webhooks (signing secret for this endpoint) STRIPE_WEBHOOK_SECRET=whsec_... # Where Stripe redirects after payment (can be a thank-you page or Discord DM link) STRIPE_SUCCESS_URL=https://discord.com/channels/@me STRIPE_CANCEL_URL=https://discord.com/channels/@me # ─── Supabase ─────────────────────────────────────────────────────────────── SUPABASE_URL=https://yeispcpmepjelfbhfkwr.supabase.co SUPABASE_SERVICE_ROLE_KEY= # ─── Webhook server ───────────────────────────────────────────────────────── # Port the bot listens on for incoming Stripe webhook POSTs # Forward this via ngrok (dev) or expose via your server's firewall (prod) WEBHOOK_PORT=8080