feat: add per-provider allow_user_refund control and align wildcard matching
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
This commit is contained in:
@@ -89,6 +89,7 @@ export interface PaymentOrder {
|
||||
refund_requested_by?: number
|
||||
refund_request_reason?: string
|
||||
plan_id?: number
|
||||
provider_instance_id?: string
|
||||
}
|
||||
|
||||
// ==================== Plans & Channels ====================
|
||||
@@ -138,6 +139,7 @@ export interface ProviderInstance {
|
||||
enabled: boolean
|
||||
payment_mode: string
|
||||
refund_enabled: boolean
|
||||
allow_user_refund: boolean
|
||||
limits: string
|
||||
sort_order: number
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user