• erio's avatar
    feat: add per-provider allow_user_refund control and align wildcard matching · f1297a36
    erio authored
    allow_user_refund:
    - Add allow_user_refund field to PaymentProviderInstance ent schema
    - Migration 103: ALTER TABLE payment_provider_instances ADD COLUMN
    - Cascade logic: disabling refund_enabled auto-disables allow_user_refund
    - User refund validation: check provider instance allows user refund
    - Admin refund validation: check provider instance allows admin refund
    - Subscription refund: deduct days on refund, rollback on failure
    - New endpoint: GET /payment/orders/refund-eligible-providers
    - Frontend: ToggleSwitch in ProviderCard/Dialog, cascade in SettingsView
    
    Wildcard matching:
    - Change findPricingForModel from "longest prefix wins" to "config order
      priority (first match wins)", aligning with channel service behavior
    f1297a36
en.ts 256 KB