['required', 'numeric', 'min:0'], 'paid_at' => ['required', 'date'], 'payment_method' => ['nullable', 'string', 'max:30'], 'status' => ['required', Rule::enum(PaymentStatus::class)], 'notes' => ['nullable', 'string'], 'proof' => ['nullable', 'file', 'max:10240', 'mimes:pdf,jpg,jpeg,png'], ]; } }