-- =============================================================================
-- MIGRATION: Add providerOrderId to cart.checkout_sessions
-- Stores the Razorpay/Stripe order ID for webhook reconciliation
-- Idempotent — safe to re-execute
-- =============================================================================

BEGIN;

ALTER TABLE cart.checkout_sessions
    ADD COLUMN IF NOT EXISTS "providerOrderId" VARCHAR(255);

CREATE INDEX IF NOT EXISTS checkout_sessions_provider_order_id_idx
    ON cart.checkout_sessions ("providerOrderId")
    WHERE "providerOrderId" IS NOT NULL;

COMMIT;
