Primeros pasos con la API de actividades de XeniCómo reservar una actividadCómo buscar etiquetas y categorías de actividadesCómo cancelar una reserva de actividadCómo comprobar la disponibilidad de la actividadCómo obtener detalles de la actividadCómo recuperar los detalles de la reserva de actividadesCómo buscar actividades con filtrosCómo buscar destinos de actividadesAPI de alquiler de coches: introducciónAPI de alquiler de coches: comprensión de los campos de respuestaCómo reservar un alquiler de cochesCómo obtener detalles del vehículo de alquiler y complementos de equipoCómo recuperar o cancelar una reserva de alquiler de cochesCómo buscar autos de alquiler disponiblesCómo buscar ubicaciones de recogidaCómo utilizar los filtros de búsqueda de alquiler de cochesMejores prácticas de integración de API de ofertasPreguntas frecuentes sobre la API de ofertasPrimeros pasos con la API de ofertas de XeniReferencia de encabezados y parámetros de solicitud de API de ofertasOfertas API Monedas admitidas y localizaciónCómo mostrar ofertas en su aplicaciónCómo buscar ofertas de hoteles por ubicaciónCódigos de error de la API de vuelos y solución de problemasPrimeros pasos con la API de vuelos de XeniCómo reservar un vueloCómo comprobar la disponibilidad y el precio de los vuelosCómo confirmar o cancelar una reserva de vueloCómo recuperar las reglas de tarifas de un vueloCómo recuperar los detalles de la reserva de un vueloCómo buscar aeropuertos usando AutocompletarCómo buscar vuelosCómo utilizar filtros, clasificación y paginación de búsqueda de vuelosCómo comprobar la disponibilidad y el precio de las habitacionesCómo filtrar los resultados de los alquileres vacacionalesCómo obtener detalles, comodidades y accesibilidad de la propiedad del resortCómo mantener y confirmar una reserva de resortCómo liberar una retención de resortCómo recuperar los detalles de la reserva del resortCómo buscar complejos turísticos disponiblesCómo buscar destinos turísticosCómo buscar ubicaciones de alquiler vacacionalCómo buscar alquileres vacacionalesCómo utilizar filtros de búsqueda y clasificación de complejos turísticosComenzando con la API de Xeni ResortsAPI de Resorts: comprensión de los estados y políticas de las reservasPrimeros pasos con la API de alquileres vacacionalesPreguntas frecuentes sobre alquileres vacacionalesTipos de propiedades admitidas para alquileres vacacionalesComprensión de la búsqueda asincrónica para alquileres vacacionalesAutenticación y firmas APIReserva de hoteles: API directa y pago SSOManejo de errores, límites de tasas y mejores prácticasPrimeros pasos con la API de Xeni HotelesGestión de reservas: estado, recuperación y cancelaciónConfirmación de precios y ciclo de vida del tokenRecuperar detalles del hotel y disponibilidad de habitacionesBúsqueda de hoteles: ubicaciones, filtros y paginaciónBuscando HotelesGestión de sesiones e ID de correlaciónAutenticación API y obtención de claves API

Cómo reservar un alquiler de coches

Última actualización: 2026-03-03

Cómo reservar un alquiler de coches

Una vez que el cliente haya seleccionado un vehículo y haya revisado los detalles, utilice el punto final Crear reserva para confirmar la reserva. Este punto final acepta información del cliente, controladores adicionales opcionales y complementos de equipos seleccionados.

Punto final

POST /cars/api/v2/bookings?currency=USD

Parámetros de consulta

ParámetroTipoRequeridoDescripción
currencycadenaCódigo de moneda de tres letras (por ejemplo, USD, EUR).

Cuerpo de solicitud

JSON
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6...",
  "customer": {
    "birth_date": "1990-05-15",
    "language": "en",
    "gender": "M",
    "first_name": "John",
    "last_name": "Doe",
    "phone": "+1-555-123-4567",
    "email": "john.doe@example.com",
    "address": {
      "street": "123 Main Street",
      "city": "New York",
      "postal_code": "10001"
    },
    "citizencountrycode": "US",
    "additional_drivers": [
      {
        "birth_date": "1988-03-22",
        "first_name": "Jane",
        "last_name": "Doe"
      }
    ]
  },
  "equipments": [
    {
      "code": "CSI",
      "quantity": 1
    },
    {
      "code": "NAV",
      "quantity": 1
    }
  ]
}

Campos del cuerpo de la solicitud

Campos de nivel superior

CampoTipoRequeridoDescripción
tokencadenaEl token de disponibilidad de la respuesta Buscar alquileres o Detalles de alquiler.
customerobjetoDatos del cliente (ver más abajo).
equipmentsmatrizNoLista de complementos de equipos seleccionados (ver más abajo).

Objeto de cliente

