juntekim.com/db/atlas/stripe_invoice/migrations/20260221120000_add_subscriptions.sql
2026-02-21 08:01:47 +00:00

18 lines
774 B
SQL

-- Create subscriptions table to track user subscriptions
CREATE TABLE subscriptions (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
user_id UUID NOT NULL UNIQUE REFERENCES users(id) ON DELETE CASCADE,
stripe_subscription_id TEXT UNIQUE,
stripe_customer_id TEXT,
status TEXT NOT NULL DEFAULT 'trialing',
current_period_start TIMESTAMPTZ,
current_period_end TIMESTAMPTZ,
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
canceled_at TIMESTAMPTZ
);
-- Create index for faster lookups
CREATE INDEX idx_subscriptions_user_id ON subscriptions(user_id);
CREATE INDEX idx_subscriptions_stripe_subscription_id ON subscriptions(stripe_subscription_id);
CREATE INDEX idx_subscriptions_status ON subscriptions(status);