['nullable', 'integer', 'exists:tenants,id'], 'payment_mode' => ['required', Rule::in(['disabled', 'tenant_gateway', 'platform_gateway'])], 'tenant_gateway_account_id' => ['nullable', 'integer', 'exists:payment_gateway_accounts,id'], 'platform_gateway_account_id' => ['nullable', 'integer', 'exists:payment_gateway_accounts,id'], 'fee_bearer' => ['required', Rule::in(['customer', 'tenant', 'platform'])], 'default_expiry_minutes' => ['required', 'integer', 'min:5', 'max:10080'], 'enabled_methods' => ['nullable', 'array'], 'enabled_methods.*' => ['string', 'max:50'], ]; } }