17 lines
877 B
SQL
17 lines
877 B
SQL
-- v0.603 T1-02: Seller transfer tracking
|
|
CREATE TABLE IF NOT EXISTS seller_transfers (
|
|
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
seller_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
|
order_id UUID NOT NULL REFERENCES orders(id) ON DELETE CASCADE,
|
|
stripe_transfer_id VARCHAR(255),
|
|
amount_cents BIGINT NOT NULL,
|
|
platform_fee_cents BIGINT NOT NULL,
|
|
currency VARCHAR(3) NOT NULL DEFAULT 'EUR',
|
|
status VARCHAR(50) NOT NULL DEFAULT 'pending',
|
|
error_message TEXT,
|
|
created_at TIMESTAMPTZ DEFAULT NOW(),
|
|
updated_at TIMESTAMPTZ DEFAULT NOW()
|
|
);
|
|
CREATE INDEX IF NOT EXISTS idx_seller_transfers_seller ON seller_transfers(seller_id);
|
|
CREATE INDEX IF NOT EXISTS idx_seller_transfers_order ON seller_transfers(order_id);
|
|
CREATE UNIQUE INDEX IF NOT EXISTS idx_seller_transfers_seller_order ON seller_transfers(seller_id, order_id);
|