65 lines
1.6 KiB
SQL
65 lines
1.6 KiB
SQL
CREATE TABLE IF NOT EXISTS fluxer.payments (
|
|
checkout_session_id text,
|
|
user_id bigint,
|
|
stripe_customer_id text,
|
|
payment_intent_id text,
|
|
subscription_id text,
|
|
invoice_id text,
|
|
price_id text,
|
|
product_type text,
|
|
amount_cents int,
|
|
currency text,
|
|
status text,
|
|
is_gift boolean,
|
|
gift_code text,
|
|
created_at timestamp,
|
|
completed_at timestamp,
|
|
PRIMARY KEY ((checkout_session_id))
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS fluxer.payments_by_payment_intent (
|
|
payment_intent_id text,
|
|
checkout_session_id text,
|
|
PRIMARY KEY ((payment_intent_id))
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS fluxer.payments_by_subscription (
|
|
subscription_id text,
|
|
checkout_session_id text,
|
|
user_id bigint,
|
|
price_id text,
|
|
product_type text,
|
|
PRIMARY KEY ((subscription_id))
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS fluxer.payments_by_user (
|
|
user_id bigint,
|
|
created_at timestamp,
|
|
checkout_session_id text,
|
|
PRIMARY KEY ((user_id), created_at)
|
|
) WITH CLUSTERING ORDER BY (created_at DESC);
|
|
|
|
ALTER TABLE fluxer.gift_codes ADD checkout_session_id text;
|
|
|
|
CREATE TABLE IF NOT EXISTS fluxer.visionary_users (
|
|
sequence_number int,
|
|
user_id bigint,
|
|
checkout_session_id text,
|
|
gift_code text,
|
|
granted_at timestamp,
|
|
PRIMARY KEY ((sequence_number))
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS fluxer.visionary_users_by_user (
|
|
user_id bigint,
|
|
sequence_number int,
|
|
granted_at timestamp,
|
|
PRIMARY KEY ((user_id))
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS fluxer.visionary_counter (
|
|
id text,
|
|
next_sequence_number counter,
|
|
PRIMARY KEY ((id))
|
|
);
|