"""Payments router — Stripe subscriptions, credits, webhooks. (Track H — stubs)""" from fastapi import APIRouter, Depends, HTTPException, Request, status from app.models import User from app.middleware.auth import get_current_user router = APIRouter() @router.post("/checkout") async def create_checkout(user: User = Depends(get_current_user)): """Create Stripe checkout session for subscription. (Track H)""" raise HTTPException(status_code=501, detail="Payments coming in M4") @router.post("/webhook") async def stripe_webhook(request: Request): """Handle Stripe webhook events. (Track H)""" raise HTTPException(status_code=501, detail="Payments coming in M4") @router.get("/portal") async def customer_portal(user: User = Depends(get_current_user)): """Get Stripe customer portal URL. (Track H)""" raise HTTPException(status_code=501, detail="Payments coming in M4") @router.post("/credits") async def purchase_credits(user: User = Depends(get_current_user)): """Purchase AI credit pack. (Track H)""" raise HTTPException(status_code=501, detail="Payments coming in M4") @router.post("/connect/onboard") async def connect_onboard(user: User = Depends(get_current_user)): """Start Stripe Connect creator onboarding. (Track H)""" raise HTTPException(status_code=501, detail="Payments coming in M4")