Overview
For fixed tours that can be booked both as land only or including flights, one way to model that is by utilizing Package Levels. Package Levels let you offer both from one package: one departure calendar, one inventory pool, and one set of itinerary content.
This guide walks through that pattern: a fixed-departure group tour where guests choose Land Only or Air & Land at search and booking time. Each package level carries its own all-in sell price on Room Configuration and Package Prices — Air & Land levels include airfare in that price; there is no separate flight component.
┌─────────────────────────────────────────────────────────────┐
│ One Package: "Japan Discovery" │
│ ───────────────────────────────────────────────────────── │
│ Shared: departures · tour inventory · itinerary content │
│ │
│ Package Level: Land Only Package Level: Air & Land│
│ ├── Tour Inventory (primary) ├── Tour Inventory │
│ ├── Room Configuration ├── Room Configuration │
│ ├── Package Prices (per level) ├── Package Prices │
│ └── Pre/Post hotels (optional) └── Pre/Post hotels │
└─────────────────────────────────────────────────────────────┘
Use Package Levels to offer Land Only or Air & Land
Use one package with Package Levels when Land Only and Air & Land are the same tour product on the same departure dates. Guests pick their sell option at search and booking time — Land Only or Air & Land — while the operator maintains:
- One departure calendar for the tour
- One tour inventory pool (one max-pax allotment shared across both sell options)
- One itinerary and content template
- Combined passenger counts across both sell options in search
Why Not Separate Packages?
If Land Only and Air & Land were modeled as separate Packages, that pattern duplicates work and creates operational problems:
- Duplicate departure calendars — the same tour date must be maintained on two packages
- Split inventory — capacity is tracked separately, so Land Only and Air & Land bookings do not share one allotment
- Double maintenance — pricing, content, and component changes must be applied twice
- Inconsistent pricing — land prices and supplements can drift between the two packages over time
Package Levels avoids these issues by keeping one package as the source of truth for the tour, with levels controlling the sell option and per-level pricing at booking time.
Prerequisites
Before configuring Package Levels for a land + air tour:
- Fixed-departure package created with tour components, services, and pricing in place
- Tour service configured with price categories for occupancy (Single, Twin, Double) and tour inventory (Max Pax)
- Inventory contract on the tour Max Pax price category to generate departures
- Package Prices configured per package level in the Price Manager
- Familiarity with Package Level Configuration for the underlying Package Levels mode
Part 1: Create the Package Levels
Package Levels for land tours use the Package Levels service level mode. Create Package Level records for each sell option — typically one level per occupancy combination.
Step 1: Enable Package Levels on the Package
- Open the Package record.
- Set Service Level Mode to Package Levels (some orgs label this Cabin Levels in the UI — that is the same mode, not a separate cabin-type setup).
- Save.
Important: Changing Service Level Mode on a package with existing bookings can affect live itineraries. Apply this during initial setup or before any bookings exist.
Step 2: Create Package Level Records
- On the Package record, use the Package Levels section in the Package editor.
- Click Create Package Level and create levels for each sell combination you need.
For a Classic Tour with Twin, Double, and Single occupancy:
| Package Level Name | Purpose | Sort Order |
|---|---|---|
| Land Only - Twin | Ground only, twin share | 1 |
| Land Only - Double | Ground only, double room | 2 |
| Land Only - Single | Ground only, single room | 3 |
| Air & Land - Twin | Includes airfare, twin share | 4 |
| Air & Land - Double | Includes airfare, double room | 5 |
| Air & Land - Single | Includes airfare, single room | 6 |
- Set Order so Land Only appears before Air & Land, and Twin before Double before Single within each group.
- Click Save.
Part 2: Build the Component Structure
A Classic Tour with Package Levels uses core tour components shared across all levels. Pricing is loaded per package level — not via a separate flight component.
Core Components (all levels)
| Component | Role | Configuration |
|---|---|---|
| Tour Inventory | Drives departures and capacity | Mark as Primary Component. Assign the Tour Inventory – Max Pax price category. Inventory Required = true. Use for Max Pax only — do not load sell prices here. |
| Room Configuration | Occupancy selection and per-level sell prices | Assign Single, Twin, and Double price categories. Create one component option per package level (e.g. Land Only - Twin option, Air & Land - Twin option). Load the all-in sell price for each level on the matching option. Inventory Required = true for singles if you cap single rooms. |
| Pre-Stay / Post-Stay (optional) | Optional hotels | Standard optional components. Apply to all levels — no level restriction needed. |
| Optional Excursions (optional) | Upsell activities | Standard optional components. Apply to all levels. |
Diagram showing Tour Inventory and Room Configuration shared across all levels, with per-level sell prices on Room Configuration and Package Prices.
Why Two Tour Components?
The Tour Inventory and Room Configuration pattern separates capacity from occupancy and sell pricing:
- Tour Inventory holds the Max Pax inventory contract that generates departures and tracks tour capacity.
- Room Configuration holds the per-level sell price for each occupancy type (Twin, Double, Single).
Air & Land sell prices on Room Configuration and Package Prices are all-in — they include return airfare. There is no separate flight component on the package.
Part 3: Configure Pricing
Per-Level Sell Prices on Room Configuration
Load the all-in sell price for each package level on the matching Room Configuration component option. Each level gets its own price — Land Only levels reflect ground arrangements only; Air & Land levels include return airfare in the sell price.
| Package Level | Room Configuration Option | Sell Price |
|---|---|---|
| Land Only - Twin | Twin price category | Land-only twin price |
| Land Only - Double | Double price category | Land-only double price |
| Land Only - Single | Single price category | Land-only single price |
| Air & Land - Twin | Twin price category | All-in twin price (land + airfare) |
| Air & Land - Double | Double price category | All-in double price (land + airfare) |
| Air & Land - Single | Single price category | All-in single price (land + airfare) |
Package Prices
In the Price Manager, create Package Price records for each package level. These should match the sell prices on the Room Configuration component options. Package Prices are what Package Search displays for each level on a departure.
The difference between a Land Only level and its matching Air & Land level (same occupancy) is the airfare margin built into the Air & Land sell price. Operators may use a higher land-only price rather than a discounted airfare — the numbers shift, but each level still carries one all-in sell price.
Example Pricing
| Package Level | Sell Price |
|---|---|
| Land Only - Twin | $5,490 |
| Land Only - Double | $6,985 |
| Land Only - Single | $8,830 |
| Air & Land - Twin | $7,290 |
| Air & Land - Double | $8,785 |
| Air & Land - Single | $10,630 |
Part 4: Assign Levels to Component Options
Package Levels control which sell option and price apply at booking. On each Component Option, set the Package Level field:
| Component | Land Only Levels | Air & Land Levels |
|---|---|---|
| Tour Inventory | All levels (no restriction) | All levels |
| Room Configuration | Matching level per option | Matching level per option |
| Pre/Post hotels | All levels | All levels |
Each Room Configuration option should be assigned to exactly one package level so the correct sell price resolves at booking time.
Part 5: What Happens at Booking
Package Search
When Service Level Mode is Package Levels and the package has a primary component with level assignments, search resolves to the land advanced package levels display. Guests see each sell option with its price:
- Land Only - Twin: $5,490
- Land Only - Double: $6,985
- Land Only - Single: $8,830
- Air & Land - Twin: $7,290
- Air & Land - Double: $8,785
- Air & Land - Single: $10,630
All options share the same departure dates and draw from the same tour inventory count.
Booking Wizard
- Guest or agent selects a departure and package level (e.g. Air & Land - Twin).
- The Booking Wizard includes the Tour Inventory and Room Configuration components.
- The sell price for the selected level is applied — Air & Land levels already include airfare in the price.
- Optional pre/post hotels and excursions are offered regardless of level.
- Pricing totals: per-level sell price + any optional add-ons.
Inventory
Tour capacity is tracked on the Tour Inventory component’s Max Pax allotment. A booking for Land Only and a booking for Air & Land on the same departure both consume from the same inventory pool — which is the key benefit of the single-package model.
Validation Checklist
Before going live, verify each item:
- Package Level records created for each sell combination (Land Only and Air & Land, per occupancy — Twin, Double, Single).
- Service Level Mode set to Package Levels on the Package.
- Package Level assignments added to the Package.
- Tour Inventory component marked as Primary Component with Max Pax price category and inventory contract (capacity only — no sell prices).
- Room Configuration component options created per package level with correct all-in sell prices.
- Package Prices in Price Manager match Room Configuration sell prices for each level.
- Air & Land price minus Land Only price (same occupancy) reflects the built-in airfare margin.
- Departures generated from the Tour Inventory allotment.
- Test booking: Land Only — correct land-only price for selected occupancy.
- Test booking: Air & Land — correct all-in price for selected occupancy.
- Test booking: Single room — correct single price for selected level.
- Package Search shows all six levels with correct prices on the same departure.
Common Pitfalls
| Issue | Likely Cause | Fix |
|---|---|---|
| Land Only and Air & Land show different availability | Separate inventory contracts instead of shared Tour Inventory | Use one Max Pax inventory contract on the Tour Inventory component |
| Air & Land price doesn’t match expected total | Airfare modeled as a separate component instead of baked into the level price | Load all-in sell prices on Room Configuration and Package Prices per Air & Land level |
| Package levels not showing in search | No primary component configured, or levels not assigned to package | Mark Tour Inventory as Primary Component; add Package Level assignments |
| Wrong price at booking | Room Configuration option not assigned to the correct package level | Create one option per level; set Package Level on each option |
| Search price differs from booking price | Package Prices out of sync with Room Configuration | Align Package Prices in Price Manager with component option sell prices |
| Departures out of sync | Tour dates maintained outside the single package | All departures should come from the Tour Inventory on this one package |
Troubleshooting
Use this section when the package is configured but search, booking, or existing itineraries are not behaving as expected. Work through the symptom that matches what you see.
Package Levels Not Appearing in Search
| Symptom | Likely Cause | What to Check |
|---|---|---|
| Departure shows but no level options display | Service Level Mode not set to Package Levels | Confirm Service Level Mode on the Package is Package Levels |
| Only one level shows per departure | Package Level records missing or not saved | Open the Package Levels section — verify all six levels exist (Land Only and Air & Land × Twin, Double, Single) |
| Search shows standard package view instead of level picker | Primary component not configured | Confirm Tour Inventory is marked Primary Component with a Max Pax price category and inventory contract |
| Levels appear on some departures but not others | Departures generated before Package Levels were enabled | Regenerate or verify departures on the Tour Inventory allotment after enabling Package Levels |
Wrong Price at Search or Booking
| Symptom | Likely Cause | What to Check |
|---|---|---|
| Air & Land shows land-only price | Package Prices missing or not linked to Air & Land levels | In Price Manager, confirm Package Price records exist for each Air & Land level and match Room Configuration sell prices |
| Price correct in search but wrong in Booking Wizard | Room Configuration option not assigned to the correct package level | On each Room Configuration option, verify the Package Level field matches the level name (e.g. Air & Land - Twin) |
| Single/Double/Twin price swapped | Component options assigned to wrong occupancy price category | Confirm each option uses the correct price category (Twin, Double, or Single) for its level |
| Level price changed but search still shows old price | Package Prices not updated after component price change | Reconcile Package Prices in Price Manager with the current Room Configuration sell prices |
Occupancy or Sell Option Missing
| Symptom | Likely Cause | What to Check |
|---|---|---|
| Land Only levels show but Air & Land levels do not | Air & Land Package Level records or component options missing | Create the three Air & Land levels and matching Room Configuration options with Package Level assigned |
| Twin and Single show but Double is missing | Double price category or level not configured | Add a Land Only - Double and Air & Land - Double level; create Room Configuration options with the Double price category |
| Guest cannot select a sell option at booking | Level sort order or inactive level | Check Order on Package Level records; confirm all levels are active |
Inventory or Availability Mismatch
| Symptom | Likely Cause | What to Check |
|---|---|---|
| Land Only shows availability but Air & Land shows sold out (or vice versa) | Separate inventory contracts per level instead of shared Tour Inventory | Use one Max Pax inventory contract on the Tour Inventory component — assign all levels to the same primary component |
| Booking for one sell option does not reduce capacity for the other | Inventory tracked on Room Configuration instead of Tour Inventory | Sell prices belong on Room Configuration; capacity belongs on Tour Inventory Max Pax only |
Issues on Existing Itineraries After Changes
Structural changes to a package with live bookings can affect itineraries already on that package. Apply changes during initial setup where possible; test on a sandbox copy before changing production packages with active bookings.
| Change | Potential Impact on Live Itineraries |
|---|---|
| Switching Service Level Mode to or from Package Levels | Search and booking behaviour changes; existing itineraries may not resolve levels the same way |
| Adding or removing Package Level records | Bookings tied to a removed level may show missing or incorrect sell option |
| Reassigning Package Level on component options | Amendments or recalculations may pick up a different price than the original booking |
| Changing sell prices on Room Configuration or Package Prices | New prices apply to future bookings; existing itineraries retain prices from booking time unless recalculated |
If a customer reports issues after a configuration change, identify what was changed and when, then compare the booked package level on affected itinerary items against the current component option assignments and Package Prices.
Booking Wizard Errors
| Symptom | Likely Cause | What to Check |
|---|---|---|
| Error when creating a quote or proceeding past level selection | Missing Price Category on a package component | Confirm every component option has a price category assigned — this is the most common cause of Booking Wizard failures on package-level packages |
| Components missing from the booked itinerary | Component option restricted to a level that does not match the selected sell option | Verify Tour Inventory and shared components are assigned to all levels; Room Configuration options are assigned to exactly one level each |
Quick Diagnostic Steps
- Open the Package record — confirm Service Level Mode is Package Levels and all expected levels exist in the Package Levels section.
- Run Package Search on a test departure — note which levels appear and whether prices match Price Manager.
- Complete a test booking for one Land Only and one Air & Land level — compare search price, wizard price, and final itinerary total.
- On an affected live itinerary, check the booked package level and compare component option assignments to the current package configuration.
When Not to Use This Pattern
Package Levels for Air vs Land is not the right fit when:
- Short Tours sold to OTAs are a stripped-down variant of a Classic Tour with different content — use a different package model (e.g. linked departure rules) rather than levels on the full Classic Tour.
- Domestic positioning flights on a land-only product (e.g. internal flights within the destination that are not international return airfare) — handle these as separate mandatory optionals, not as an Air & Land level.
- Different cancellation or payment schedules per sell option — package-level policies apply uniformly; if policies must differ materially, revisit whether both sell options belong on one package.
See Also
- Package Level Configuration — Package Levels mode with Cabin Types (optional; for cruise and rail cabin-category selection)
- Fixed Departure Management — Departure lifecycle and capacity for group tours
- Service Level Configuration — Multi-tier pricing (Standard/Premium/Luxury) — a different use of levels
- Package Configuration — Complete Guide — Full package setup reference