Package Modifications Guide

To be Reviewed

User & Admin Documentation

Version 13 min read | March 5, 2026 Gallery

Package Modifications Guide

Complete User & Admin Documentation

Package Modifications is Kaptio’s unified framework for handling booking changes. It provides a single entry point for four key capabilities: modifying options, changing occupancy, processing cancellations, and transferring passengers between bookings.

What’s Included

Modify: Change services, options, and itinerary items Change Occupancy: Add or remove passengers, reassign rooms Cancellation: Cancel full bookings, individual passengers, or specific services Transfer: Move passengers and payments between bookings

Available In

Circle Sell Voyage Train Voyage Cruise

Before using Package Modifications, ensure the following are configured:

RequirementDetailsWho Configures
Kaptio PackageVersion 22.x or higher with Package Modifications featureKaptio
Booking OverviewComponent added to Itinerary Lightning Record Page—this is where all modification actions are launchedAdmin
Pilot FeaturesEnabled for your org (see Admin Configuration)Kaptio / Admin
User PermissionsAppropriate permission sets assignedAdmin
Cancellation PoliciesConfigured on Itinerary or Channel levelAdmin

Package Modifications is accessed from the Booking Overview component on the Itinerary record page.

Prerequisites

Booking Overview Component Required

The Booking Overview component must be configured on the Itinerary Lightning Record Page. This is where all Package Modification actions are launched from—there is no separate button in the record action bar.

Steps to Launch

  • Navigate to the Itinerary record you want to modify

  • Locate the Booking Overview component on the page

  • Click the relevant action (Modify, Change Occupancy, Cancel, or Transfer)

  • The Booking Wizard opens in the appropriate modification mode

When Package Modifications is NOT Available

The actions may be disabled if: Another modification is currently being processed The booking is in a read-only state (e.g., historical snapshot) Required pilot features are not enabled for your org If actions are missing entirely, check that the Booking Overview component is on the page layout.

Modification Types Available

Based on your permissions and pilot features, you’ll see options for:

Modification TypePilot Feature RequiredDescription
Modify ItineraryPackageModificationChange options, services, and itinerary items
Change OccupancyChangePackageOccupancyAdd/remove passengers, reassign rooms
CancelCancelRoomOrPackageCancel passengers, rooms, or full booking
TransferChangePackageOrDepartureMove passengers to different departure/booking

The Modify capability allows you to change package options, upgrade services, and adjust itinerary items while preserving original pricing for unchanged elements.

Common Use Cases

  • Upgrade from standard to premium cabin

  • Add optional excursions post-booking

  • Change meal preferences or dietary requirements

  • Swap hotel room types within the same property

  • Update passenger details and assignments

Step-by-Step Instructions

  • Launch Package Modifications from the Itinerary

  • Select “Modify Itinerary”

  • Navigate to the service or option you want to change

  • Make your changes (upgrade, swap, add)

  • Review the price comparison showing original vs. new pricing

  • Click “Save Changes” to apply

Price Preservation

Unchanged items retain their original booked price. Only new or modified items are priced at current rates. This protects customers from price increases on services they already booked.

Change Occupancy handles any combination of passenger and room adjustments—with smart pricing logic that protects remaining travelers.

Supported Scenarios

PassengersRoomsExample
↑ Add↑ Add+2 passengers, +1 cabin
↓ Remove↓ Remove2→1 pax, double→single (most common)
↑ Add= SameAdd child to existing room
= Same↔ ReassignMove passengers between rooms
↓ Remove= SameRemove 1 from shared room, other stays

Step-by-Step: Reduce Occupancy (2 pax → 1 pax)

  • Launch Package Modifications from the Itinerary

  • Select “Change Occupancy”

  • In the passenger list, select the passenger to remove

  • Confirm the room adjustment (double → single)

  • Review the price recalculation

  • Click “Save Changes”

Surviving Passenger Protection

When one passenger leaves a shared room, cancellation fees apply only to the departing passenger—not the one continuing their trip. The surviving passenger’s booking is simply repriced for the new room type.

Adding Passengers

To add passengers with new rooms, you may need to use Package Search + Booking Wizard to add to the existing Itinerary, rather than Change Occupancy. Change Occupancy is primarily for adjusting existing passengers and rooms.

Cancellation allows you to cancel full bookings, individual passengers, or specific services with automatic fee calculation based on your configured policies.

Cancellation Types

TypeWhat’s CancelledFee Application
Full BookingEntire itinerary, all services, all passengersAll policies applied; Itinerary record type changes
PassengerOne passenger; others continueFee applies to cancelled passenger only
Service/RoomIndividual services, excursions, or room bookingsService-specific cancellation group policy

How Cancellation Fees Are Calculated

