'datetime']; public static function crear(int $userId, int $monto, string $canal): static { // Expirar cualquier solicitud pendiente anterior del mismo usuario static::where('user_id', $userId) ->where('estado', 'pendiente') ->update(['estado' => 'expirada']); return static::create([ 'user_id' => $userId, 'monto' => $monto, 'canal' => $canal, 'estado' => 'pendiente', ]); } public static function pendiente(int $userId): ?static { return static::where('user_id', $userId) ->where('estado', 'pendiente') ->where('created_at', '>=', now()->subMinutes(30)) ->latest('id') ->first(); } public function confirmar(): void { $this->update(['estado' => 'confirmada']); } }