BEGIN;
ALTER TABLE payment ADD COLUMN IF NOT EXISTS "receiptPath" varchar;
ALTER TABLE payment ADD COLUMN IF NOT EXISTS "receiptOriginalName" varchar;
ALTER TABLE payment ADD COLUMN IF NOT EXISTS "receiptMime" varchar;
ALTER TABLE payment ADD COLUMN IF NOT EXISTS "receiptSubmittedAt" timestamp;
ALTER TABLE payment ADD COLUMN IF NOT EXISTS "manualReviewStatus" varchar NOT NULL DEFAULT 'none';
ALTER TABLE payment ADD COLUMN IF NOT EXISTS "manualReviewNote" text;
ALTER TABLE payment ADD COLUMN IF NOT EXISTS "manualReviewedAt" timestamp;
ALTER TABLE payment ADD COLUMN IF NOT EXISTS "manualReviewedById" bigint;
ALTER TABLE payment DROP CONSTRAINT IF EXISTS "CHK_payment_manual_review_status";
ALTER TABLE payment ADD CONSTRAINT "CHK_payment_manual_review_status" CHECK ("manualReviewStatus" IN ('none','pending','approved','rejected'));
CREATE INDEX IF NOT EXISTS "IDX_payment_manual_review_pending" ON payment ("siteId", "manualReviewStatus", id DESC);
COMMIT;