Fees are determined by these factors (in order of priority):

  • Cancellation Policy - From Itinerary__c.CancellationPolicy__c or fallback to Channel__r.CancellationPolicy__c

  • Days Before Travel - Calculated from today to Itinerary.Start_Date__c

  • Cancellation Group - From Itinerary_Item__c.CancellationGroup__c or Item__r.CancellationGroup__c

Example Policy Tiers

60+ days before travel10% fee
30-59 days25% fee
15-29 days50% fee
0-14 days100% fee

Policy tiers are fully configurable per your business requirements.

Manager Override

Users with the CanOverrideCancellationPercentage custom permission can override the calculated fee percentage for exceptional circumstances. All overrides are logged with user attribution.

Excluded Services

Some services may be marked as excludeFromCancellation in their cancellation response. These cannot be cancelled through the standard flow and may require manual intervention.

Component Cancellation Controls

Two checkboxes on the Package Component control whether optional services are included in cancellation fee calculations: IsMainComponent__c — When ticked on optional components, they are included in percentage-based cancellation fee calculations (e.g., 25% of total) IsMainTourComponent__c — When ticked on optional components, they are included in fixed-amount cancellation fee calculations (e.g., a flat fee) Note: The Package Totals setting (PackageTotals__c) does NOT affect cancellation fees, payment schedules, or itinerary rollup totals. It only affects content generation (documents/PDFs) and the Costings hover display. See the Package Setup Configuration Guide for details. Source: Confirmed via field testing and code review in CancellationFeeCalculations.cls.

Transfer allows you to move passengers and their payments from one booking to another—typically when changing departure dates.

Transfer Types

TypeDescriptionSource Itinerary Status
Complete TransferAll passengers move to new bookingMarked as Transferred/Cancelled
Partial TransferSome passengers move; others stayContinues with remaining passengers

How Payment Transfer Works

  • Transferable Value is calculated from the source booking

  • Hold-Back is applied for non-transferable items (e.g., travel insurance, non-refundable deposits)

  • Net Transfer = Transferable Value - Hold-Back

  • Balance Due is calculated if the new booking costs more

Cancellation Fee Waiver

When transferring to another date/package, cancellation fees are waived for all transferred passengers. This encourages rebooking rather than full cancellation.

Step-by-Step: Transfer to New Departure

  • Launch Package Modifications from the source Itinerary

  • Select “Transfer”

  • Select the passengers to transfer

  • Search for and select the target departure/package

  • Review the hold-back calculation and balance due

  • Click “Confirm Transfer”

Linked Records

Source and destination itineraries are automatically linked for complete audit trail. You can navigate between them from either record.

Package Modifications capabilities are controlled by Pilot Features. These must be enabled for your org before users can access them.

Required Pilot Features

Pilot FeatureEnablesAPI Name
Package ModificationBooking Wizard in modification mode; general modificationsPackageModification
Change Package OccupancyBooking Wizard in change occupancy modeChangePackageOccupancy
Cancel Room or PackageBooking Wizard in cancellation modeCancelRoomOrPackage
Change Package or DepartureBooking Wizard in transfer modeChangePackageOrDeparture

Enabling Pilot Features

Pilot features are managed through Custom Settings (PilotFeature__c). Contact Kaptio Support to request enablement for your org.

Opt-In Required

Pilot features have special requirements that users must opt into. Ensure you understand the implications before enabling.

Users need appropriate permissions to use Package Modifications features.

Custom Permission: Override Cancellation Percentage

Developer NameCanOverrideCancellationPercentage
PurposeAllows users to override calculated cancellation fee percentages
Assign ToManagers, supervisors, or specific users who need override capability

Assigning the Custom Permission

  • Go to Setup → Permission Sets

  • Open the Permission Set that should have override capability (or create a new one)

  • Click “Custom Permissions”

  • Click “Edit”

  • Add CanOverrideCancellationPercentage to Enabled Custom Permissions

  • Save

  • Assign the Permission Set to appropriate users

Checking Permission Assignment

The system checks permission via SetupEntityAccess and PermissionSetAssignment for the current user. If override is not working, verify the permission set is correctly assigned.

Cancellation policies define the fee percentages based on how far in advance a cancellation is made.

Policy Configuration Levels

  • Itinerary Level - Itinerary__c.CancellationPolicy__c (takes priority)

  • Channel Level - Channel__c.CancellationPolicy__c (fallback if Itinerary policy is blank)

Cancellation Groups

Individual services can have different cancellation terms through Cancellation Groups:

  • Standard Items: Itinerary_Item__c.Item__r.CancellationGroup__c

  • Custom Items: Itinerary_Item__c.CancellationGroup__c

Example: Different Policies

