From a56d976e3b094b22ab962205f5ae0f34e5ab5831 Mon Sep 17 00:00:00 2001 From: Ben Sima Date: Wed, 12 Nov 2025 15:15:10 -0500 Subject: Remove personal tier, keep only free and pro Simplified pricing to two tiers: - Free: 10 articles total (lifetime) - Pro: $29/month unlimited articles Removed STRIPE_PRICE_ID_PERSONAL from configuration. --- Biz/PodcastItLater/Billing.py | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) (limited to 'Biz/PodcastItLater/Billing.py') diff --git a/Biz/PodcastItLater/Billing.py b/Biz/PodcastItLater/Billing.py index 4cf1c0e..7daa3dc 100644 --- a/Biz/PodcastItLater/Billing.py +++ b/Biz/PodcastItLater/Billing.py @@ -23,12 +23,10 @@ stripe.api_key = os.getenv("STRIPE_SECRET_KEY", "") STRIPE_WEBHOOK_SECRET = os.getenv("STRIPE_WEBHOOK_SECRET", "") # Price IDs from Stripe dashboard -STRIPE_PRICE_ID_PERSONAL = os.getenv("STRIPE_PRICE_ID_PERSONAL", "") STRIPE_PRICE_ID_PRO = os.getenv("STRIPE_PRICE_ID_PRO", "") # Map Stripe price IDs to tier names PRICE_TO_TIER = { - STRIPE_PRICE_ID_PERSONAL: "personal", STRIPE_PRICE_ID_PRO: "pro", } @@ -38,10 +36,6 @@ TIER_LIMITS = { "articles_per_period": 10, "minutes_per_period": None, }, - "personal": { - "articles_per_period": 50, - "minutes_per_period": None, - }, "pro": { "articles_per_period": None, "minutes_per_period": None, @@ -50,7 +44,6 @@ TIER_LIMITS = { # Price map for checkout PRICE_MAP = { - "personal": STRIPE_PRICE_ID_PERSONAL, "pro": STRIPE_PRICE_ID_PRO, } @@ -139,7 +132,7 @@ def create_checkout_session(user_id: int, tier: str, base_url: str) -> str: Args: user_id: User ID - tier: Subscription tier (personal or pro) + tier: Subscription tier (pro) base_url: Base URL for success/cancel redirects Returns: @@ -400,12 +393,6 @@ def get_tier_info(tier: str) -> dict[str, typing.Any]: "price": "$0", "description": "10 articles total", }, - "personal": { - "name": "Personal", - "articles_limit": 50, - "price": "$9/mo", - "description": "50 articles per month", - }, "pro": { "name": "Pro", "articles_limit": None, -- cgit v1.2.3