Tarifas y precios
Tarifas
Cada vuelo tiene un precio base (USD, tarifa Básica, por pasajero). Las tarifas superiores multiplican el precio base y agregan inclusiones:
| Tarifa | Multiplicador | Incluye |
|---|---|---|
Básica (basica) |
×1.00 | Artículo personal |
Plus (plus) |
×1.25 | + Equipaje de mano 10 kg |
Full (full) |
×1.50 | + Equipaje de mano, maleta documentada 20 kg y selección de asiento |
La tarifa se elige una vez por reserva y aplica a todos los tramos (ida y regreso).
Tipos de pasajero
Cada pasajero tiene un tipo (pax_type):
| Tipo | Edad | Precio | Asiento |
|---|---|---|---|
adulto |
12+ años | Tarifa plena | Sí |
menor |
2-11 años | Tarifa plena | Sí |
bebe |
0-23 meses | Gratis (en regazo) | No |
Reglas del grupo (validadas en búsqueda y en la reserva):
- Al menos 1 adulto:
Debe viajar al menos un adulto. - Máximo 1 bebé por adulto:
Cada bebé debe viajar en el regazo de un adulto: máximo 1 bebé por adulto. - Máximo 9 personas en total:
El grupo máximo permitido son 9 personas por reservación.
Los cálculos de precio e inventario usan el conteo con asiento (seated = adultos + menores): los bebés no pagan ni descuentan inventario.
Extras
Los extras se compran por separado y aplican a todos los pasajeros con asiento de la reserva (regla deliberada de simplificación del demo):
| Extra | Clave | Precio por pasajero |
|---|---|---|
| Equipaje de mano 10 kg | carry_on |
$18.00 |
| Maleta documentada 20 kg | checked_bag |
$35.00 |
| Selección de asiento | seat_selection |
$9.00 |
Regla de inclusión: un extra que la tarifa ya incluye no se puede comprar — la UI no lo muestra y el servicio rechaza la compra con La tarifa <tarifa> ya incluye este extra. Con tarifa Full no hay extras disponibles.
Monedas de visualización
Los precios se almacenan en USD; el selector 💱 de la barra superior (cookie fv_currency, 180 días) solo cambia cómo se muestran — incluidos búsqueda, tarifas, extras, resumen de pago y detalle de reserva. Las tasas son fijas y ficticias (entorno de demostración, sin feed de mercado):
| Moneda | Código | Símbolo | Tasa por USD | Decimales |
|---|---|---|---|---|
| Pesos argentinos | ARS | $ | 950 | 0 |
| Pesos chilenos | CLP | $ | 920 | 0 |
| Pesos dominicanos | DOP | RD$ | 59 | 2 |
| Pesos mexicanos | MXN | $ | 18.5 | 2 |
| Pesos colombianos | COP | $ | 4.200 | 0 |
| Soles peruanos | PEN | S/ | 3.75 | 2 |
| Reales brasileños | BRL | R$ | 5.4 | 2 |
| Florines de Aruba | AWG | Afl. | 1.79 | 2 |
| Dólares estadounidenses | USD | US$ | 1 | 2 |
Un código desconocido en la cookie o en el parámetro cae a USD. Formato: US$ 49.99 para USD; $ 209.958 COP para el resto (código como sufijo).
Fórmula del total
total = (Σ precio_tarifa(tramo) + Σ extras) × pasajeros_con_asiento
precio_tarifa(tramo) = base_price(tramo) × multiplicador(tarifa), redondeado a 2 decimales half-up por tramo.- El total final se redondea a 2 decimales half-up.
- La cotización del paso de pago y el cobro del paso de confirmación ejecutan la misma validación: el precio nunca cambia entre pantallas a menos que cambie el inventario.
Ejemplo
BOG→BAQ (base $58.99) ida y vuelta, tarifa Plus, 2 adultos + 1 bebé, maleta documentada como extra:
- Tramos: $58.99 × 1.25 = $73.74 por tramo y pasajero con asiento → $147.48 por pasajero
- Extra: $35.00 por pasajero con asiento (la Plus no incluye maleta documentada)
- Total: ($147.48 + $35.00) × 2 = $364.96 (el bebé no suma)