An accommodation service might have a 30-day cancellation policy, while a flight segment might be non-refundable. Cancellation Groups allow this differentiation.

Package Modifications behavior varies based on Itinerary record type.

Record Types That Block Modifications

Record TypeBehavior
Snapshot BookingCannot modify; historical snapshot record

Cancellation Record Type

When a full booking is cancelled, the Itinerary record type changes to the value configured in AppSettings__c.CancellationRecordType__c.

Option Record Type

Some users have reported issues with Change Occupancy on Itineraries with the Option record type. If you encounter Error 1010, see the Troubleshooting section.

Note: Booking Amendments (Quest)

Booking Amendments is a separate feature available in Quest layer. This guide covers the Package Modifications framework for Circle Sell, Voyage Train, and Voyage Cruise. Don’t confuse the two—they serve different purposes and have different workflows.

Key custom settings that affect Package Modifications behavior.

AppSettings__c Fields

FieldPurposeExample Value
CancellationRecordType__cRecord type to set when an itinerary is fully cancelledCancelled
ItineraryStatuses__cStatus value to set when cancelling (stored as CANCELLATION_STATUS)Cancelled

Error Details

Error Code: 1010 Message: Invalid query arguments Details: allotment_day_changes (Not a valid mapping type)

When This Occurs

This error typically appears when:

  • Using Change Occupancy from an Itinerary with Option record type

  • The allotment_day_changes parameter is being sent in an incorrect format

  • There’s a mismatch between the UI state and what the API expects

Root Cause

The allotment_day_changes parameter is used in getAdvancedPackage() calls. When the package modification flow incorrectly populates the changeAllotmentDays object, the API rejects the request.

Troubleshooting Steps

  • Check Record Type: Verify the Itinerary record type. If it’s Option, try converting to Booking first.

  • Clear Browser Cache: Sometimes stale state causes parameter issues.

  • Check Console Logs: Open browser developer tools and look for the API request payload.

  • Try Different Browser: Rule out browser-specific caching issues.

  • Contact Support: If the issue persists, contact Kaptio Support with the full error details and Itinerary ID.

Workaround

If Change Occupancy fails on an Option, try converting the Itinerary to Booking status first, then perform the occupancy change.

IssueCauseSolution
Package Modifications button not visiblePilot features not enabledContact Kaptio to enable required pilot features
Cannot override cancellation percentageMissing custom permissionAssign CanOverrideCancellationPercentage via Permission Set
Button disabled on specific ItineraryAmendment in progress or wrong record typeWait for amendment to complete or check record type
Cancellation fees not calculatingMissing cancellation policyConfigure policy on Itinerary or Channel
Transfer payment amount incorrectNon-transferable items in hold-backReview hold-back items; this is expected behavior
Change Occupancy only shows “Add”Occupancy restrictions on packageCheck package configuration for minimum occupancy rules
Optional services incorrectly included/excluded from cancellation feesIsMainComponent__c or IsMainTourComponent__c not set correctly on Package ComponentReview Package Component configuration. Tick IsMainComponent__c for percentage-based or IsMainTourComponent__c for fixed-amount inclusion. See Package Setup Configuration Guide.

The system may block modifications in certain situations.

Common Blocks

  • Operation in progress: Another user or process is currently modifying this booking

  • Pricing recalculation: The system is recalculating prices after a previous change

  • Read-only booking: Historical snapshots cannot be modified

Resolution

Wait a moment and try again. If the issue persists, refresh the page. Most blocks clear automatically within a few seconds.

Use this checklist to verify your Package Modifications setup.

Pilot Features

  • PackageModification enabled

  • ChangePackageOccupancy enabled

  • CancelRoomOrPackage enabled

  • ChangePackageOrDeparture enabled

Permissions

  • Custom Permission CanOverrideCancellationPercentage created

  • Permission Set with custom permission assigned to appropriate users

App Settings

  • AppSettings__c.CancellationRecordType__c configured

  • AppSettings__c.ItineraryStatuses__c includes cancellation status

Cancellation Policies

  • Cancellation Policies created with appropriate tiers

  • Default policy assigned to Channels

  • Cancellation Groups configured for services with different terms

  • IsMainComponent__c reviewed on optional Package Components (for percentage-based cancellation fees)

  • IsMainTourComponent__c reviewed on optional Package Components (for fixed-amount cancellation fees)

Page Layout

  • Booking Overview component added to Itinerary Lightning Record Page

  • Modification actions visible in Booking Overview

Testing

  • Modify options works on test booking

  • Change Occupancy (reduce pax) works

  • Cancellation calculates correct fees

  • Transfer moves payment correctly

  • Manager override works for users with permission

Support

Back to Gallery