Problems with DELETE from nodejs

Thanks

router.delete('/api/bookings/:id', async (req, res) => {
  const { id } = req.params; // Obtén el ID desde la URL
  try {
    // Convierte el ID en ObjectId para asegurar que esté en el formato correcto
    const result = await Booking.deleteOne({ _id: mongoose.Types.ObjectId(id) }); 

    // Verifica si realmente se eliminó una reserva
    if (result.deletedCount === 0) {
      return res.status(404).json({ message: 'Reserva no encontrada' });
    }

    res.json({ message: 'Reserva eliminada con éxito' });
  } catch (err) {
    console.error(err);
    res.status(500).json({ message: 'Error al eliminar la reserva' });
  }
});

THE CODE FRONT FOR DELETE IS THIS

const handleDelete = async (id) => {
    const confirmDelete = window.confirm('¿Estás seguro de que quieres eliminar esta reserva?');
    if (!confirmDelete) return;
  
    try {
      const response = await fetch(`https://api-party-kids.vercel.app/api/bookings/${id}`, {
        method: 'DELETE',
        headers: {
          'Content-Type': 'application/json',
        },
      
      });

      if (!response.ok) {
        const data = await response.json();
        throw new Error(data.message || 'Error eliminando la reserva');
      }

      // Si la eliminación es exitosa, actualizar el estado eliminando la reserva
      setBookings(prevBookings => prevBookings.filter(booking => booking._id !== id));
      alert('Reserva eliminada con éxito');
    } catch (error) {
      console.error('Error eliminando la reserva:', error);
      alert('Hubo un error al intentar eliminar la reserva');
    }
  };

POST AND GET WORK WITHOUT PROBLEM. I CAN CREATE RESERVATIONS WITHOUT PROBLEM. THE PROBLEM IS WHEN I WANT TO DELETE AN ITEM

Access to fetch at 'https://api-party-kids.vercel.app/api/bookings/676eac7942b3d96287ba4d08' from origin 'https://front-party-kids.vercel.app' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.Entender este errorAI
index-inPmOciP.js:87 
        
        
       DELETE https://api-party-kids.vercel.app/api/bookings/676eac7942b3d96287ba4d08 net::ERR_FAILED
h @ index-inPmOciP.js:87
onClick @ index-inPmOciP.js:87
xe @ index-inPmOciP.js:37
ot @ index-inPmOciP.js:37
tt @ index-inPmOciP.js:37
Xp @ index-inPmOciP.js:37
Gp @ index-inPmOciP.js:37
(anónimo) @ index-inPmOciP.js:37
Yf @ index-inPmOciP.js:40
ke @ index-inPmOciP.js:37
Vc @ index-inPmOciP.js:37
Pc @ index-inPmOciP.js:37
y_ @ index-inPmOciP.js:37Entender este errorAI
index-inPmOciP.js:87 Error eliminando la reserva: TypeError: Failed to fetch
    at h (index-inPmOciP.js:87:22853)
    at onClick (index-inPmOciP.js:87:24473)
    at Object.xe (index-inPmOciP.js:37:9835)
    at ot (index-inPmOciP.js:37:9989)
    at tt (index-inPmOciP.js:37:10046)
    at Xp (index-inPmOciP.js:37:31379)
    at Gp (index-inPmOciP.js:37:31796)
    at index-inPmOciP.js:37:36864
    at Yf (index-inPmOciP.js:40:36981)
    at ke (index-inPmOciP.js:37:8972)
overrideMethod @ hook.js:608
h @ index-inPmOciP.js:87
await in h
onClick @ index-inPmOciP.js:87
xe @ index-inPmOciP.js:37
ot @ index-inPmOciP.js:37
tt @ index-inPmOciP.js:37
Xp @ index-inPmOciP.js:37
Gp @ index-inPmOciP.js:37
(anónimo) @ index-inPmOciP.js:37
Yf @ index-inPmOciP.js:40
ke @ index-inPmOciP.js:37
Vc @ index-inPmOciP.js:37
Pc @ index-inPmOciP.js:37
y_ @ index-inPmOciP.js:37Entender este errorAI
index-inPmOciP.js:87 Obtener no ha podido cargar: DELETE "https://api-party-kids.vercel.app/api/bookings/676eac7942b3d96287ba4d08".

I THINK THE CORS CONFIGURATION IS CORRECT SINCE I HAVE THE METHODS AND OPTIONS

MY server.js is this

'use strict'

const express = require('express');
const dotenv = require('dotenv');
const cors = require('cors');
const connectDB = require('./config/db');
const bookingRoutes = require('./routes/bookingRoutes');

// Cargar variables de entorno
dotenv.config();

// Conectar a la base de datos
connectDB();

// Inicializar la app de Express
const app = express();

// Configuración de CORS
const corsOptions = {
    origin: 'https://front-party-kids.vercel.app', // La URL de tu frontend en Vercel
    methods: ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS', 'PATCH'],  // Métodos permitidos
    allowedHeaders: ['Content-Type', 'Authorization', 'X-Requested-With'],  // Cabeceras permitidas
    optionsSuccessStatus: 204,  // Opcional para manejar preflight exitoso
  };
  
  // Aplica CORS a toda la aplicación
  app.use(cors(corsOptions));
  
  // Middleware para manejar las preflight requests (OPTIONS)



// Middleware para analizar datos JSON
app.use(express.json());

// Rutas de la API
app.use('/api/bookings', bookingRoutes);

// Exportar la app para que Vercel la maneje
module.exports = app;