CampoTipoRequeridoDescripción
birthdatecadenaFecha de nacimiento en formato YYYY-MM-DD.
languagecadenaNoCódigo de idioma preferido (por ejemplo, en, es).
gendercadenaGénero: "M" para hombre, "F" para mujer.
firstnamecadenaNombre del cliente. Debe coincidir con la licencia de conducir.
lastnamecadenaApellido del cliente. Debe coincidir con la licencia de conducir.
phonecadenaNúmero de teléfono de contacto con código de país.
emailcadenaDirección de correo electrónico de contacto. La confirmación de la reserva se envía aquí.
addressobjetoDirección del cliente (ver más abajo).
citizencountrycodecadenaCódigo de país ISO de dos letras de la ciudadanía del cliente.
additionaldriversmatrizNoLista de objetos de controlador adicionales (ver más abajo).

Objeto de dirección

CampoTipoRequeridoDescripción
streetcadenaDirección postal.
citycadenaNombre de la ciudad.
postal_codecadenaCódigo postal o postal.

Objeto de controlador adicional

CampoTipoRequeridoDescripción
birthdatecadenaFecha de nacimiento en formato YYYY-MM-DD.
firstnamecadenaNombre del conductor.
last_namecadenaApellido del conductor.

Objeto de equipo

CampoTipoRequeridoDescripción
codecadenaCódigo de equipo de la respuesta Detalles de alquiler (por ejemplo, CSI).
quantitynúmeroNúmero de unidades. No debe exceder el max_quantity de los detalles.

Ejemplo de respuesta

JSON
{
  "data": {
    "status": "Confirmed",
    "id": "XNCTPN3cuzY",
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6...",
    "customer": {
      "first_name": "John",
      "last_name": "Doe",
      "email": "john.doe@example.com",
      "phone": "+1-555-123-4567"
    },
    "vehrentalcore": {
      "pickupdatetime": "2026-06-15T10:00:00",
      "returndatetime": "2026-06-20T10:00:00",
      "pickup_location": {
        "name": "Hertz - Manhattan Midtown",
        "address": "310 W 40th St, New York, NY 10018"
      },
      "return_location": {
        "name": "Hertz - Manhattan Midtown",
        "address": "310 W 40th St, New York, NY 10018"
      }
    },
    "vehicle": {
      "name": "Toyota Camry or similar",
      "sipp_code": "CCAR",
      "vehicle_type": "Sedan",
      "vehicle_size": "Standard"
    },
    "rental_rate": {
      "vehicle_charges": [
        {
          "currency_code": "USD",
          "base_price": 245,
          "total_price": 289.75,
          "tax_inclusive": true,
          "purpose": "rental"
        }
      ]
    },
    "fees": [],
    "payment_rules": []
  }
}

Campos de respuesta| Campo | Descripción |

|--------------------|----------------------------------------------------------------------------------| | status | Estado de la reserva. Una reserva exitosa devuelve "Confirmed". | | id | ID de reserva único. Utilice esto para recuperar o cancelar la reserva. | | token | Ficha de reserva. Requerido para solicitudes de cancelación. | | customer | Resumen de datos del cliente. | | vehrentalcore | Fechas de alquiler y detalles de ubicación. | | vehicle | Información del vehículo. | | rental_rate | Desglose de precios. | | fees | Cualquier tarifa adicional aplicada a la reserva. | | payment_rules | Términos y condiciones de pago. |

Notas importantes

  • Almacene tanto el id como el token de la respuesta. El id es necesario para recuperar la reserva y el token es necesario para la cancelación.
  • Los nombres de los clientes deben coincidir con la licencia de conducir que se presentará en el mostrador de alquiler.
  • Se aplican restricciones de edad del conductor. La edad del cliente (calculada a partir de birthdate) debe estar dentro de los minimumage y maximum_age de las restricciones de tarifas. Lo mismo se aplica a los conductores adicionales.
  • Las cantidades de equipos no deben exceder el max_quantity devuelto por el punto final de Detalles de alquiler.
  • La Confirmación de reserva se envía a la dirección de correo electrónico proporcionada en el campo customer.email.

Manejo de errores

Los escenarios de error comunes incluyen:

EscenarioCausa probable
Token caducadoEl token de disponibilidad tiene una ventana de validez limitada. Vuelva a ejecutar la búsqueda.
Edad del conductor fuera de rangoLa edad del cliente no cumple con los requisitos de edad del proveedor.
Equipo no disponibleEl código o la cantidad del equipo solicitado ya no está disponible.
Faltan campos obligatoriosFaltan uno o más campos obligatorios en el cuerpo de la solicitud.

Si una reserva falla, consulte el mensaje de respuesta de error para obtener más detalles y solicite al usuario que corrija el problema antes de volver a intentarlo.

¿Te resultó útil este artículo?