Overview
The Initial User & Validation Guide gets you started with Kaptio’s out-of-the-box permission sets — enough to create users and validate your foundation. Many customers then need finer control: who can change buy rates after booking, who can override sell prices, who can import passengers, and so on.
That finer control comes from custom permissions. Think of them as feature switches. Each one turns a specific capability on or off for the users (or roles) you choose. You enable them through Salesforce Permission Sets — you do not edit the managed package itself.
This guide covers:
- What custom permissions are (in plain language)
- The main permissions grouped by everyday categories
- How an admin assigns them
- How to sanity-check that a user has the right access
Prerequisites
Before refining permissions:
- Initial User & Validation Guide — users created and base permission sets assigned
- Salesforce admin access (Permission Sets and user assignment)
- A clear view of which roles need which overrides (managers vs consultants vs finance)
Part 1: What Are Custom Permissions?
Permission sets vs custom permissions
| Layer | What it does | Example |
|---|---|---|
| Permission Set | Bundle of object/field access and custom permissions assigned to a user | (Kaptio) Build Itineraries |
| Custom Permission | Single feature switch checked by Kaptio at runtime | CanOverrideSellPrice |
Out-of-the-box permission sets already include the core custom permissions for common roles (build itineraries, view proposals, supplier actions, and so on). When a customer wants to go further — for example, let only supervisors refresh FX rates after booking — you add the relevant custom permissions to a Permission Set and assign that set to those users.
When would I use this?
These patterns are starting points — adjust to your customer’s policy.
| Role / Scenario | Approach |
|---|---|
| Reservation consultant — full booking access | Assign (Kaptio) Build Itineraries (covered in the Users guide); add before-booking FX refresh and passenger import if used |
| Supervisor / team lead — after-booking FX and overrides | After-booking FX refresh; sell/cost overrides; channel/account edit; cancellation % override |
| Finance — cost visibility without broad sell overrides | Enable CanViewCostData; leave CanOverrideSellPrice off unless required; after-booking FX (refresh and/or manual); manual payment registration if needed |
| Operations — reinstate and ops tools | Enable EnableReinstate; inventory management; supplier actions as needed |
| Portal / limited | View Proposals / Itinerary Comments / Customer Payment — usually no pricing or FX overrides |
Part 2: Main Custom Permissions by Category
API names below are as they appear under Setup → Custom Permissions (namespace KaptioTravel in subscriber orgs). Labels in the UI may start with (Kaptio).
Itinerary building & privileged access
| Custom Permission | What it unlocks |
|---|---|
Build_Itineraries | Build and update itineraries and related booking data |
Privileged_Access | Work with itinerary data not owned by the user (broader data access) |
Inventory_Management | Read and update inventory management data |
Group_Tour | Work with Group Tour itineraries |
Proposals, comments & supplier actions
| Custom Permission | What it unlocks |
|---|---|
View_Proposals | Read data needed for a customer to view a proposal |
Itinerary_Comments | Comment on itineraries |
Supplier_Actions | Confirm or reject supplier booking requests |
Customer_Payment | Process customer payments |
FX / buy rates (before vs after booking)
FX permissions split on two axes: when (before or after converting to a booking) and how (refresh button vs manual edit).
| Custom Permission | Label (typical) | What it unlocks |
|---|---|---|
ChangeBuyRatesOnItineraryByRefreshButtonBeforeBooking | BC - Refresh conversion rate | Refresh buy conversion rates / BU currency factor before booking |
ChangeBuyRatesOnItineraryManuallyBeforeBooking | BC - Manually edit conversion rates | Manually edit buy conversion rates before booking |
ChangeBuyRatesOnItineraryByRefreshButtonAfterBooking | AC - Refresh conversion rate | Refresh buy conversion rates / BU currency factor after booking |
ChangeBuyRatesOnItineraryManuallyAfterBooking | AC - Manually edit conversion rates | Manually edit buy conversion rates after booking |
When would I use this? Give consultants “before booking” refresh if they need to pull latest rates while quoting. Restrict “after booking” (especially manual edit) to supervisors or finance so booked costs stay controlled.
Pricing & cost overrides
| Custom Permission | What it unlocks |
|---|---|
CanOverrideSellPrice | Override sell price on itinerary items |
CanOverrideUnitCost | Override unit / cost price |
CanOverrideSalesPricelists | Override sales pricelists when pricing an itinerary |
CanOverrideCostPricelists | Override cost pricelists when pricing an itinerary |
CanOverrideCommission | Override commission on itinerary pricing |
CanOverrideTax | Override tax amount in Costings |
CanOverrideTime | Override Time From / Time To in Costings |
CanOverrideCancellationPercentage | Change cancellation fee percentage |
CanViewCostData | View cost data (without necessarily granting overrides) |
ShowCostRateInItemPriceFinder | Show cost rate in the Service Price Finder |
CanAddManualAdjustmentPricing | Add or use manual price services for adjustments |
Channel, account & passengers
| Custom Permission | What it unlocks |
|---|---|
CanEditItineraryChannelAndAccount | Change channel and account on booked itineraries |
CanImportPassengers | Use passenger import on the passenger grid |
EnableReinstate | Reinstate itineraries (reinstate features) |
Payments & agreements (common extras)
| Custom Permission | What it unlocks |
|---|---|
CanManuallyRegisterPayments | Use payment methods of type Manual Payment |
AllowToDeleteFullyPaidPayments | Delete fully paid payments |
CanCreateResellerAgreements | Create or edit reseller agreements |
CanAssignResellerAgreements | Assign existing reseller agreements to an Account |
This is not an exhaustive list of every packaged custom permission. Focus first on the categories your roles actually need. Feature-specific permissions (for example flights/RightRez, Bulk Manager, or tour pricing) can be added later as those modules go live.
Part 3: How to Assign a Custom Permission
Custom permissions are enabled on a Permission Set, then the Permission Set is assigned to users.
Step 1: Create or open a Permission Set
- Go to Setup → Permission Sets
- Open an existing set (for example a “Managers” or “FX Overrides” set), or click New
- Give it a clear name that matches the role (for example
Kaptio FX After Booking)
Step 2: Enable the custom permission
- In the Permission Set, open Custom Permissions
- Click Edit
- Move the required permissions (for example
ChangeBuyRatesOnItineraryByRefreshButtonAfterBooking) into Enabled Custom Permissions - Click Save
Step 3: Assign the Permission Set to users
- Open the Permission Set → Manage Assignments
- Add the users who should have this capability
- Save
You can also assign from the User record → Permission Set Assignments.
Step 4: Sanity-check access
| Check | How |
|---|---|
| Permission is on the set | Permission Set → Custom Permissions shows the expected entries |
| User has the set | User → Permission Set Assignments includes that set |
| Behaviour matches | Log in as the user (or use Login As) and confirm the UI action is available — for example Refresh conversion rate after booking, Import Passengers, or Reinstate |
| Negative test | Confirm a user without the permission cannot perform the same action |
If a button or field is missing after assignment, confirm the user has the base Kaptio permission set (for example Build Itineraries) and the custom permission Permission Set. Custom permissions alone do not replace object/field access.
Troubleshooting
Issue: User has the Permission Set but still cannot override price / FX
- Confirm the specific custom permission is enabled on that set (not only a similar-sounding one)
- Distinguish before-booking vs after-booking FX permissions
- Confirm the itinerary is in the state the permission applies to (quote vs booked)
Issue: Import Passengers button not visible
- Assign
CanImportPassengersvia a Permission Set - Confirm the user can access the passenger grid (base itinerary permissions)
Issue: User can see other users’ itineraries unexpectedly
- Check whether
Privileged_Accesswas assigned more broadly than intended
Issue: Cannot find the custom permission in Setup
- Search under Setup → Custom Permissions for the API name or
(Kaptio)label - Confirm the Kaptio Travel managed package is installed and up to date
Related Schema Objects
| Object / metadata | Purpose |
|---|---|
| Custom Permission | Feature switch definitions shipped with Kaptio Travel |
| Permission Set | Container that enables custom permissions and object access |
| Permission Set Assignment | Links a Permission Set to a user |
What’s Next
With custom permissions defined for your roles:
- Document which Permission Sets each role receives (for training and audits)
- Re-run the user access validation from the Initial User & Validation Guide
- Continue with supplier/service and package setup as needed
See Also
- Initial User & Validation Guide — Previous guide: users, OOTB permission sets, and foundation validation
- Organization Structure Guide — Business Units and Sales Channels
- Currency & Tax Configuration — Currencies, exchange rates, and tax profiles
- Establish Platform Foundation — The outcome this guide supports