-- Migration: payments table
CREATE TABLE IF NOT EXISTS payments (
    id                 INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    payment_intent_id  VARCHAR(64)  NOT NULL UNIQUE,
    user_id            INT UNSIGNED NULL,
    email              VARCHAR(255) NOT NULL DEFAULT '',
    amount_cents       INT UNSIGNED NOT NULL DEFAULT 0,
    currency           VARCHAR(3)   NOT NULL DEFAULT 'eur',
    product_type       VARCHAR(64)  NOT NULL DEFAULT '',
    product_id         VARCHAR(128) NOT NULL DEFAULT '',
    status             ENUM('pending','paid','failed','refunded') NOT NULL DEFAULT 'pending',
    created_at         DATETIME     NOT NULL,
    updated_at         DATETIME     NULL ON UPDATE CURRENT_TIMESTAMP,
    INDEX idx_user    (user_id),
    INDEX idx_status  (status)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- Add payment_intent_id column to user_parcours if not present
ALTER TABLE user_parcours
    ADD COLUMN IF NOT EXISTS payment_intent_id VARCHAR(64) NULL AFTER rating;
